summaryrefslogtreecommitdiff
path: root/gold/ChangeLog
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2014-12-18 11:09:28 -0800
committerH.J. Lu <hjl.tools@gmail.com>2015-01-06 15:38:25 -0800
commit4fc1b9d43cbce7571264a0011c87258b78252750 (patch)
tree93ec540f596de570077e84135d9e1a78ac4b67a4 /gold/ChangeLog
parente7287c7f647870093b8ab5ffea0732ffdb8c4d66 (diff)
Handle stack split for x32
X32 uses cmp %fs:NN,%esp, lea NN(%rsp),%r10d, lea NN(%rsp),%r11d, instead of cmp %fs:NN,%rsp, lea NN(%rsp),%r10, lea NN(%rsp),%r11. This patch handles it. PR gold/17729 * configure.ac (DEFAULT_TARGET_X86_64): Don't set for x32. (DEFAULT_TARGET_X32): Set for x32. * x86_64.cc (cmp_insn_32): New. (lea_r10_insn_32): Likewise. (lea_r11_insn_32): Likewise. (cmp_insn_64): Likewise. (lea_r10_insn_64): Likewise. (lea_r11_insn_64): Likewise. (Target_x86_64<size>::do_calls_non_split): Handle x32. * testsuite/Makefile.am (check_SCRIPTS): Add split_x32.sh. (check_DATA): Add split_x32 files. (split_x32_[1234n].o): New targets. (split_x32_[124]): New targets. (split_x32_[1234r].stdout): New targets. * testsuite/split_x32.sh: New file. * testsuite/split_x32_1.s: Likewise. * testsuite/split_x32_2.s: Likewise. * testsuite/split_x32_3.s: Likewise. * testsuite/split_x32_4.s: Likewise. * testsuite/split_x32_n.s: Likewise. * configure: Regenerated. * testsuite/Makefile.in: Likewise.
Diffstat (limited to 'gold/ChangeLog')
-rw-r--r--gold/ChangeLog27
1 files changed, 27 insertions, 0 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog
index af56066d5a..93529fe536 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,4 +1,31 @@
2015-01-06 H.J. Lu <hongjiu.lu@intel.com>
+ Cary Coutant <ccoutant@google.com>
+
+ PR gold/17729
+ * configure.ac (DEFAULT_TARGET_X86_64): Don't set for x32.
+ (DEFAULT_TARGET_X32): Set for x32.
+ * x86_64.cc (cmp_insn_32): New.
+ (lea_r10_insn_32): Likewise.
+ (lea_r11_insn_32): Likewise.
+ (cmp_insn_64): Likewise.
+ (lea_r10_insn_64): Likewise.
+ (lea_r11_insn_64): Likewise.
+ (Target_x86_64<size>::do_calls_non_split): Handle x32.
+ * testsuite/Makefile.am (check_SCRIPTS): Add split_x32.sh.
+ (check_DATA): Add split_x32 files.
+ (split_x32_[1234n].o): New targets.
+ (split_x32_[124]): New targets.
+ (split_x32_[1234r].stdout): New targets.
+ * testsuite/split_x32.sh: New file.
+ * testsuite/split_x32_1.s: Likewise.
+ * testsuite/split_x32_2.s: Likewise.
+ * testsuite/split_x32_3.s: Likewise.
+ * testsuite/split_x32_4.s: Likewise.
+ * testsuite/split_x32_n.s: Likewise.
+ * configure: Regenerated.
+ * testsuite/Makefile.in: Likewise.
+
+2015-01-06 H.J. Lu <hongjiu.lu@intel.com>
PR gold/17809
* x86_64.cc (Target_x86_64<size>::Relocate::tls_ie_to_le): Handle