* gas/hppa/reloc/*.s: Use .code instead of .SPACE/.SUBSPA for

sectioning.
        * gas/hppa/parse/parse.exp: Disable tests not appropriate for PA64.
        Revamp address expressions slightly to handle an arbitrary sized
        address.
This commit is contained in:
Jeff Law 1999-08-30 21:00:59 +00:00
parent a022ef54db
commit a91f57fd4b
18 changed files with 99 additions and 235 deletions

View File

@ -1,5 +1,11 @@
Mon Aug 30 12:18:40 1999 Jeffrey A Law (law@cygnus.com)
* gas/hppa/reloc/*.s: Use .code instead of .SPACE/.SUBSPA for
sectioning.
* gas/hppa/parse/parse.exp: Disable tests not appropriate for PA64.
Revamp address expressions slightly to handle an arbitrary sized
address.
* gas/hppa/parse/*.s: Use .code instead of .SPACE/.SUBSPA for
sectioning.
* gas/hppa/parse/parse.exp: Disable tests not appropriate for PA64.

View File

@ -1,22 +1,14 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.IMPORT $global$,DATA
.IMPORT $$dyncall,MILLICODE
; gcc_compiled.:
.SPACE $PRIVATE$
.SUBSPA $DATA$
.data
.align 4
tab___2
.word L$0002
.word L$0003
.word L$0004
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
.EXPORT execute,CODE
@ -64,16 +56,13 @@ L$0004
.PROCEND
.IMPORT __main,CODE
.IMPORT strcmp,CODE
.SPACE $TEXT$
.SUBSPA $LIT$
.align 4
L$C0000
.STRING "xyxyz\x00"
.IMPORT abort,CODE
.IMPORT exit,CODE
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
.EXPORT main,CODE
@ -122,8 +111,7 @@ L$0011
nop
.EXIT
.PROCEND
.SPACE $PRIVATE$
.SUBSPA $BSS$
.data
optab .comm 10
buf .comm 10

View File

@ -1,13 +1,4 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
.IMPORT $$dyncall,MILLICODE ; Code for dynamic function calls.

View File

@ -1,13 +1,4 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
ldil L%0xc0001004,%r1

View File

@ -1,13 +1,4 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
.import yabba,code

View File

@ -1,15 +1,4 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.IMPORT $global$,DATA
.IMPORT $$dyncall,MILLICODE
; gcc_compiled.:
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
.EXPORT foo,CODE
.EXPORT foo,ENTRY,PRIV_LEV=3

View File

@ -1,14 +1,4 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
.SPACE $TEXT$
.SUBSPA $CODE$
.code
b,n $$foo
nop
nop

View File

@ -1,15 +1,4 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.IMPORT $global$,DATA
.IMPORT $$dyncall,MILLICODE
; gcc_compiled.:
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
.EXPORT g,CODE
.EXPORT g,ENTRY,PRIV_LEV=3,ARGW0=GR,ARGW1=GR,ARGW2=GR,RTNVAL=GR
@ -72,8 +61,7 @@ L$0005
.EXIT
.PROCEND
.IMPORT abort,CODE
.SPACE $PRIVATE$
.SUBSPA $DATA$
.data
.align 4
L$TRAMP0000
@ -88,8 +76,7 @@ L$TRAMP0000
ldw 40(%r22),%r29
.word 0
.word 0
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
.EXPORT f,CODE

View File

@ -1,15 +1,4 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.IMPORT $global$,DATA
.IMPORT $$dyncall,MILLICODE
; gcc_compiled.:
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
s:
.PROC

View File

@ -1,16 +1,4 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.IMPORT $global$,DATA
.IMPORT $$dyncall,MILLICODE
; gcc_compiled.:
.IMPORT bar,CODE
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
.EXPORT foo,CODE
.EXPORT foo,ENTRY,PRIV_LEV=3,RTNVAL=GR

View File

@ -1,13 +1,9 @@
.SPACE $TEXT$,SORT=8
.SUBSPA $CODE$,QUAD=0,ALIGN=4,ACCESS=0x2c,CODE_ONLY,SORT=24
.SPACE $PRIVATE$,SORT=16
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=0x1f,SORT=16
.data
bogo
.ALIGN 8
.WORD bogo+4 ; = 0x4
.STRING "\x00\x00\x00{\x00\x00\x01\xC8\x00\x00\x03\x15"
.SPACE $PRIVATE$
.SUBSPA $DATA$
.data
.EXPORT bogo
.END

View File

@ -1,26 +1,16 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.IMPORT $global$,DATA
.IMPORT $$dyncall,MILLICODE
; gcc_compiled.:
.IMPORT abort,CODE
.EXPORT f,DATA
.SPACE $PRIVATE$
.SUBSPA $DATA$
.data
.align 4
f:
.word P%abort
.word P%abort
.IMPORT __main,CODE
.IMPORT printf,CODE
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
LC$0000:
.STRING "frob\x0a\x00"

View File

@ -1,15 +1,7 @@
.COPYRIGHT "MetaWare Incorporated, 1992"
.VERSION "hc2.6a -O1 t3.c\n"
.SPACE $PRIVATE$,SORT=16
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=0x1F,SORT=80,ZERO
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=0x1F,SORT=16
.SPACE $TEXT$,SORT=8
.SUBSPA $CODE$,QUAD=0,ALIGN=4,ACCESS=44,CODE_ONLY,SORT=24
.SPACE $PRIVATE$
.SUBSPA $DATA$
.data
.ALIGN 8
$L00DATA
.ALIGN 8
@ -19,8 +11,7 @@ s
.BLOCKZ 786425
.BLOCKZ 7
.SPACE $TEXT$
.SUBSPA $CODE$
.code
L$001.3
g .PROC
.CALLINFO FRAME=0,NO_CALLS
@ -32,8 +23,7 @@ g .PROC
.PROCEND
.SPACE $PRIVATE$
.SUBSPA $DATA$
.data
.ALIGN 4
.EXPORT l
l

View File

@ -1,15 +1,8 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.IMPORT $global$,DATA
.IMPORT $$dyncall,MILLICODE
; gcc_compiled.:
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
.PARAM foo,RTNVAL=GR
foo:
@ -19,14 +12,10 @@ foo:
bv,n %r0(%r2)
.EXIT
.PROCEND
.SPACE $TEXT$
.SUBSPA $CODE$
.align 4
LC$0000:
.word P%foo
.SPACE $TEXT$
.SUBSPA $CODE$
.align 4
.EXPORT bar,CODE

View File

@ -1,16 +1,4 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.IMPORT $global$,DATA
.IMPORT $$dyncall,MILLICODE
; gcc_compiled.:
.EXPORT blah,DATA
.SPACE $PRIVATE$
.SUBSPA $DATA$
.data
.align 8
blah
; .double 0e+00
@ -26,8 +14,7 @@ foo
.align 4
yabba
.word 1
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
.EXPORT bar,CODE

View File

@ -32,7 +32,7 @@ proc do_ble_relocation_test {} {
# a PC-relative relocation for a BLE instruction.
while 1 {
expect {
-re "^00000004\[^\n\]*ABS_CALL\[^\n\]*\n" { set x 1 }
-re "^0+4\[^\n\]*ABS_CALL\[^\n\]*\n" { set x 1 }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
eof { break }
@ -43,8 +43,8 @@ proc do_ble_relocation_test {} {
# a PC-relative relocation for a BLE instruction.
while 1 {
expect {
-re "^00000000\[^\n\]*DIR21L\[^\n\]*\n" { set x 1 }
-re "^00000004\[^\n\]*DIR17R\[^\n\]*\n" { set x 1 }
-re "^0+\[^\n\]*DIR21L\[^\n\]*\n" { set x 1 }
-re "^0+4\[^\n\]*DIR17R\[^\n\]*\n" { set x 1 }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
eof { break }
@ -65,6 +65,10 @@ proc do_relocation_reduction_tests {} {
set testname "reduce.s: Test relocation reductions (part 2)"
set x 0
if [istarget hppa*w-*-*] then {
return;
}
if [gas_test_old "reduce.s" "" "Relocation reductions (part1)"] then {
objdump_start_no_subdir "a.out" "-r"
@ -73,9 +77,9 @@ proc do_relocation_reduction_tests {} {
# Doing so makes generating parameter relocation stubs impossible.
while 1 {
expect {
-re "^00000004\[^\n\]*PLABEL\[^\n\]*foo\[^\n\]*\n"
-re "^0+4\[^\n\]*PLABEL\[^\n\]*foo\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^00000014\[^\n\]*PCREL\[^\n\]*foo\[^\n\]*\n"
-re "^0+14\[^\n\]*PCREL\[^\n\]*foo\[^\n\]*\n"
{ set x [expr $x+1] }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -94,20 +98,20 @@ proc do_relocation_reduction_tests {} {
set testname "reduce2.s: More relocation reduction tests (part 2)"
set x 0
if [gas_test_old "reduce2.s" "" "More relocatoin reductions (part1)"] then {
if [gas_test_old "reduce2.s" "" "More relocation reductions (part1)"] then {
objdump_start_no_subdir "a.out" "-r"
# Check to make sure DLT relative relocs are not reduced to sym+addend
# Doing so doesn't work as one might expect
while 1 {
expect {
-re "^00000004\[^\n\]*DLT\[^\n\]*L.C0000\[^\n\]*\n"
-re "^0+4\[^\n\]*DLT\[^\n\]*L.C0000\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^0000001c\[^\n\]*DLT\[^\n\]*L.C0000\[^\n\]*\n"
-re "^0+1c\[^\n\]*DLT\[^\n\]*L.C0000\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^00000030\[^\n\]*DLT\[^\n\]*L.C0001\[^\n\]*\n"
-re "^0+30\[^\n\]*DLT\[^\n\]*L.C0001\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^00000048\[^\n\]*DLT\[^\n\]*L.C0001\[^\n\]*\n"
-re "^0+48\[^\n\]*DLT\[^\n\]*L.C0001\[^\n\]*\n"
{ set x [expr $x+1] }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -134,13 +138,13 @@ proc do_relocation_reduction_tests {} {
# Doing so makes generating parameter relocation stubs impossible.
while 1 {
expect {
-re "^0000000c\[^\n\]*yabba\[^\n\+\]*\n"
-re "^0+c\[^\n\]*yabba\[^\n\+\]*\n"
{ set x [expr $x+1] }
-re "^0000000c\[^\n\]*yabba\+\[^\n\]*\n"
-re "^0+c\[^\n\]*yabba\+\[^\n\]*\n"
{ set x 0; break }
-re "^00000010\[^\n\]*yabba\[^\n\+\]*\n"
-re "^0+10\[^\n\]*yabba\[^\n\+\]*\n"
{ set x [expr $x+1] }
-re "^00000010\[^\n\]*yabba\+\[^\n\]*\n"
-re "^0+10\[^\n\]*yabba\+\[^\n\]*\n"
{ set x 0; break }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -215,9 +219,9 @@ proc do_plabel_relocation_test {} {
# Check that we make PLABEL relocation entries when they're needed.
while 1 {
expect {
-re "^00000000\[^\n\]*PLABEL\[^\n\]*\n"
-re "^0+\[^\n\]*PLABEL\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^00000004\[^\n\]*PLABEL\[^\n\]*\n"
-re "^0+4\[^\n\]*PLABEL\[^\n\]*\n"
{ set x [expr $x+1] }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -238,6 +242,10 @@ proc do_selector_scope_test {} {
set testname "selectorbug.s: Test scope of field selector"
set x 0
if [istarget hppa*w-*-*] then {
return;
}
if [gas_test_old "selectorbug.s" "" "Test scope of field selector (part 1)"] {
objdump_start_no_subdir "a.out" "-r"
@ -247,9 +255,9 @@ proc do_selector_scope_test {} {
if [istarget hppa*-*-*elf*] then {
while 1 {
expect {
-re "^00000014\[^\n\]*DIR32\[^\n\]*\n"
-re "^0+14\[^\n\]*DIR32\[^\n\]*\n"
{ set x 1 }
-re "^00000014\[^\n\]*PLABEL\[^\n\]*foo\[^\n\]*\n"
-re "^0+14\[^\n\]*PLABEL\[^\n\]*foo\[^\n\]*\n"
{ set x 0 }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -259,9 +267,9 @@ proc do_selector_scope_test {} {
} else {
while 1 {
expect {
-re "^00000014\[^\n\]*DATA_ONE\[^\n\]*\n"
-re "^0+14\[^\n\]*DATA_ONE\[^\n\]*\n"
{ set x 1 }
-re "^00000014\[^\n\]*PLABEL\[^\n\]*foo\[^\n\]*\n"
-re "^0+14\[^\n\]*PLABEL\[^\n\]*foo\[^\n\]*\n"
{ set x 0 }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -290,9 +298,9 @@ proc do_local_label_as_operand_test {} {
# to a non-branching instruction correctly.
while 1 {
expect {
-re "^0000002c\[^\n\]*0x00000024\[^\n\]*\n"
-re "^0+2c\[^\n\]*0x0+24\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^00000030\[^\n\]*0x00000024\[^\n\]*\n"
-re "^0+30\[^\n\]*0x0+24\[^\n\]*\n"
{ set x [expr $x+1] }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -327,7 +335,7 @@ proc do_exit_relocation_test {} {
# Note that a match here is really a FAILURE!
while 1 {
expect {
-re "^00000000\[^\n\]*R_EXIT\[^\n\]*\n"
-re "^0+\[^\n\]*R_EXIT\[^\n\]*\n"
{ set x [expr $x+1] }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -348,6 +356,10 @@ proc do_cross_space_fixup_test_1 {} {
set testname "fixupbug.s: Test cross space jump/call fixup bug (part 2)"
set x 0
if [istarget hppa*w-*-*] then {
return;
}
# ELF (osf) doesn't really handle extra sections too well...
if [istarget hppa*-*-*elf*] then {
return;
@ -360,7 +372,7 @@ proc do_cross_space_fixup_test_1 {} {
# branch/call
while 1 {
expect {
-re "^00000000\[^\n\]*PCREL_CALL\[^\n\]*\n"
-re "^0+\[^\n\]*PCREL_CALL\[^\n\]*\n"
{ set x [expr $x+1] }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -381,6 +393,10 @@ proc do_cross_space_fixup_test_2 {} {
set testname "fixupbug.s: Test cross space jump/call fixup bug (part 3)"
set x 0
if [istarget hppa*w-*-*] then {
return;
}
# ELF (osf) doesn't really handle extra sections too well...
if [istarget hppa*-*-*elf*] then {
return;
@ -415,24 +431,24 @@ proc do_round_mode_test {} {
# Make sure GAS generated correct relocations to switch rounding modes.
# Also make sure (for SOM) that redundant rounding mode relocations
# were eliminated.
if [istarget hppa*-*-*elf*] then {
if { [istarget hppa*-*-*elf*] || [istarget hppa*w-*-*] } then {
while 1 {
expect {
-re "^00000000\[^\n\]*DIR21L\[^\n\]*\n"
-re "^0+\[^\n\]*DIR21L\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^00000004\[^\n\]*DIR14R\[^\n\]*\n"
-re "^0+4\[^\n\]*DIR14R\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^00000008\[^\n\]*DIR21L\[^\n\]*\n"
-re "^0+8\[^\n\]*DIR21L\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^0000000c\[^\n\]*DIR14R\[^\n\]*\n"
-re "^0+c\[^\n\]*DIR14R\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^00000010\[^\n\]*DIR21L\[^\n\]*\n"
-re "^0+10\[^\n\]*DIR21L\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^00000014\[^\n\]*DIR14R\[^\n\]*\n"
-re "^0+14\[^\n\]*DIR14R\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^00000018\[^\n\]*DIR21L\[^\n\]*\n"
-re "^0+18\[^\n\]*DIR21L\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^0000001c\[^\n\]*DIR14R\[^\n\]*\n"
-re "^0+1c\[^\n\]*DIR14R\[^\n\]*\n"
{ set x [expr $x+1] }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -442,19 +458,19 @@ proc do_round_mode_test {} {
} else {
while 1 {
expect {
-re "^00000000\[^\n\]*R_R_MODE\[^\n\]*\n"
-re "^0+\[^\n\]*R_R_MODE\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^00000004\[^\n\]*R_R_MODE\[^\n\]*\n"
-re "^0+4\[^\n\]*R_R_MODE\[^\n\]*\n"
{ fail $testname }
-re "^00000008\[^\n\]*R_N_MODE\[^\n\]*\n"
-re "^0+8\[^\n\]*R_N_MODE\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^0000000c\[^\n\]*R_N_MODE\[^\n\]*\n"
-re "^0+c\[^\n\]*R_N_MODE\[^\n\]*\n"
{ fail $testname }
-re "^00000010\[^\n\]*R_R_MODE\[^\n\]*\n"
-re "^0+10\[^\n\]*R_R_MODE\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^00000014\[^\n\]*R_R_MODE\[^\n\]*\n"
-re "^0+14\[^\n\]*R_R_MODE\[^\n\]*\n"
{ fail $testname }
-re "^0000001c\[^\n\]*R_R_MODE\[^\n\]*\n"
-re "^0+1c\[^\n\]*R_R_MODE\[^\n\]*\n"
{ fail $testname }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -468,7 +484,7 @@ proc do_round_mode_test {} {
objdump_finish
# Did we find what we were looking for? If not, flunk it.
if [istarget hppa*-*-*elf*] then {
if {[istarget hppa*-*-*elf*] || [istarget hppa*w-*-*] } then {
if [expr $x==8] then { pass $testname } else { fail $testname }
} else {
if [expr $x==3] then { pass $testname } else { fail $testname }
@ -487,9 +503,9 @@ proc do_function_reloc_bug {} {
# branch/call
while 1 {
expect {
-re "^000000cc\[^\n\]*f2___4\[^\n+\]*\n"
-re "^0+cc\[^\n\]*f2___4\[^\n+\]*\n"
{ set x [expr $x+1] }
-re "^000000d0\[^\n\]*f2___4\[^\n+\]*\n"
-re "^0+d0\[^\n\]*f2___4\[^\n+\]*\n"
{ set x [expr $x+1] }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -511,9 +527,9 @@ proc do_function_reloc_bug {} {
# Make sure we didn't put anything in the instruction itself!
while 1 {
expect {
-re "^000000cc\[^\n\]*ldil 0,r20\[^\n\]*\n"
-re "^0+cc\[^\n\]*ldil 0,r20\[^\n\]*\n"
{ set x [expr $x+1] }
-re "^000000d0\[^\n\]*ldo 0\[\(\]+r20\[\)\]+,r19\[^\n\]*\n"
-re "^0+d0\[^\n\]*ldo 0\[\(\]+r20\[\)\]+,r19\[^\n\]*\n"
{ set x [expr $x+1] }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -541,7 +557,7 @@ proc do_r_no_reloc {} {
# Make sure GAS generated a correct relocation for the reference.
while 1 {
expect {
-re "^000c0004\[^\n\]*PLABEL\[^\n]*g\[^\n\]*\n"
-re "^0+c0004\[^\n\]*PLABEL\[^\n]*g\[^\n\]*\n"
{ set x [expr $x+1] }
-re "\[^\n\]*\n" { }
timeout { perror "timeout\n"; break }
@ -563,6 +579,10 @@ proc do_pic_relocation_test {} {
set testname "picreloc.s: Test for proper PIC relocation (part 2)"
set x 0
if [istarget hppa*w-*-*] then {
return;
}
# ELF (osf) doesn't really handle extra sections too well...
if [istarget hppa*-*-*elf*] then {
return;

View File

@ -1,12 +1,4 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
.IMPORT foo,data

View File

@ -1,21 +1,11 @@
.SPACE $PRIVATE$
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
.SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
.SPACE $TEXT$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
.SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
.IMPORT $global$,DATA
.IMPORT $$dyncall,MILLICODE
; gcc_compiled.:
.EXPORT intVec_error_handler,DATA
.SPACE $PRIVATE$
.SUBSPA $DATA$
.data
intVec_error_handler:
.word P%default_intVec_error_handler__FPCc
.SPACE $TEXT$
.SUBSPA $CODE$
.code
.align 4
.EXPORT foo,CODE
.EXPORT foo,ENTRY,PRIV_LEV=3