From 2a785500e03e22dd91824327fbf4b1f6d29dbf53 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 19 Jul 2006 17:15:36 +0000 Subject: [PATCH] bswapped load/store instructions are only availble in indexed addressing form. As such, use xoaddr (indexed only), not xaddr for address selection. This fixes CodeGen/PowerPC/2006-07-19-stwbrx-crash.ll, a crash compiling lencod. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29208 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/PowerPC/PPCInstrInfo.td | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/Target/PowerPC/PPCInstrInfo.td b/lib/Target/PowerPC/PPCInstrInfo.td index f3241254555..252036f497c 100644 --- a/lib/Target/PowerPC/PPCInstrInfo.td +++ b/lib/Target/PowerPC/PPCInstrInfo.td @@ -478,10 +478,10 @@ def LWZX : XForm_1<31, 23, (ops GPRC:$rD, memrr:$src), def LHBRX : XForm_1<31, 790, (ops GPRC:$rD, memrr:$src), "lhbrx $rD, $src", LdStGeneral, - [(set GPRC:$rD, (PPClbrx xaddr:$src,srcvalue:$dummy, i16))]>; + [(set GPRC:$rD, (PPClbrx xoaddr:$src, srcvalue:$sv, i16))]>; def LWBRX : XForm_1<31, 534, (ops GPRC:$rD, memrr:$src), "lwbrx $rD, $src", LdStGeneral, - [(set GPRC:$rD, (PPClbrx xaddr:$src,srcvalue:$dummy, i32))]>; + [(set GPRC:$rD, (PPClbrx xoaddr:$src, srcvalue:$sv, i32))]>; } @@ -538,11 +538,11 @@ def STWUX : XForm_8<31, 183, (ops GPRC:$rS, GPRC:$rA, GPRC:$rB), []>; def STHBRX: XForm_8<31, 918, (ops GPRC:$rS, memrr:$dst), "sthbrx $rS, $dst", LdStGeneral, - [(PPCstbrx GPRC:$rS, xaddr:$dst, srcvalue:$dummy, i16)]>, + [(PPCstbrx GPRC:$rS, xoaddr:$dst, srcvalue:$dummy, i16)]>, PPC970_DGroup_Cracked; def STWBRX: XForm_8<31, 662, (ops GPRC:$rS, memrr:$dst), "stwbrx $rS, $dst", LdStGeneral, - [(PPCstbrx GPRC:$rS, xaddr:$dst, srcvalue:$dummy, i32)]>, + [(PPCstbrx GPRC:$rS, xoaddr:$dst, srcvalue:$dummy, i32)]>, PPC970_DGroup_Cracked; } let PPC970_Unit = 1 in { // FXU Operations.