diff options
Diffstat (limited to 'binutils-2.25/gas/testsuite/gas/all/weakref1.s')
-rw-r--r-- | binutils-2.25/gas/testsuite/gas/all/weakref1.s | 232 |
1 files changed, 232 insertions, 0 deletions
diff --git a/binutils-2.25/gas/testsuite/gas/all/weakref1.s b/binutils-2.25/gas/testsuite/gas/all/weakref1.s new file mode 100644 index 00000000..142b778f --- /dev/null +++ b/binutils-2.25/gas/testsuite/gas/all/weakref1.s @@ -0,0 +1,232 @@ + .text +l: +/* a# test references after weakref. */ + .weakref Wwa1, wa1 + .long Wwa1 + + .weakref Wua2, ua2 + .long ua2 + + .weakref Wua3, ua3 + .long Wua3 + .long ua3 + + .weakref Wua4, ua4 + .long ua4 + .long Wua4 + + .weakref Wna5, na5 + +/* b# test references before weakref. */ + .long Wwb1 + .weakref Wwb1, wb1 + + .long ub2 + .weakref Wub2, ub2 + + .long Wub3 + .long ub3 + .weakref Wub3, ub3 + + .long ub4 + .long Wub4 + .weakref Wub4, ub4 + +/* c# test combinations of references before and after weakref. */ + .long Wwc1 + .weakref Wwc1, wc1 + .long Wwc1 + + .long uc2 + .weakref Wuc2, uc2 + .long uc2 + + .long Wuc3 + .long uc3 + .weakref Wuc3, uc3 + .long Wuc3 + .long uc3 + + .long uc4 + .long Wuc4 + .weakref Wuc4, uc4 + .long uc4 + .long Wuc4 + + .long Wuc5 + .long uc5 + .weakref Wuc5, uc5 + .long uc5 + .long Wuc5 + + .long uc6 + .long Wuc6 + .weakref Wuc6, uc6 + .long uc6 + .long Wuc6 + + .long uc7 + .weakref Wuc7, uc7 + .long Wuc7 + + .long Wuc8 + .weakref Wuc8, uc8 + .long uc8 + + .long Wuc9 + .weakref Wuc9, uc9 + .long Wuc9 + .long uc9 + +/* w# test that explicitly weak target don't lose the weak status */ + .weakref Www1, ww1 + .weak ww1 + .long ww1 + + .weak ww2 + .weakref Www2, ww2 + .long ww2 + + .weak ww3 + .long ww3 + .weakref Www3, ww3 + .long ww3 + + .long ww4 + .weakref Www4, ww4 + .weak ww4 + .long ww4 + + .long ww5 + .weakref Www5, ww5 + .long ww5 + .weak ww5 + + .weakref Www6, ww6 + .weak ww6 + .long Www6 + + .weak ww7 + .weakref Www7, ww7 + .long Www7 + + .weak ww8 + .long Www8 + .weakref Www8, ww8 + .long Www8 + + .long Www9 + .weakref Www9, ww9 + .weak ww9 + .long Www9 + + .long Www10 + .weakref Www10, ww10 + .long Www10 + .weak ww10 + +/* m# test multiple weakrefs */ + .weakref Wnm4a, nm4 + .weakref Wnm4b, nm4 + + .weakref Wum5a, um5 + .weakref Wum5b, um5 + .long um5 + + .weakref Wwm6a, wm6 + .weakref Wwm6b, wm6 + .long Wwm6a + + .weakref Wwm7a, wm7 + .weakref Wwm7b, wm7 + .long Wwm7b + + .weakref Wwm8a, wm8 + .long Wwm8b + .weakref Wwm8b, wm8 + +/* h# test weakref chain */ + .weakref Wnh1a, nh1 + .weakref Wnh1b, Wnh1a + .weakref Wnh1c, Wnh1b + + .weakref Wwh2a, wh2 + .weakref Wwh2b, Wwh2a + .long Wwh2b + + .weakref Wwh3a, wh3 + .weakref Wwh3b, Wwh3a + .long Wwh3a + + .weakref Wwh4b, Wwh4a + .weakref Wwh4a, wh4 + .long Wwh4b + + .long Wwh5b + .weakref Wwh5a, wh5 + .weakref Wwh5b, Wwh5a + + .long Wwh6b + .weakref Wwh6b, Wwh6a + .weakref Wwh6a, wh6 + + .weakref Wwh7b, Wwh7a + .long Wwh7b + .weakref Wwh7a, wh7 + + .long Wuh8c + .weakref Wuh8a, uh8 + .weakref Wuh8b, Wuh8a + .weakref Wuh8c, Wuh8b + .long uh8 + + .long Wuh9c + .weakref Wuh9c, Wuh9b + .weakref Wuh9b, Wuh9a + .weakref Wuh9a, uh9 + .long uh9 + +/* d# target symbol definitions */ + .weakref Wld1, ld1 + .long Wld1 + ld1 == l + + .weakref Wld2, ld2 + .long Wld2 +ld2: + +ld3: + .weakref Wld3, ld3 + .long Wld3 + +ld4: + .long Wld4 + .weakref Wld4, ld4 + + .global ud5 + .weakref Wud5, ud5 + .long Wud5 + + .global gd6 + .weakref Wgd6, gd6 + .long Wgd6 +gd6: + + .weakref Wgd7, gd7 + .long Wgd7 + .global gd7 +gd7: + + .long Wld8c + .weakref Wld8a, ld8 + .weakref Wld8b, Wld8a + .weakref Wld8c, Wld8b + .long ld8 +ld8: + + .long Wld9c + .weakref Wld9c, Wld9b + .weakref Wld9b, Wld9a + .weakref Wld9a, ld9 + .long ld9 +ld9: |