From caed511ebbd3970c6e2a4d59d71314f29436fe53 Mon Sep 17 00:00:00 2001 From: bebbo Date: Thu, 9 Jun 2022 20:43:02 +0200 Subject: [PATCH] refs #181: change loading the library bases --- gcc/config/m68k/m68k.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/gcc/config/m68k/m68k.md b/gcc/config/m68k/m68k.md index 25977eff8f55c..c3f65e3f1a8fd 100644 --- a/gcc/config/m68k/m68k.md +++ b/gcc/config/m68k/m68k.md @@ -26,7 +26,6 @@ ;;- removed opcodes and addressing modes off. ;;- - ;;- instruction definitions ;;- @@The original PO technology requires these to be ordered by speed, @@ -8913,7 +8912,10 @@ rtx a6 = gen_raw_REG (SImode, A6_REG); rtx bas; if (flag_pic >= 3) - bas = gen_rtx_MEM (SImode, gen_rtx_PLUS(SImode, gen_rtx_REG (Pmode, PIC_REG), singbas)); + bas = gen_rtx_MEM (SImode, gen_rtx_CONST (Pmode, + gen_rtx_PLUS (Pmode, gen_rtx_REG (Pmode, PIC_REG), gen_rtx_CONST (Pmode, + gen_rtx_UNSPEC (Pmode, gen_rtvec (2, singbas, GEN_INT (0)), UNSPEC_RELOC16) + )))); else bas = gen_rtx_MEM (SImode, singbas); bas->unchanging = 1; @@ -8974,7 +8976,10 @@ rtx a6 = gen_raw_REG (SImode, A6_REG); rtx bas; if (flag_pic >= 3) - bas = gen_rtx_MEM (SImode, gen_rtx_PLUS(SImode, gen_rtx_REG (Pmode, PIC_REG), doubbas)); + bas = gen_rtx_MEM (SImode, gen_rtx_CONST (Pmode, + gen_rtx_PLUS (Pmode, gen_rtx_REG (Pmode, PIC_REG), gen_rtx_CONST (Pmode, + gen_rtx_UNSPEC (Pmode, gen_rtvec (2, doubbas, GEN_INT (0)), UNSPEC_RELOC16) + )))); else bas = gen_rtx_MEM (SImode, doubbas); bas->unchanging = 1;