diff options
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/config/tc-mips.c | 4 | ||||
-rw-r--r-- | gas/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/aent.d | 14 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/aent.s | 19 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/mips.exp | 2 |
6 files changed, 48 insertions, 2 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index c1adad5..1bdb37e 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2009-12-19 Maciej W. Rozycki <macro@codesourcery.com> + + * config/tc-mips.c (s_mips_ent): Also set BSF_FUNCTION for + ".aent". + 2009-12-18 Steve Ellcey <sje@cup.hp.com> * config/tc-hppa.c: Change access to access_ctr. diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index ff2ffc6..94128fe 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -15047,8 +15047,6 @@ s_mips_ent (int aent) cur_proc_ptr->func_sym = symbolP; - symbol_get_bfdsym (symbolP)->flags |= BSF_FUNCTION; - ++numprocs; if (debug_type == DEBUG_STABS) @@ -15056,6 +15054,8 @@ s_mips_ent (int aent) S_GET_NAME (symbolP)); } + symbol_get_bfdsym (symbolP)->flags |= BSF_FUNCTION; + demand_empty_rest_of_line (); } diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index bad0ab9..e792894 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2009-12-19 Maciej W. Rozycki <macro@codesourcery.com> + + * gas/mips/aent.d: New test. + * gas/mips/aent.s: Source for the new test. + * gas/mips/mips.exp: Run it. + 2009-12-17 Nick Clifton <nickc@redhat.com> PR binutils/10924 diff --git a/gas/testsuite/gas/mips/aent.d b/gas/testsuite/gas/mips/aent.d new file mode 100644 index 0000000..21d13d4 --- /dev/null +++ b/gas/testsuite/gas/mips/aent.d @@ -0,0 +1,14 @@ +#objdump: -dr --prefix-addresses +#name: MIPS .aent directive +#as: -32 + +# Test the .aent directive retains function symbol type annotation. + +.*: +file format .*mips.* + +Disassembly of section \.text: +[0-9a-f]+ <foo[^>]*> sllv v0,a0,a2 +[0-9a-f]+ <foo[^>]*> srav t0,t2,t4 +[0-9a-f]+ <bar[^>]*> sllv v0,a0,a2 +[0-9a-f]+ <bar[^>]*> srav t0,t2,t4 + \.\.\. diff --git a/gas/testsuite/gas/mips/aent.s b/gas/testsuite/gas/mips/aent.s new file mode 100644 index 0000000..4061fda --- /dev/null +++ b/gas/testsuite/gas/mips/aent.s @@ -0,0 +1,19 @@ + .text + + .globl foo + .ent foo +foo: + sllv $2, $4, $6 + srav $8, $10, $12 + + .globl bar + .aent bar +bar: + sllv $2, $4, $6 + srav $8, $10, $12 + + .end foo + .size foo, . - foo + +# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ... + .space 8 diff --git a/gas/testsuite/gas/mips/mips.exp b/gas/testsuite/gas/mips/mips.exp index b1adde0..14ce5cc 100644 --- a/gas/testsuite/gas/mips/mips.exp +++ b/gas/testsuite/gas/mips/mips.exp @@ -841,4 +841,6 @@ if { [istarget mips*-*-vxworks*] } { run_dump_test "mips32-sync" if $has_newabi { run_dump_test "cfi-n64-1" } + + run_dump_test_arches "aent" [mips_arch_list_matching mips1] } |