From 6e4874924886d039c2b6a0195ae68494770f0a5a Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Wed, 7 Mar 2001 10:50:26 -0800 Subject: [PATCH] * config/alpha/alpha.md (call_osf_1_noreturn): New pattern. From-SVN: r40297 --- gcc/ChangeLog | 4 ++++ gcc/config/alpha/alpha.md | 14 ++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d2e146079c1..4e55b2768f2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2001-03-07 Richard Henderson + + * config/alpha/alpha.md (call_osf_1_noreturn): New pattern. + 2001-03-07 Richard Henderson * emit-rtl.c (remove_unnecessary_notes): Verify proper nesting diff --git a/gcc/config/alpha/alpha.md b/gcc/config/alpha/alpha.md index 475e9d66eef..01462c9d306 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 "" "")) -- 2.30.2