This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[testsuite] new test case to rx generation with adds and subs instruction for plain H8/300 targets [COFF/ELF] tool chains.


Hi,
	Please find below dejagnu test case for patch "Objdump bug for plain H8/300 target" http://sources.redhat.com/ml/binutils/2004-04/msg00202.html.

=========================================================================================
testsuite/Changelog

2004-08-04  Nitin Yewale <nitiny@kpitcummins.com>

	  * h8300/h8300.exp: Addition of new test case to check rx 
        generation with adds and subs instruction for plain H8/300 target.
	  * h8300/addsubrxcheck.s: New test source file.
========================================================================================= 
--- binutils-040725/gas/testsuite/gas/h8300/h8300.exp	2004-07-15 19:34:31.000000000 +0530
+++ binutils-040725/gas/testsuite/gas/h8300/h8300.exp	2004-08-03 11:42:18.000000000 +0530
@@ -2143,6 +2143,38 @@ proc do_h8300hn_addressgen {} {
     if [expr $x == 8] then { pass $testname } else { fail $testname }
 }
 
+proc do_h8300_addsubrxcheck {} {
+    set testname "addsubrxcheck.s: h8300 check rx generation for adds subs instructions"
+    set x 0
+
+    gas_start "addsubrxcheck.s" "-al"
+
+    # Check each instruction bit pattern to verify it got
+    # assembled correctly.
+    while 1 {
+	expect {
+	    -re " +\[0-9\]+ .* 6DF6\[^\n\]*\n"       { set x [expr $x+1] }
+	    -re " +\[0-9\]+ .* 0D76\[^\n\]*\n"       { set x [expr $x+1] }
+	    -re " +\[0-9\]+ .* 1B87\[^\n\]*\n"       { set x [expr $x+1] }
+	    -re " +\[0-9\]+ .* 6F62FFFE\[^\n\]*\n"   { set x [expr $x+1] }
+	    -re " +\[0-9\]+ .* 1B82\[^\n\]*\n"       { set x [expr $x+1] }
+	    -re " +\[0-9\]+ .* 6FE2FFFE\[^\n\]*\n"   { set x [expr $x+1] }
+	    -re " +\[0-9\]+ .* 1922\[^\n\]*\n"       { set x [expr $x+1] }
+	    -re " +\[0-9\]+ .* 0D20\[^\n\]*\n"       { set x [expr $x+1] }
+	    -re " +\[0-9\]+ .* 0B87\[^\n\]*\n"       { set x [expr $x+1] }
+	    -re " +\[0-9\]+ .* 6D76\[^\n\]*\n"       { set x [expr $x+1] }
+	    -re " +\[0-9\]+ .* 5470\[^\n\]*\n"       { set x [expr $x+1] }
+
+	    eof					{ break }
+	}
+    }
+    # This was intended to do any cleanup necessary.  It kinda looks like it
+    # isn't needed, but just in case, please keep it in for now.
+    gas_finish
+    # Did we find what we were looking for?  If not, flunk it.
+    if [expr $x == 11] then { pass $testname } else { fail $testname }
+}
+
 if [istarget h8300*-*-*] then {
     # Test the basic h8300 instruction parser
     do_h8300_add_sub
@@ -2161,7 +2193,8 @@ if [istarget h8300*-*-*] then {
     do_h8300_pushpop
     do_h8300_rotate_shift
     do_h8300hn_addressgen
-
+    do_h8300_addsubrxcheck
+    
     # Now test the h8300h instruction parser
     do_h8300h_add_sub
     do_h8300h_logical
--- /dev/null	2002-08-31 05:01:37.000000000 +0530
+++ binutils-040725/gas/testsuite/gas/h8300/addsubrxcheck.s	2004-08-03 11:23:06.000000000 +0530
@@ -0,0 +1,17 @@
+	.section .text
+	.global _main
+_main:
+	mov.w	r6,@-r7
+	mov.w	r7,r6
+	subs	#2,r7
+	mov.w	@(-2,r6),r2
+	subs	#2,r2
+	mov.w	r2,@(-2,r6)
+	sub.w	r2,r2
+	mov.w	r2,r0
+	adds	#2,r7
+	mov.w	@r7+,r6
+	rts
+	.size	_main, .-_main
+	.end
+	
=========================================================================================
Regards,
Nitin Yewale,
KPIT Cummins InfoSystems Ltd.
Pune, India

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Free download of GNU based tool-chains for Renesas' SH and H8 Series.
The following site also offers free technical support to its users. 
Visit http://www.kpitgnutools.com for details. 
Latest versions of KPIT GNU tools were released on June 1, 2004.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]