diff options
author | Jakub Jelinek <jakub@redhat.com> | 2002-03-20 22:58:57 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2002-03-20 22:58:57 +0100 |
commit | a29b099d7aa8f3819b5791f69b1d5e346e2a1018 (patch) | |
tree | 84f08d2e1bd0d8c13fac88df8d41b14815ccd937 /gcc/genemit.c | |
parent | 048b1c951bd2510e004535964f001e7d6ddcf459 (diff) | |
download | gcc-a29b099d7aa8f3819b5791f69b1d5e346e2a1018.zip gcc-a29b099d7aa8f3819b5791f69b1d5e346e2a1018.tar.gz gcc-a29b099d7aa8f3819b5791f69b1d5e346e2a1018.tar.bz2 |
re PR bootstrap/4192 (fr30-elf does not build - memory exhausted building crtbegin.o)
PR bootstrap/4192
* config/fr30/fr30.md (jump): Comment out clobber of fixed register.
* genemit.c (output_added_clobbers_hard_reg_p): Only output return
stmt if some case has been output.
* gcc.c-torture/compile/20020320-1.c: New test.
From-SVN: r51088
Diffstat (limited to 'gcc/genemit.c')
-rw-r--r-- | gcc/genemit.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/gcc/genemit.c b/gcc/genemit.c index 2d11d2b..5a7f32a 100644 --- a/gcc/genemit.c +++ b/gcc/genemit.c @@ -722,7 +722,7 @@ output_added_clobbers_hard_reg_p () { struct clobber_pat *clobber; struct clobber_ent *ent; - int clobber_p; + int clobber_p, used; printf ("\n\nint\nadded_clobbers_hard_reg_p (insn_code_number)\n"); printf (" int insn_code_number;\n"); @@ -732,12 +732,17 @@ output_added_clobbers_hard_reg_p () for (clobber_p = 0; clobber_p <= 1; clobber_p++) { + used = 0; for (clobber = clobber_list; clobber; clobber = clobber->next) if (clobber->has_hard_reg == clobber_p) for (ent = clobber->insns; ent; ent = ent->next) - printf (" case %d:\n", ent->code_number); + { + printf (" case %d:\n", ent->code_number); + used++; + } - printf (" return %d;\n\n", clobber_p); + if (used) + printf (" return %d;\n\n", clobber_p); } printf (" default:\n"); |