Add tests for PR gas/9966 and PR gas/11356.
2010-03-08 H.J. Lu <hongjiu.lu@intel.com> PR gas/9966 PR gas/11356 * gas/i386/list-1.l: New. * gas/i386/list-1.s: Likewise. * gas/i386/list-2.l: Likewise. * gas/i386/list-2.s: Likewise. * gas/i386/list-3.l: Likewise. * gas/i386/list-3.s: Likewise. * gas/i386/i386.exp: Run list-1, list-2 and list-3. * lib/gas-defs.exp (gas_run_stdin): New. (run_list_test_stdin): Likewise.
This commit is contained in:
parent
4199fe1239
commit
cea1040956
9 changed files with 145 additions and 0 deletions
|
@ -1,3 +1,19 @@
|
||||||
|
2010-03-08 H.J. Lu <hongjiu.lu@intel.com>
|
||||||
|
|
||||||
|
PR gas/9966
|
||||||
|
PR gas/11356
|
||||||
|
* gas/i386/list-1.l: New.
|
||||||
|
* gas/i386/list-1.s: Likewise.
|
||||||
|
* gas/i386/list-2.l: Likewise.
|
||||||
|
* gas/i386/list-2.s: Likewise.
|
||||||
|
* gas/i386/list-3.l: Likewise.
|
||||||
|
* gas/i386/list-3.s: Likewise.
|
||||||
|
|
||||||
|
* gas/i386/i386.exp: Run list-1, list-2 and list-3.
|
||||||
|
|
||||||
|
* lib/gas-defs.exp (gas_run_stdin): New.
|
||||||
|
(run_list_test_stdin): Likewise.
|
||||||
|
|
||||||
2010-02-26 Doug Evans <dje@sebabeach.org>
|
2010-02-26 Doug Evans <dje@sebabeach.org>
|
||||||
|
|
||||||
* gas/mep/allinsn.be.d: Renamed from allinsn.d. Pass -EB.
|
* gas/mep/allinsn.be.d: Renamed from allinsn.d. Pass -EB.
|
||||||
|
|
|
@ -223,6 +223,9 @@ if [expr [istarget "i*86-*-*"] || [istarget "x86_64-*-*"]] then {
|
||||||
run_dump_test "string-ok"
|
run_dump_test "string-ok"
|
||||||
run_list_test "string-bad" ""
|
run_list_test "string-bad" ""
|
||||||
run_list_test "space1" "-al"
|
run_list_test "space1" "-al"
|
||||||
|
run_list_test_stdin "list-1" "-al"
|
||||||
|
run_list_test_stdin "list-2" "-al"
|
||||||
|
run_list_test_stdin "list-3" "-al"
|
||||||
}
|
}
|
||||||
|
|
||||||
if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] then {
|
if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] then {
|
||||||
|
|
14
gas/testsuite/gas/i386/list-1.l
Normal file
14
gas/testsuite/gas/i386/list-1.l
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
GAS LISTING .*
|
||||||
|
|
||||||
|
|
||||||
|
[ ]*1[ ]+\.section \.rodata
|
||||||
|
[ ]*2[ ]+\.LC0:
|
||||||
|
[ ]*3[ ]+0000 68616861 \.string "haha %x\\n"
|
||||||
|
[ ]*3[ ]+2025780A
|
||||||
|
[ ]*3[ ]+00
|
||||||
|
[ ]*4[ ]+\.text
|
||||||
|
[ ]*5[ ]+\.globl hex
|
||||||
|
[ ]*6[ ]+\.type hex,@function
|
||||||
|
[ ]*7[ ]+hex:
|
||||||
|
[ ]*8[ ]+0000 C9 leave
|
||||||
|
[ ]*9[ ]+0001 C3 ret
|
9
gas/testsuite/gas/i386/list-1.s
Normal file
9
gas/testsuite/gas/i386/list-1.s
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
.section .rodata
|
||||||
|
.LC0:
|
||||||
|
.string "haha %x\n"
|
||||||
|
.text
|
||||||
|
.globl hex
|
||||||
|
.type hex, @function
|
||||||
|
hex:
|
||||||
|
leave
|
||||||
|
ret
|
18
gas/testsuite/gas/i386/list-2.l
Normal file
18
gas/testsuite/gas/i386/list-2.l
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
GAS LISTING .*
|
||||||
|
|
||||||
|
|
||||||
|
[ ]*1[ ]+
|
||||||
|
[ ]*2[ ]+\.L1:
|
||||||
|
[ ]*3[ ]+0000 615C00 \.string "a\\\\"
|
||||||
|
[ ]*4[ ]+0:
|
||||||
|
[ ]*5[ ]+0003 6200 \.string "b"
|
||||||
|
[ ]*6[ ]+1:
|
||||||
|
[ ]*7[ ]+2:
|
||||||
|
[ ]*8[ ]+3:
|
||||||
|
[ ]*9[ ]+4:
|
||||||
|
[ ]*10[ ]+5:
|
||||||
|
[ ]*11[ ]+6:
|
||||||
|
[ ]*12[ ]+7:
|
||||||
|
[ ]*13[ ]+8:
|
||||||
|
[ ]*14[ ]+9:
|
||||||
|
[ ]*15[ ]+10:
|
15
gas/testsuite/gas/i386/list-2.s
Normal file
15
gas/testsuite/gas/i386/list-2.s
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
|
||||||
|
.L1:
|
||||||
|
.string "a\\"
|
||||||
|
0:
|
||||||
|
.string "b"
|
||||||
|
1:
|
||||||
|
2:
|
||||||
|
3:
|
||||||
|
4:
|
||||||
|
5:
|
||||||
|
6:
|
||||||
|
7:
|
||||||
|
8:
|
||||||
|
9:
|
||||||
|
10:
|
18
gas/testsuite/gas/i386/list-3.l
Normal file
18
gas/testsuite/gas/i386/list-3.l
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
GAS LISTING .*
|
||||||
|
|
||||||
|
|
||||||
|
[ ]*1[ ]+
|
||||||
|
[ ]*2[ ]+\.L1:
|
||||||
|
[ ]*3[ ]+0000 612200 \.string "a\\""
|
||||||
|
[ ]*4[ ]+0:
|
||||||
|
[ ]*5[ ]+0003 6200 \.string "b"
|
||||||
|
[ ]*6[ ]+1:
|
||||||
|
[ ]*7[ ]+2:
|
||||||
|
[ ]*8[ ]+3:
|
||||||
|
[ ]*9[ ]+4:
|
||||||
|
[ ]*10[ ]+5:
|
||||||
|
[ ]*11[ ]+6:
|
||||||
|
[ ]*12[ ]+7:
|
||||||
|
[ ]*13[ ]+8:
|
||||||
|
[ ]*14[ ]+9:
|
||||||
|
[ ]*15[ ]+10:
|
15
gas/testsuite/gas/i386/list-3.s
Normal file
15
gas/testsuite/gas/i386/list-3.s
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
|
||||||
|
.L1:
|
||||||
|
.string "a\""
|
||||||
|
0:
|
||||||
|
.string "b"
|
||||||
|
1:
|
||||||
|
2:
|
||||||
|
3:
|
||||||
|
4:
|
||||||
|
5:
|
||||||
|
6:
|
||||||
|
7:
|
||||||
|
8:
|
||||||
|
9:
|
||||||
|
10:
|
|
@ -116,6 +116,24 @@ proc gas_run { prog as_opts redir } {
|
||||||
return [list $comp_output ""]
|
return [list $comp_output ""]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
proc gas_run_stdin { prog as_opts redir } {
|
||||||
|
global AS
|
||||||
|
global ASFLAGS
|
||||||
|
global comp_output
|
||||||
|
global srcdir
|
||||||
|
global subdir
|
||||||
|
global host_triplet
|
||||||
|
|
||||||
|
set status [gas_host_run "$AS $ASFLAGS $as_opts < $srcdir/$subdir/$prog" "$redir"]
|
||||||
|
set comp_output [lindex $status 1]
|
||||||
|
if { [lindex $status 0] != 0 && [regexp "2>.*" $redir] } then {
|
||||||
|
append comp_output "child process exited abnormally"
|
||||||
|
}
|
||||||
|
set comp_output [prune_warnings $comp_output]
|
||||||
|
verbose "output was $comp_output"
|
||||||
|
return [list $comp_output ""]
|
||||||
|
}
|
||||||
|
|
||||||
proc all_ones { args } {
|
proc all_ones { args } {
|
||||||
foreach x $args { if [expr $x!=1] { return 0 } }
|
foreach x $args { if [expr $x!=1] { return 0 } }
|
||||||
return 1
|
return 1
|
||||||
|
@ -990,3 +1008,22 @@ proc run_list_test { name {opts {}} {testname {}} } {
|
||||||
}
|
}
|
||||||
pass $testname
|
pass $testname
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# run_list_test_stdin NAME (optional): OPTS TESTNAME
|
||||||
|
#
|
||||||
|
# Similar to run_list_test, but use stdin as input.
|
||||||
|
|
||||||
|
proc run_list_test_stdin { name {opts {}} {testname {}} } {
|
||||||
|
global srcdir subdir
|
||||||
|
if { [string length $testname] == 0 } then {
|
||||||
|
set testname "[file tail $subdir] $name"
|
||||||
|
}
|
||||||
|
set file $srcdir/$subdir/$name
|
||||||
|
gas_run_stdin ${name}.s $opts ">&dump.out"
|
||||||
|
if { [regexp_diff "dump.out" "${file}.l"] } then {
|
||||||
|
fail $testname
|
||||||
|
verbose "output is [file_contents "dump.out"]" 2
|
||||||
|
return
|
||||||
|
}
|
||||||
|
pass $testname
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue