aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/ChangeLog
diff options
context:
space:
mode:
authorWilco Dijkstra <wdijkstr@arm.com>2017-01-17 19:34:26 +0000
committerWilco Dijkstra <wilco@gcc.gnu.org>2017-01-17 19:34:26 +0000
commit8144a493ddc0083b06d303f51a8e34d16c122c8c (patch)
tree7d5f87929af63c4e61ef125668d02add9f1aa5e8 /gcc/testsuite/ChangeLog
parenta6607774860fae67f0913d98e30f3158aa0e77a5 (diff)
downloadgcc-8144a493ddc0083b06d303f51a8e34d16c122c8c.zip
gcc-8144a493ddc0083b06d303f51a8e34d16c122c8c.tar.gz
gcc-8144a493ddc0083b06d303f51a8e34d16c122c8c.tar.bz2
This patch simplifies the handling of EH return.
This patch simplifies the handling of EH return. We force the use of the frame pointer so the return location is always at FP + 8. This means we can emit a simple volatile access in EH_RETURN_HANDLER_RTX without needing md patterns, splitters and frame offset calculations. The new implementation also fixes various bugs in aarch64_final_eh_return_addr, which does not work with -fomit-frame-pointer, alloca or outgoing arguments. gcc/ * config/aarch64/aarch64.md (eh_return): Remove pattern and splitter. * config/aarch64/aarch64.h (AARCH64_EH_STACKADJ_REGNUM): Remove. (EH_RETURN_HANDLER_RTX): New define. * config/aarch64/aarch64.c (aarch64_frame_pointer_required): Force frame pointer in EH return functions. (aarch64_expand_epilogue): Add barrier for eh_return. (aarch64_final_eh_return_addr): Remove. (aarch64_eh_return_handler_rtx): New function. * config/aarch64/aarch64-protos.h (aarch64_final_eh_return_addr): Remove. (aarch64_eh_return_handler_rtx): New prototype. testsuite/ * gcc.target/aarch64/eh_return.c: New test. From-SVN: r244547
Diffstat (limited to 'gcc/testsuite/ChangeLog')
-rw-r--r--gcc/testsuite/ChangeLog4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 7cdf31c..eb1e3cc 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2017-01-17 Wilco Dijkstra <wdijkstr@arm.com>
+
+ * gcc.target/aarch64/eh_return.c: New test.
+
2017-01-17 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* vec-rlmi-rlnm.c: New file.