From 9fb8a9748b5081d5943483160030931394e5ef54 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Wed, 17 Aug 1994 18:03:02 -0400 Subject: [PATCH] (tablejump): Add SIGN_EXTEND to HImode offset so can add to SImode PC. Likewise for matching pattern. From-SVN: r7938 --- gcc/config/m68k/m68k.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gcc/config/m68k/m68k.md b/gcc/config/m68k/m68k.md index 04f1d70df1a..6815a067c59 100644 --- a/gcc/config/m68k/m68k.md +++ b/gcc/config/m68k/m68k.md @@ -4492,7 +4492,8 @@ " { #ifdef CASE_VECTOR_PC_RELATIVE - operands[0] = gen_rtx (PLUS, SImode, pc_rtx, operands[0]); + operands[0] = gen_rtx (PLUS, SImode, pc_rtx, + gen_rtx (SIGN_EXTEND, SImode, operands[0])); #endif }") @@ -4512,7 +4513,8 @@ ;; Jump to variable address from dispatch table of relative addresses. (define_insn "" [(set (pc) - (plus:SI (pc) (match_operand:HI 0 "register_operand" "r"))) + (plus:SI (pc) + (sign_extend:SI (match_operand:HI 0 "register_operand" "r")))) (use (label_ref (match_operand 1 "" "")))] "" "* -- 2.30.2