From 29bd4eb3e04e52c20e4f50e2fc7c8fd3b9762196 Mon Sep 17 00:00:00 2001 From: Michael Meissner Date: Fri, 3 Feb 1995 19:45:16 +0000 Subject: [PATCH] Fix indirect function pointers on eABI. From-SVN: r8857 --- gcc/config/rs6000/rs6000.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index 558a5764d79..e5ee37c2602 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -4587,10 +4587,13 @@ operands[0] = XEXP (operands[0], 0); if (GET_CODE (operands[0]) != SYMBOL_REF) { +#ifndef USING_SVR4_H + /* AIX function pointers are really pointers to a three word area */ rtx temp = gen_reg_rtx (SImode); emit_insn (gen_call_via_ptr (temp, force_reg (SImode, operands[0]))); operands[0] = temp; +#endif /* !USING_SVR4_H */ } }") @@ -4608,10 +4611,13 @@ operands[1] = XEXP (operands[1], 0); if (GET_CODE (operands[1]) != SYMBOL_REF) { +#ifndef USING_SVR4_H + /* AIX function pointers are really pointers to a three word area */ rtx temp = gen_reg_rtx (SImode); emit_insn (gen_call_via_ptr (temp, force_reg (SImode, operands[1]))); operands[1] = temp; +#endif /* !USING_SVR4_H */ } }") -- 2.30.2