aboutsummaryrefslogtreecommitdiff
path: root/gas/ChangeLog
diff options
context:
space:
mode:
authorMax Filippov <jcmvbkbc@gmail.com>2017-04-10 13:12:52 +0100
committerNick Clifton <nickc@redhat.com>2017-04-10 13:12:52 +0100
commit947fa9141488c1d39303fcdaa056332d2d0b2599 (patch)
treea39cb09310958310a7bb3692a0156769e1d01472 /gas/ChangeLog
parentbb1dd176fb6f38ae3cc30dc61ce55a7fbf9d0d7b (diff)
downloadgdb-947fa9141488c1d39303fcdaa056332d2d0b2599.zip
gdb-947fa9141488c1d39303fcdaa056332d2d0b2599.tar.gz
gdb-947fa9141488c1d39303fcdaa056332d2d0b2599.tar.bz2
gas: xtensa: fix incorrect code generated with auto litpools
* config/tc-xtensa.c (xtensa_maybe_create_literal_pool_frag): Initialize lps->frag_count with auto_litpool_limit. (xg_promote_candidate_litpool): New function. (xtensa_move_literals): Extract candidate litpool promotion code into separate function. Call it for all possible found candidates. (xtensa_switch_to_literal_fragment): Drop 'recursive' flag and call to xtensa_mark_literal_pool_location that it guards. Replace it with call to xtensa_maybe_create_literal_pool_frag. Initialize pool_location with created literal pool candidate. * testsuite/gas/xtensa/all.exp: Add new tests. * testsuite/gas/xtensa/auto-litpools-first1.d: New test results. * testsuite/gas/xtensa/auto-litpools-first1.s: New test. * testsuite/gas/xtensa/auto-litpools-first2.d: New test results. * testsuite/gas/xtensa/auto-litpools-first2.s: New test. * testsuite/gas/xtensa/auto-litpools.d: Fix offsets changed due to additional jump instruction.
Diffstat (limited to 'gas/ChangeLog')
-rw-r--r--gas/ChangeLog20
1 files changed, 20 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index ff9fca3..f7a8628 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,23 @@
+2017-04-10 Max Filippov <jcmvbkbc@gmail.com>
+
+ * config/tc-xtensa.c (xtensa_maybe_create_literal_pool_frag):
+ Initialize lps->frag_count with auto_litpool_limit.
+ (xg_promote_candidate_litpool): New function.
+ (xtensa_move_literals): Extract candidate litpool promotion code
+ into separate function. Call it for all possible found
+ candidates.
+ (xtensa_switch_to_literal_fragment): Drop 'recursive' flag and
+ call to xtensa_mark_literal_pool_location that it guards.
+ Replace it with call to xtensa_maybe_create_literal_pool_frag.
+ Initialize pool_location with created literal pool candidate.
+ * testsuite/gas/xtensa/all.exp: Add new tests.
+ * testsuite/gas/xtensa/auto-litpools-first1.d: New test results.
+ * testsuite/gas/xtensa/auto-litpools-first1.s: New test.
+ * testsuite/gas/xtensa/auto-litpools-first2.d: New test results.
+ * testsuite/gas/xtensa/auto-litpools-first2.s: New test.
+ * testsuite/gas/xtensa/auto-litpools.d: Fix offsets changed due
+ to additional jump instruction.
+
2017-04-07 Alan Modra <amodra@gmail.com>
* testsuite/gas/ppc/altivec2.s: Delete E6500 vector insns.