URL
https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk
Subversion Repositories open8_urisc
Compare Revisions
- This comparison shows the changes necessary to convert path
/open8_urisc/trunk/gnu/binutils
- from Rev 86 to Rev 87
- ↔ Reverse comparison
Rev 86 → Rev 87
/gas/testsuite/gas/macros/semi.d
0,0 → 1,9
#objdump: -s -j .text |
#name: semi |
#not-target: m32c-* |
|
.*: .* |
|
Contents of section .text: |
0000 3b203b20 3a203a20 11111111 11111111 ; ; : : ........ |
0010 11111111 11111111 11111111 11111111 ................ |
/gas/testsuite/gas/macros/dot.l
0,0 → 1,22
.*: Assembler messages: |
.*:[1-9][0-9]*: Warning: attempt to redefine pseudo-op .\.macro. ignored |
.*:27: Error: unknown pseudo-op: .\.xyz. |
.*:28: Error: .* |
#... |
[ ]*[1-9][0-9]*[ ]+m 4, 2 |
[ ]*[1-9][0-9]*[ ]+> \.data |
[ ]*[1-9][0-9]*[ ]+> labelA:labelB:labelC:labelD:x\.y\.z 4\+2 |
[ ]*[1-9][0-9]*[ ]+>> \.align 4 |
[ ]*[1-9][0-9]*[ ]+\?+[ ]+06 ?06[ ]+>> \.byte 4\+2,4\+2 |
[ ]*[1-9][0-9]*[ ]+\?+[ ]+00 ?00[ ]+> \.skip 2 |
[ ]*[1-9][0-9]*[ ]+> labelZ:labelY:labelX:labelW:\.xyz 4-2 |
[ ]*[1-9][0-9]*[ ]+>> \.align 8 |
[ ]*[1-9][0-9]*[ ]+\?+[ ]+02 ?02[ ]+>> \.byte 4-2,4-2 |
[ ]*[1-9][0-9]*[ ]+\?+[ ]+00 ?00 ?00 ?00[ ]+> \.skip 4\*2 |
[ ]*[1-9][0-9]*[ ]+00 ?00 ?00 ?00[ ]* |
[ ]*[1-9][0-9]*[ ]+> label9:label8:label7:label6: |
[ ]*[1-9][0-9]*[ ]+ |
[ ]*[1-9][0-9]*[ ]+\.purgem \.xyz, x\.y\.z |
[ ]*[1-9][0-9]*[ ]+\.xyz 0 |
[ ]*[1-9][0-9]*[ ]+(\?+[0 ]+)?x\.y\.z 0 |
#pass |
/gas/testsuite/gas/macros/repeat.s
0,0 → 1,53
.irp param1,1,2 |
.irp param2,9,8 |
.long irp_irp_\param1\param2 |
.endr |
.endr |
|
.irp param1,1,2 |
.irpc param2,98 |
.long irp_irpc_\param1\param2 |
.endr |
.endr |
|
.irp param1,1,2 |
.rept 2 |
.long irp_rept_\param1 |
.endr |
.endr |
|
.irpc param1,12 |
.irp param2,9,8 |
.long irpc_irp_\param1\param2 |
.endr |
.endr |
|
.irpc param1,12 |
.irpc param2,98 |
.long irpc_irpc_\param1\param2 |
.endr |
.endr |
|
.irpc param1,12 |
.rept 2 |
.long irpc_rept_\param1 |
.endr |
.endr |
|
.rept 2 |
.irp param2,9,8 |
.long rept_irp_\param2 |
.endr |
.endr |
|
.rept 2 |
.irpc param2,98 |
.long rept_irpc_\param2 |
.endr |
.endr |
|
.rept 2 |
.rept 2 |
.long rept_rept |
.endr |
.endr |
/gas/testsuite/gas/macros/badarg.s
0,0 → 1,50
.macro |
.endm |
|
.macro ,arg1 |
.endm |
|
.macro m1, |
.endm |
|
.macro m2,, |
.endm |
|
.macro m3,arg1, |
.endm |
|
.macro m4,,arg2 |
.endm |
|
.macro m5,arg,arg |
.endm |
|
.altmacro |
|
.macro m6,arg |
local arg |
.endm |
|
.macro m7 |
local arg |
local arg |
.endm |
|
m6 |
m7 |
|
.noaltmacro |
|
.macro m8, arg : |
.endm |
|
.macro m9, arg : qual |
.endm |
|
.macro m10, arg : req = def |
.endm |
|
m10 |
|
.macro m11, arg1 : vararg, arg2 |
.endm |
/gas/testsuite/gas/macros/purge.s
0,0 → 1,27
.data |
.macro MACRO1 |
.endm |
.macro macro2 |
.endm |
MACRO1 |
MACRO2 |
macro1 |
macro2 |
.purgem MACRO1 |
.purgem macro2 |
MACRO1 |
MACRO2 |
macro1 |
macro2 |
.purgem macro1 |
.purgem MACRO2 |
.macro macro1 |
.endm |
.macro MACRO2 |
.endm |
MACRO1 |
MACRO2 |
macro1 |
macro2 |
.purgem MACRO1 |
.purgem macro2 |
/gas/testsuite/gas/macros/dot.s
0,0 → 1,28
.altmacro |
|
.macro x.y.z val |
.align 4 |
.byte val,val |
.endm |
|
.macro .xyz val |
.align 8 |
.byte val,val |
.endm |
|
.macro .macro |
.endm |
|
label1:label2 : label3 :label4: m: .macro arg.1, arg.2 |
.data |
labelA:labelB : labelC :labelD: x.y.z arg.1+arg.2 |
.skip arg.2 |
labelZ:labelY : labelX :labelW: .xyz arg.1-arg.2 |
.skip arg.1*arg.2 |
label9:label8 : label7 :label6: .endm |
|
m 4, 2 |
|
.purgem .xyz, x.y.z |
.xyz 0 |
x.y.z 0 |
/gas/testsuite/gas/macros/rept.d
0,0 → 1,10
#objdump: -r |
#name: macro rept |
|
.*: +file format .* |
|
RELOCATION RECORDS FOR .* |
OFFSET[ ]+TYPE[ ]+VALUE.* |
0+00[ ]+[a-zA-Z0-9_]+[ ]+foo1 |
0+04[ ]+[a-zA-Z0-9_]+[ ]+foo1 |
0+08[ ]+[a-zA-Z0-9_]+[ ]+foo1 |
/gas/testsuite/gas/macros/semi.s
0,0 → 1,14
.macro semicolon |
.ascii "; " |
.endm |
|
.macro colon |
.ascii ": " |
.endm |
|
semicolon |
.ascii "; " |
colon |
.ascii ": " |
|
.p2align 5,0x11 |
/gas/testsuite/gas/macros/end.l
0,0 → 1,3
.*: Assembler messages: |
.*:1: Warning: \.endm .* \.macro |
.*:2: Warning: \.endr .* (\.rept|\.irpc?).*(\.rept|\.irpc?).*(\.rept|\.irpc?) |
/gas/testsuite/gas/macros/and.s
0,0 → 1,9
TFLAG_C == 1 |
|
.macro check |
.if (0 & TFLAG_C) |
.endif |
.endm |
|
.text |
check |
/gas/testsuite/gas/macros/vararg.d
0,0 → 1,13
#objdump: -r |
#name: macro vararg |
|
.*: +file format .* |
|
RELOCATION RECORDS FOR .* |
OFFSET[ ]+TYPE[ ]+VALUE.* |
0+00[ ]+[a-zA-Z0-9_]+[ ]+foo1 |
0+04[ ]+[a-zA-Z0-9_]+[ ]+foo2 |
0+08[ ]+[a-zA-Z0-9_]+[ ]+foo3 |
0+0c[ ]+[a-zA-Z0-9_]+[ ]+foo4 |
0+10[ ]+[a-zA-Z0-9_]+[ ]+foo5 |
0+14[ ]+[a-zA-Z0-9_]+[ ]+foo6 |
/gas/testsuite/gas/macros/end.s
0,0 → 1,2
.endm |
.endr |
/gas/testsuite/gas/macros/exit.s
0,0 → 1,8
|
.macro MAC |
BAD_OP |
.endm |
|
.exitm |
|
MAC |
/gas/testsuite/gas/macros/rept.s
0,0 → 1,3
.rept 3 |
.long foo1 |
.endr |
/gas/testsuite/gas/macros/strings.d
0,0 → 1,7
#objdump: -s -j .data |
#name: strings |
.*: .* |
|
Contents of section .data: |
0000 5c22666f 6f5c2200 62617200 62617a(00| ) \\\"foo\\\".bar.baz(.| ) |
|
/gas/testsuite/gas/macros/irp.d
0,0 → 1,13
#objdump: -r |
#name: macro irp |
|
.*: +file format .* |
|
RELOCATION RECORDS FOR .* |
OFFSET[ ]+TYPE[ ]+VALUE.* |
0+00[ ]+[a-zA-Z0-9_]+[ ]+foo1 |
0+04[ ]+[a-zA-Z0-9_]+[ ]+foo2 |
0+08[ ]+[a-zA-Z0-9_]+[ ]+foo3 |
0+0c[ ]+[a-zA-Z0-9_]+[ ]+bar1 |
0+10[ ]+[a-zA-Z0-9_]+[ ]+bar2 |
0+14[ ]+[a-zA-Z0-9_]+[ ]+bar3 |
/gas/testsuite/gas/macros/redef.l
0,0 → 1,2
.*: Assembler messages: |
.*:3: Error: .* |
/gas/testsuite/gas/macros/macros.exp
0,0 → 1,81
# Run some tests of gas macros. |
|
if { ![istarget hppa*-*-*] || [istarget *-*-linux*] } { |
run_dump_test test1 |
} |
|
if { ![istarget *c54x*-*-*] && ![istarget *c4x*-*-*] } { |
run_dump_test test2 |
} |
|
run_dump_test test3 |
|
if { ![istarget *c54x*-*-*] && ![istarget *c4x*-*-*] } { |
run_dump_test irp |
run_dump_test rept |
run_dump_test repeat |
run_dump_test vararg |
} |
|
gas_test_error "err.s" "" "macro infinite recursion" |
|
# The tic4x-coff target fails the next test because it defines '&' |
# as its line separator character, so the expression "(0 & TFLAG_C)" |
# becomes divided up into two lines and the parser complains about |
# a missing closing parenthesis for the first line. |
setup_xfail "tic4x*-*" |
gas_test "and.s" "" "" "logical and in macro definition" |
|
case $target_triplet in { |
{ hppa*-*-* } { if [istarget *-*-linux*] { run_dump_test semi } } |
{ *c4x*-*-* } { } |
{ *c54x*-*-* } { } |
default { |
run_dump_test semi |
} |
} |
|
if { ![istarget hppa*-*-*] || [istarget *-*-linux*] } { |
# FIXME: Due to macro mishandling of ONLY_STANDARD_ESCAPES. |
setup_xfail "avr-*" "cris-*" "crisv32-*" "msp430-*" |
|
# These fail due to NO_STRING_ESCAPES |
setup_xfail "powerpc*-*-aix*" "powerpc*-*-beos*" "powerpc*-*-macos*" |
setup_xfail "powerpc*-*-pe" "powerpc*-*-*win*" |
setup_xfail "rs6000-*-*" |
setup_xfail "z80-*-*" |
|
# FIXME: Due to difference in what "consecutive octets" means. |
setup_xfail "*c4x*-*-*" "*c54x*-*" |
run_dump_test strings |
} |
|
run_dump_test app1 |
run_dump_test app2 |
run_dump_test app3 |
remote_download host "$srcdir/$subdir/app4b.s" |
run_dump_test app4 |
|
run_list_test badarg "" |
|
case $target_triplet in { |
{ *c54x*-*-* } { } |
{ *c4x*-*-* } { } |
{ mmix-* } { } |
{ rx-*-* } { } |
default { run_list_test dot "-alm" } |
} |
run_list_test end "" |
run_list_test purge "--hash-size=8000" |
run_list_test redef "" |
|
# This test is valid only when '!' is not a comment character |
# (it is allowed to be a line comment character). |
if [string match "" [lindex [gas_run ../all/excl.s "-o /dev/null" ""] 0]] { |
run_dump_test paren |
} |
|
# PR 58925: A .exitm pseudo-op outside of a macro definition |
# prevented the assembler from parsing the rest of the file, |
# and hence catching an erroroneous instruction. |
gas_test_error "exit.s" "" ".exitm outside of a macro" |
/gas/testsuite/gas/macros/test1.d
0,0 → 1,5
#nm: --extern-only |
#name: macro test 1 |
|
0+01 A s_not_a_reg_1 |
0+02 A s_not_a_reg_2 |
/gas/testsuite/gas/macros/app1.d
0,0 → 1,7
#nm: -n |
#name: APP with macro without NO_APP |
#... |
0+ T a |
#... |
0+[1-f] T b |
#pass |
/gas/testsuite/gas/macros/test2.d
0,0 → 1,10
#objdump: -r |
#name: macro test 2 |
|
.*: +file format .* |
|
RELOCATION RECORDS FOR .* |
OFFSET[ ]+TYPE[ ]+VALUE.* |
0+00[ ]+[a-zA-Z0-9_]+[ ]+foo1 |
0+04[ ]+[a-zA-Z0-9_]+[ ]+foo2 |
0+08[ ]+[a-zA-Z0-9_]+[ ]+foo3 |
/gas/testsuite/gas/macros/vararg.s
0,0 → 1,10
.macro v1 arg1 : req, args : vararg |
.long foo\arg1 |
.ifnb \args |
v1 \args |
.endif |
.endm |
|
v1 1 |
v1 2, 3 |
v1 4, 5, 6 |
/gas/testsuite/gas/macros/altmacro.d
0,0 → 1,3
local |
.LL0001 |
.LL0002 |
/gas/testsuite/gas/macros/app2.d
0,0 → 1,7
#nm: -n |
#name: APP with macro then NO_APP |
#... |
0+ T a |
#... |
0+[1-f] T b |
#pass |
/gas/testsuite/gas/macros/test3.d
0,0 → 1,8
#objdump: -r |
#name: macro test 3 |
|
.*: +file format .* |
|
RELOCATION RECORDS FOR .* |
OFFSET[ ]+TYPE[ ]+VALUE.* |
0+00[ ]+[a-zA-Z0-9_]+[ ]+foo1 |
/gas/testsuite/gas/macros/app3.d
0,0 → 1,9
#nm: -n |
#name: APP with macro then NO_APP then more code |
#... |
0+ T a |
#... |
0+[1-f] T b |
#... |
0+[2-f] T c |
#pass |
/gas/testsuite/gas/macros/redef.s
0,0 → 1,4
.macro m |
.endm |
.macro m |
.endm |
/gas/testsuite/gas/macros/app4.d
0,0 → 1,10
#as: -I$srcdir/$subdir |
#nm: -n |
#name: included file with .if 0 wrapped in APP/NO_APP, no final NO_APP, macro in main file |
#... |
0+ T d |
#... |
0+[1-f] T a |
#... |
0+[2-f] T b |
#pass |
/gas/testsuite/gas/macros/paren.d
0,0 → 1,9
#as: -f |
#objdump: -s -j .data |
#name parenthesized macro arguments |
|
.*: .* |
|
Contents of section .data: |
0000 01000202 020402.. ........ ........ ................ |
#pass |
/gas/testsuite/gas/macros/err.s
0,0 → 1,5
.macro m |
m |
.endm |
|
m |
/gas/testsuite/gas/macros/strings.s
0,0 → 1,17
.macro M arg1 |
.ascii "\arg1" |
.endm |
|
.data |
foo: |
M "\\\"foo\\\"" |
|
.balign 2 |
|
M "bar" |
|
.balign 2 |
|
M baz |
|
|
/gas/testsuite/gas/macros/irp.s
0,0 → 1,8
.irp param,1,2,3 |
.long foo\param |
.endr |
|
.irpc param,123 |
.long bar\param |
.endr |
|
/gas/testsuite/gas/macros/test1.s
0,0 → 1,7
.macro m arg1 arg2 |
.globl \arg1 |
\arg1 == \arg2 |
.endm |
|
m s_not_a_reg_1,1 |
m s_not_a_reg_2,2 |
/gas/testsuite/gas/macros/repeat.d
0,0 → 1,43
#objdump: -r |
#name: nested irp/irpc/rept |
|
.*: +file format .* |
|
RELOCATION RECORDS FOR .* |
OFFSET[ ]+TYPE[ ]+VALUE.* |
0+00[ ]+[a-zA-Z0-9_]+[ ]+irp_irp_19 |
0+04[ ]+[a-zA-Z0-9_]+[ ]+irp_irp_18 |
0+08[ ]+[a-zA-Z0-9_]+[ ]+irp_irp_29 |
0+0c[ ]+[a-zA-Z0-9_]+[ ]+irp_irp_28 |
0+10[ ]+[a-zA-Z0-9_]+[ ]+irp_irpc_19 |
0+14[ ]+[a-zA-Z0-9_]+[ ]+irp_irpc_18 |
0+18[ ]+[a-zA-Z0-9_]+[ ]+irp_irpc_29 |
0+1c[ ]+[a-zA-Z0-9_]+[ ]+irp_irpc_28 |
0+20[ ]+[a-zA-Z0-9_]+[ ]+irp_rept_1 |
0+24[ ]+[a-zA-Z0-9_]+[ ]+irp_rept_1 |
0+28[ ]+[a-zA-Z0-9_]+[ ]+irp_rept_2 |
0+2c[ ]+[a-zA-Z0-9_]+[ ]+irp_rept_2 |
0+30[ ]+[a-zA-Z0-9_]+[ ]+irpc_irp_19 |
0+34[ ]+[a-zA-Z0-9_]+[ ]+irpc_irp_18 |
0+38[ ]+[a-zA-Z0-9_]+[ ]+irpc_irp_29 |
0+3c[ ]+[a-zA-Z0-9_]+[ ]+irpc_irp_28 |
0+40[ ]+[a-zA-Z0-9_]+[ ]+irpc_irpc_19 |
0+44[ ]+[a-zA-Z0-9_]+[ ]+irpc_irpc_18 |
0+48[ ]+[a-zA-Z0-9_]+[ ]+irpc_irpc_29 |
0+4c[ ]+[a-zA-Z0-9_]+[ ]+irpc_irpc_28 |
0+50[ ]+[a-zA-Z0-9_]+[ ]+irpc_rept_1 |
0+54[ ]+[a-zA-Z0-9_]+[ ]+irpc_rept_1 |
0+58[ ]+[a-zA-Z0-9_]+[ ]+irpc_rept_2 |
0+5c[ ]+[a-zA-Z0-9_]+[ ]+irpc_rept_2 |
0+60[ ]+[a-zA-Z0-9_]+[ ]+rept_irp_9 |
0+64[ ]+[a-zA-Z0-9_]+[ ]+rept_irp_8 |
0+68[ ]+[a-zA-Z0-9_]+[ ]+rept_irp_9 |
0+6c[ ]+[a-zA-Z0-9_]+[ ]+rept_irp_8 |
0+70[ ]+[a-zA-Z0-9_]+[ ]+rept_irpc_9 |
0+74[ ]+[a-zA-Z0-9_]+[ ]+rept_irpc_8 |
0+78[ ]+[a-zA-Z0-9_]+[ ]+rept_irpc_9 |
0+7c[ ]+[a-zA-Z0-9_]+[ ]+rept_irpc_8 |
0+80[ ]+[a-zA-Z0-9_]+[ ]+rept_rept |
0+84[ ]+[a-zA-Z0-9_]+[ ]+rept_rept |
0+88[ ]+[a-zA-Z0-9_]+[ ]+rept_rept |
0+8c[ ]+[a-zA-Z0-9_]+[ ]+rept_rept |
/gas/testsuite/gas/macros/app1.s
0,0 → 1,12
#NO_APP |
.text |
.macro foo |
.globl a |
a: |
.long 42 |
.endm |
#APP |
foo |
.globl b |
b: |
.long 56 |
/gas/testsuite/gas/macros/test2.s
0,0 → 1,9
.macro m arg1 arg2 arg3 |
.long \arg1 |
.ifc ,\arg2\arg3 |
.else |
m \arg2,\arg3 |
.endif |
.endm |
|
m foo1,foo2,foo3 |
/gas/testsuite/gas/macros/altmacro.s
0,0 → 1,26
# Check use of LOCAL directive inside .altmacro. |
# Test derived from PR 11507. |
|
.altmacro |
|
.macro ABC |
.print "local " |
.endm |
|
.macro DEF |
LOCAL fred |
.print "fred" |
.endm |
|
# This one is just being perverse, but it should work. |
.macro GHI |
local local |
.print "local" |
.endm |
|
|
ABC |
|
DEF |
|
GHI |
/gas/testsuite/gas/macros/app2.s
0,0 → 1,13
#NO_APP |
.text |
.macro foo |
.globl a |
a: |
.long 42 |
.endm |
#APP |
foo |
.globl b |
b: |
.long 56 |
#NO_APP |
/gas/testsuite/gas/macros/test3.s
0,0 → 1,7
.macro m arg1 arg2 |
\arg1 |
.exitm |
\arg2 |
.endm |
|
m ".long foo1",.garbage |
/gas/testsuite/gas/macros/app3.s
0,0 → 1,16
#NO_APP |
.text |
.macro foo |
.globl a |
a: |
.long 42 |
.endm |
#APP |
foo |
.globl b |
b: |
.long 56 |
#NO_APP |
.globl c |
c: |
.long 78 |
/gas/testsuite/gas/macros/app4.s
0,0 → 1,11
.text |
.macro foo |
.globl a |
a: |
.long 42 |
.endm |
.include "app4b.s" |
foo |
.globl b |
b: |
.long 56 |
/gas/testsuite/gas/macros/paren.s
0,0 → 1,12
.data |
.macro m x |
.byte (\x) |
.endm |
|
m (1) |
m (!1) |
m (1)+(1) |
m 1+(1) |
m (1 + 1) |
m (1 + 1)*(1 + 1) |
m (! 0)+(! 0) |
/gas/testsuite/gas/macros/app4b.s
0,0 → 1,12
#NO_APP |
.globl d |
d: |
.long 21 |
#APP |
.if 0 |
#NO_APP |
.err |
.globl x |
x: |
#APP |
.endif |
/gas/testsuite/gas/macros/badarg.l
0,0 → 1,15
.*: Assembler messages: |
.*:1: Error: .* |
.*:4: Error: .* |
.*:7: Error: .* |
.*:10: Error: .* |
.*:13: Error: .* |
.*:16: Error: .* |
.*:19: Error: .* |
.*:25: Error: .* |
.*:30: Error: .* |
.*:38: Error: .* |
.*:41: Error: .* |
.*:44: Warning: .* |
.*:47: Error: .* |
.*:49: Error: .* |
/gas/testsuite/gas/macros/purge.l
0,0 → 1,11
.*: Assembler messages: |
.*:12: Error: .* |
#... |
.*:13: Error: .* |
#... |
.*:14: Error: .* |
#... |
.*:15: Error: .* |
#... |
.*:16: Warning: .* |
.*:17: Warning: .* |