aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorMatthew Fortune <matthew.fortune@imgtec.com>2014-09-04 08:32:05 +0000
committerMatthew Fortune <mpf@gcc.gnu.org>2014-09-04 08:32:05 +0000
commitff050c66b18d8768b57b0c99f824e9b82e569ccb (patch)
tree36a08d3b50e1618d7539692d59cc1543305d5d9a /gcc/doc
parenta0f75fa8c317ced0fb3d916d3b7f52c88eb4a8ea (diff)
downloadgcc-ff050c66b18d8768b57b0c99f824e9b82e569ccb.zip
gcc-ff050c66b18d8768b57b0c99f824e9b82e569ccb.tar.gz
gcc-ff050c66b18d8768b57b0c99f824e9b82e569ccb.tar.bz2
Add target hook to override DWARF2 frame register size
gcc/ * target.def (TARGET_DWARF_FRAME_REG_MODE): New target hook. * targhooks.c (default_dwarf_frame_reg_mode): New function. * targhooks.h (default_dwarf_frame_reg_mode): New prototype. * doc/tm.texi.in (TARGET_DWARF_FRAME_REG_MODE): Document. * doc/tm.texi: Regenerate. * dwarf2cfi.c (expand_builtin_init_dwarf_reg_sizes): Abstract mode selection logic to default_dwarf_frame_reg_mode. From-SVN: r214898
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/tm.texi7
-rw-r--r--gcc/doc/tm.texi.in2
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index 0c44d51..9496477 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -8871,6 +8871,13 @@ register in Dwarf. Otherwise, this hook should return @code{NULL_RTX}.
If not defined, the default is to return @code{NULL_RTX}.
@end deftypefn
+@deftypefn {Target Hook} {enum machine_mode} TARGET_DWARF_FRAME_REG_MODE (int @var{regno})
+Given a register, this hook should return the mode which the
+corresponding Dwarf frame register should have. This is normally
+used to return a smaller mode than the raw mode to prevent call
+clobbered parts of a register altering the frame register size
+@end deftypefn
+
@deftypefn {Target Hook} void TARGET_INIT_DWARF_REG_SIZES_EXTRA (tree @var{address})
If some registers are represented in Dwarf-2 unwind information in
multiple pieces, define this hook to fill in information about the
diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in
index 7a63353..152d37d 100644
--- a/gcc/doc/tm.texi.in
+++ b/gcc/doc/tm.texi.in
@@ -6594,6 +6594,8 @@ the target supports DWARF 2 frame unwind information.
@hook TARGET_DWARF_REGISTER_SPAN
+@hook TARGET_DWARF_FRAME_REG_MODE
+
@hook TARGET_INIT_DWARF_REG_SIZES_EXTRA
@hook TARGET_ASM_TTYPE