summaryrefslogtreecommitdiff
path: root/gas/testsuite/gas/ieee-fp/x930509a.exp
blob: 4218c8751ad7380be328a4d3273c98bcb4e1c432 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# Reported 93/05/09 by Jim Wilson: IEEE single-precision FLT_MIN value gets
# assembled incorrectly.  (Off by one ulp.)

proc dotest {} {
    set testname "IEEE FLT_MIN, single-precision"
    set x 0
    gas_start "x930509a.s" "-al"
    while 1 {
	expect {
	    -re " 00 ?00 ?80 ?00\[ 	\]+.single" { pass $testname; set x 1 }
	    -re " 00 ?80 ?00 ?00\[ 	\]+.single" { pass $testname; set x 1 }
	    -re ".single" { fail $testname; set x 1 }
	    -re "\[^\n\]*\n" { }
	    timeout { perror "timeout\n"; break }
	    eof { break }
	}
    }
    gas_finish
    if !$x then { fail "$testname (listing didn't match)" }
}

# C54x alignment/addressing is different, so the listing looks different
# float encoding is tested in c54x-specific tests.
# No floating point support in assembly code for CRIS.
if { ![istarget vax*-*-*] && ![istarget *c54x*-*-*]
     && ![istarget cris-*-*] && ![istarget arc*-*-*] } then {
    dotest
}