diff options
author | Richard Henderson <rth@redhat.com> | 2001-03-07 10:50:26 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2001-03-07 10:50:26 -0800 |
commit | 6e4874924886d039c2b6a0195ae68494770f0a5a (patch) | |
tree | 4e3d0e4b020118177b661be736ba4ca0c0d3d8ea /gcc | |
parent | 232f749bbc7017ae00943a6ba87ef151276dff3e (diff) | |
download | gcc-6e4874924886d039c2b6a0195ae68494770f0a5a.zip gcc-6e4874924886d039c2b6a0195ae68494770f0a5a.tar.gz gcc-6e4874924886d039c2b6a0195ae68494770f0a5a.tar.bz2 |
* config/alpha/alpha.md (call_osf_1_noreturn): New pattern.
From-SVN: r40297
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/alpha/alpha.md | 14 |
2 files changed, 18 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d2e1460..4e55b27 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2001-03-07 Richard Henderson <rth@redhat.com> + * config/alpha/alpha.md (call_osf_1_noreturn): New pattern. + +2001-03-07 Richard Henderson <rth@redhat.com> + * emit-rtl.c (remove_unnecessary_notes): Verify proper nesting of block notes and exception handling notes. diff --git a/gcc/config/alpha/alpha.md b/gcc/config/alpha/alpha.md index 475e9d6..01462c9 100644 --- a/gcc/config/alpha/alpha.md +++ b/gcc/config/alpha/alpha.md @@ -4276,6 +4276,20 @@ } }") +(define_insn "*call_osf_1_noreturn" + [(call (mem:DI (match_operand:DI 0 "call_operand" "c,R,i")) + (match_operand 1 "" "")) + (clobber (reg:DI 27)) + (clobber (reg:DI 26))] + "! TARGET_WINDOWS_NT && ! TARGET_OPEN_VMS + && find_reg_note (insn, REG_NORETURN, NULL_RTX)" + "@ + jsr $26,($27),0 + bsr $26,$%0..ng + jsr $26,%0" + [(set_attr "type" "jsr") + (set_attr "length" "*,*,8")]) + (define_insn "*call_osf_1" [(call (mem:DI (match_operand:DI 0 "call_operand" "c,R,i")) (match_operand 1 "" "")) |