diff options
author | Jeff Law <law@redhat.com> | 2013-02-08 13:03:52 -0700 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2013-02-08 13:03:52 -0700 |
commit | a698cc0308468029029e0501815747284194e407 (patch) | |
tree | a991da3f3350280432395c213f19731541c363b9 /gcc/emit-rtl.c | |
parent | e1122ddda6332ca3a430b3944053ad8ecf11fb20 (diff) | |
download | gcc-a698cc0308468029029e0501815747284194e407.tar.gz |
re PR debug/53948 (Assignment line missing for -O0 -g)
PR debug/53948
* emit-rtl.c (reg_is_parm_p): New function.
* regs.h (reg_is_parm_p): New prototype.
* ira-conflicts.c (ira_build_conflicts): Allow parameters in
callee-clobbered registers.
PR debug/53948
* gcc.dg/debug/dwarf2/pr53948.c: New test.
From-SVN: r195900
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r-- | gcc/emit-rtl.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index f997e5d319b..2c70fb1841d 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -919,6 +919,18 @@ gen_reg_rtx (enum machine_mode mode) return val; } +/* Return TRUE if REG is a PARM_DECL, FALSE otherwise. */ + +bool +reg_is_parm_p (rtx reg) +{ + tree decl; + + gcc_assert (REG_P (reg)); + decl = REG_EXPR (reg); + return (decl && TREE_CODE (decl) == PARM_DECL); +} + /* Update NEW with the same attributes as REG, but with OFFSET added to the REG_OFFSET. */ |