diff options
author | J"orn Rennecke <joern.rennecke@superh.com> | 2003-07-11 14:09:29 +0000 |
---|---|---|
committer | Joern Rennecke <amylaar@gcc.gnu.org> | 2003-07-11 15:09:29 +0100 |
commit | fee226d25fc4af5f577cb05386e44e2dd0aa8fc6 (patch) | |
tree | 8b1d45a97235af5156928b537957c4c0a404a581 /gcc/dwarf2out.c | |
parent | 7efa3e22e56fdd56b73deb940c47a5beac0b866e (diff) | |
download | gcc-fee226d25fc4af5f577cb05386e44e2dd0aa8fc6.zip gcc-fee226d25fc4af5f577cb05386e44e2dd0aa8fc6.tar.gz gcc-fee226d25fc4af5f577cb05386e44e2dd0aa8fc6.tar.bz2 |
regclass.c (choose_hard_reg_mode): Add third argument.
* regclass.c (choose_hard_reg_mode): Add third argument.
Changed all callers.
* rtl.h (choose_hard_reg_mode): Update declaration.
* dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
Take HARD_REGNO_CALL_PART_CLOBBERED into account.
From-SVN: r69234
Diffstat (limited to 'gcc/dwarf2out.c')
-rw-r--r-- | gcc/dwarf2out.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 7537dd1..5ad605d 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -448,8 +448,12 @@ expand_builtin_init_dwarf_reg_sizes (tree address) if (DWARF_FRAME_REGNUM (i) < DWARF_FRAME_REGISTERS) { HOST_WIDE_INT offset = DWARF_FRAME_REGNUM (i) * GET_MODE_SIZE (mode); - HOST_WIDE_INT size = GET_MODE_SIZE (reg_raw_mode[i]); + enum machine_mode save_mode = reg_raw_mode[i]; + HOST_WIDE_INT size; + if (HARD_REGNO_CALL_PART_CLOBBERED (i, save_mode)) + save_mode = choose_hard_reg_mode (i, 1, true); + size = GET_MODE_SIZE (save_mode); if (offset < 0) continue; |