Index: llvm/trunk/lib/Target/PowerPC/PPCInstrVSX.td =================================================================== --- llvm/trunk/lib/Target/PowerPC/PPCInstrVSX.td +++ llvm/trunk/lib/Target/PowerPC/PPCInstrVSX.td @@ -129,7 +129,7 @@ def LXSDX : XX1Form_memOp<31, 588, (outs vsfrc:$XT), (ins memrr:$src), "lxsdx $XT, $src", IIC_LdStLFD, - [(set f64:$XT, (load xoaddr:$src))]>; + []>; // Pseudo instruction XFLOADf64 will be expanded to LXSDX or LFDX later let isPseudo = 1, CodeSize = 3 in @@ -160,7 +160,7 @@ def STXSDX : XX1Form_memOp<31, 716, (outs), (ins vsfrc:$XT, memrr:$dst), "stxsdx $XT, $dst", IIC_LdStSTFD, - [(store f64:$XT, xoaddr:$dst)]>; + []>; // Pseudo instruction XFSTOREf64 will be expanded to STXSDX or STFDX later let isPseudo = 1, CodeSize = 3 in Index: llvm/trunk/test/CodeGen/PowerPC/bitcasts-direct-move.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/bitcasts-direct-move.ll +++ llvm/trunk/test/CodeGen/PowerPC/bitcasts-direct-move.ll @@ -18,7 +18,7 @@ entry: %0 = bitcast double %a to i64 ret i64 %0 -; CHECK-P7: stxsdx 1, +; CHECK-P7: stfdx 1, ; CHECK-P7: ld 3, ; CHECK: mffprd 3, 1 } @@ -39,7 +39,7 @@ %0 = bitcast i64 %a to double ret double %0 ; CHECK-P7: std 3, -; CHECK-P7: lxsdx 1, +; CHECK-P7: lfdx 1, ; CHECK: mtvsrd 1, 3 } @@ -58,7 +58,7 @@ entry: %0 = bitcast double %a to i64 ret i64 %0 -; CHECK-P7: stxsdx 1, +; CHECK-P7: stfdx 1, ; CHECK-P7: ld 3, ; CHECK: mffprd 3, 1 } @@ -79,6 +79,6 @@ %0 = bitcast i64 %a to double ret double %0 ; CHECK-P7: std 3, -; CHECK-P7: lxsdx 1, +; CHECK-P7: lfdx 1, ; CHECK: mtvsrd 1, 3 } Index: llvm/trunk/test/CodeGen/PowerPC/branch_coalesce.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/branch_coalesce.ll +++ llvm/trunk/test/CodeGen/PowerPC/branch_coalesce.ll @@ -15,8 +15,8 @@ ; CHECK-NOT: beq ; CHECK-DAG: addi [[LD1BASE:[0-9]+]], [[LD1REG]] ; CHECK-DAG: addi [[LD2BASE:[0-9]+]], [[LD2REG]] -; CHECK-DAG: lxsdx 1, 0, [[LD1BASE]] -; CHECK-DAG: lxsdx 3, 0, [[LD2BASE]] +; CHECK-DAG: lfdx 1, 0, [[LD1BASE]] +; CHECK-DAG: lfdx 3, 0, [[LD2BASE]] ; CHECK: .LBB[[LAB1]] ; CHECK: xsadddp 0, 1, 2 ; CHECK: xsadddp 1, 0, 3 @@ -33,7 +33,7 @@ ; CHECK-NOCOALESCE-NEXT: .LBB0_3: # %entry ; CHECK-NOCOALESCE-NEXT: addis 3, 2, .LCPI0_1@toc@ha ; CHECK-NOCOALESCE-NEXT: addi 3, 3, .LCPI0_1@toc@l -; CHECK-NOCOALESCE-NEXT: lxsdx 3, 0, 3 +; CHECK-NOCOALESCE-NEXT: lfdx 3, 0, 3 ; CHECK-NOCOALESCE-NEXT: .LBB0_4: # %entry ; CHECK-NOCOALESCE-NEXT: xsadddp 0, 1, 2 ; CHECK-NOCOALESCE-NEXT: xsadddp 1, 0, 3 @@ -41,7 +41,7 @@ ; CHECK-NOCOALESCE-NEXT: .LBB0_5: # %entry ; CHECK-NOCOALESCE-NEXT: addis 3, 2, .LCPI0_0@toc@ha ; CHECK-NOCOALESCE-NEXT: addi 3, 3, .LCPI0_0@toc@l -; CHECK-NOCOALESCE-NEXT: lxsdx 1, 0, 3 +; CHECK-NOCOALESCE-NEXT: lfdx 1, 0, 3 ; CHECK-NOCOALESCE-NEXT: beq 0, .LBB0_2 ; CHECK-NOCOALESCE-NEXT: .LBB0_6: # %entry ; CHECK-NOCOALESCE-NEXT: xxlxor 2, 2, 2 Index: llvm/trunk/test/CodeGen/PowerPC/build-vector-tests.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/build-vector-tests.ll +++ llvm/trunk/test/CodeGen/PowerPC/build-vector-tests.ll @@ -1667,20 +1667,20 @@ ; P9LE: xvcvdpsp ; P9LE: vmrgew ; P9LE: xvcvspsxws v2 -; P8BE: lxsdx -; P8BE: lxsdx -; P8BE: lxsdx -; P8BE: lxsdx +; P8BE: lfdx +; P8BE: lfd +; P8BE: lfd +; P8BE: lfd ; P8BE: xxmrghd ; P8BE: xxmrghd ; P8BE: xvcvdpsp ; P8BE: xvcvdpsp ; P8BE: vmrgew ; P8BE: xvcvspsxws v2 -; P8LE: lxsdx -; P8LE: lxsdx -; P8LE: lxsdx -; P8LE: lxsdx +; P8LE: lfdx +; P8LE: lfd +; P8LE: lfd +; P8LE: lfd ; P8LE: xxmrghd ; P8LE: xxmrghd ; P8LE: xvcvdpsp @@ -1741,9 +1741,9 @@ ; P9LE: vmrgew ; P9LE: xvcvspsxws v2 ; P8BE: lfdux -; P8BE: lxsdx -; P8BE: lxsdx -; P8BE: lxsdx +; P8BE: lfd +; P8BE: lfd +; P8BE: lfd ; P8BE: xxmrghd ; P8BE: xxmrghd ; P8BE: xvcvdpsp @@ -1751,9 +1751,9 @@ ; P8BE: vmrgew ; P8BE: xvcvspsxws v2 ; P8LE: lfdux -; P8LE: lxsdx -; P8LE: lxsdx -; P8LE: lxsdx +; P8LE: lfd +; P8LE: lfd +; P8LE: lfd ; P8LE: xxmrghd ; P8LE: xxmrghd ; P8LE: xvcvdpsp @@ -1814,9 +1814,9 @@ ; P9LE: vmrgew ; P9LE: xvcvspsxws v2 ; P8BE: lfdux -; P8BE: lxsdx -; P8BE: lxsdx -; P8BE: lxsdx +; P8BE: lfd +; P8BE: lfd +; P8BE: lfd ; P8BE: xxmrghd ; P8BE: xxmrghd ; P8BE: xvcvdpsp @@ -1824,9 +1824,9 @@ ; P8BE: vmrgew ; P8BE: xvcvspsxws v2 ; P8LE: lfdux -; P8LE: lxsdx -; P8LE: lxsdx -; P8LE: lxsdx +; P8LE: lfd +; P8LE: lfd +; P8LE: lfd ; P8LE: xxmrghd ; P8LE: xxmrghd ; P8LE: xvcvdpsp @@ -2827,20 +2827,20 @@ ; P9LE: xvcvdpsp ; P9LE: vmrgew ; P9LE: xvcvspuxws v2 -; P8BE: lxsdx -; P8BE: lxsdx -; P8BE: lxsdx -; P8BE: lxsdx +; P8BE: lfdx +; P8BE: lfd +; P8BE: lfd +; P8BE: lfd ; P8BE: xxmrghd ; P8BE: xxmrghd ; P8BE: xvcvdpsp ; P8BE: xvcvdpsp ; P8BE: vmrgew ; P8BE: xvcvspuxws v2 -; P8LE: lxsdx -; P8LE: lxsdx -; P8LE: lxsdx -; P8LE: lxsdx +; P8LE: lfdx +; P8LE: lfd +; P8LE: lfd +; P8LE: lfd ; P8LE: xxmrghd ; P8LE: xxmrghd ; P8LE: xvcvdpsp @@ -2901,9 +2901,9 @@ ; P9LE: vmrgew ; P9LE: xvcvspuxws v2 ; P8BE: lfdux -; P8BE: lxsdx -; P8BE: lxsdx -; P8BE: lxsdx +; P8BE: lfd +; P8BE: lfd +; P8BE: lfd ; P8BE: xxmrghd ; P8BE: xxmrghd ; P8BE: xvcvdpsp @@ -2911,9 +2911,9 @@ ; P8BE: vmrgew ; P8BE: xvcvspuxws v2 ; P8LE: lfdux -; P8LE: lxsdx -; P8LE: lxsdx -; P8LE: lxsdx +; P8LE: lfd +; P8LE: lfd +; P8LE: lfd ; P8LE: xxmrghd ; P8LE: xxmrghd ; P8LE: xvcvdpsp @@ -2974,9 +2974,9 @@ ; P9LE: vmrgew ; P9LE: xvcvspuxws v2 ; P8BE: lfdux -; P8BE: lxsdx -; P8BE: lxsdx -; P8BE: lxsdx +; P8BE: lfd +; P8BE: lfd +; P8BE: lfd ; P8BE: xxmrghd ; P8BE: xxmrghd ; P8BE: xvcvdpsp @@ -2984,9 +2984,9 @@ ; P8BE: vmrgew ; P8BE: xvcvspuxws v2 ; P8LE: lfdux -; P8LE: lxsdx -; P8LE: lxsdx -; P8LE: lxsdx +; P8LE: lfd +; P8LE: lfd +; P8LE: lfd ; P8LE: xxmrghd ; P8LE: xxmrghd ; P8LE: xvcvdpsp Index: llvm/trunk/test/CodeGen/PowerPC/fast-isel-load-store-vsx.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/fast-isel-load-store-vsx.ll +++ llvm/trunk/test/CodeGen/PowerPC/fast-isel-load-store-vsx.ll @@ -17,7 +17,7 @@ %this.addr = alloca %SomeStruct*, align 8 %V.addr = alloca double, align 8 store %SomeStruct* %this, %SomeStruct** %this.addr, align 8 -; ELF64VSX: stxsdx {{[0-9][0-9]?}}, 0, {{[1-9][0-9]?}} +; ELF64VSX: stfdx {{[0-9][0-9]?}}, 0, {{[1-9][0-9]?}} store double %V, double* %V.addr, align 8 %this1 = load %SomeStruct*, %SomeStruct** %this.addr %Val = getelementptr inbounds %SomeStruct, %SomeStruct* %this1, i32 0, i32 0 Index: llvm/trunk/test/CodeGen/PowerPC/float-to-int.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/float-to-int.ll +++ llvm/trunk/test/CodeGen/PowerPC/float-to-int.ll @@ -21,7 +21,7 @@ ; CHECK-VSX: @foo ; CHECK-VSX: xscvdpsxds [[REG:[0-9]+]], 1 -; CHECK-VSX: stxsdx [[REG]], +; CHECK-VSX: stfdx [[REG]], ; CHECK-VSX: ld 3, ; CHECK-VSX: blr @@ -44,7 +44,7 @@ ; CHECK-VSX: @foo2 ; CHECK-VSX: xscvdpsxds [[REG:[0-9]+]], 1 -; CHECK-VSX: stxsdx [[REG]], +; CHECK-VSX: stfdx [[REG]], ; CHECK-VSX: ld 3, ; CHECK-VSX: blr @@ -67,7 +67,7 @@ ; CHECK-VSX: @foo3 ; CHECK-VSX: xscvdpuxds [[REG:[0-9]+]], 1 -; CHECK-VSX: stxsdx [[REG]], +; CHECK-VSX: stfdx [[REG]], ; CHECK-VSX: ld 3, ; CHECK-VSX: blr @@ -90,7 +90,7 @@ ; CHECK-VSX: @foo4 ; CHECK-VSX: xscvdpuxds [[REG:[0-9]+]], 1 -; CHECK-VSX: stxsdx [[REG]], +; CHECK-VSX: stfdx [[REG]], ; CHECK-VSX: ld 3, ; CHECK-VSX: blr Index: llvm/trunk/test/CodeGen/PowerPC/fp128-bitcast-after-operation.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/fp128-bitcast-after-operation.ll +++ llvm/trunk/test/CodeGen/PowerPC/fp128-bitcast-after-operation.ll @@ -7,8 +7,8 @@ define i128 @test_abs(ppc_fp128 %x) nounwind { entry: ; PPC64-LABEL: test_abs: -; PPC64-DAG: stxsdx 2, 0, [[ADDR_HI:[0-9]+]] -; PPC64-DAG: stxsdx 1, 0, [[ADDR_LO:[0-9]+]] +; PPC64-DAG: stfdx 2, 0, [[ADDR_HI:[0-9]+]] +; PPC64-DAG: stfdx 1, 0, [[ADDR_LO:[0-9]+]] ; PPC64-DAG: addi [[ADDR_HI]], [[SP:[0-9]+]], [[OFFSET_HI:-?[0-9]+]] ; PPC64-DAG: addi [[ADDR_LO]], [[SP]], [[OFFSET_LO:-?[0-9]+]] ; PPC64-DAG: ld [[HI:[0-9]+]], [[OFFSET_LO]]([[SP]]) @@ -45,8 +45,8 @@ define i128 @test_neg(ppc_fp128 %x) nounwind { entry: ; PPC64-LABEL: test_neg: -; PPC64-DAG: stxsdx 2, 0, [[ADDR_HI:[0-9]+]] -; PPC64-DAG: stxsdx 1, 0, [[ADDR_LO:[0-9]+]] +; PPC64-DAG: stfdx 2, 0, [[ADDR_HI:[0-9]+]] +; PPC64-DAG: stfdx 1, 0, [[ADDR_LO:[0-9]+]] ; PPC64-DAG: addi [[ADDR_HI]], [[SP:[0-9]+]], [[OFFSET_HI:-?[0-9]+]] ; PPC64-DAG: addi [[ADDR_LO]], [[SP]], [[OFFSET_LO:-?[0-9]+]] ; PPC64-DAG: li [[FLIP_BIT:[0-9]+]], 1 @@ -87,7 +87,7 @@ define i128 @test_copysign(ppc_fp128 %x) nounwind { entry: ; PPC64-LABEL: test_copysign: -; PPC64-DAG: stxsdx 1, 0, [[ADDR_REG:[0-9]+]] +; PPC64-DAG: stfdx 1, 0, [[ADDR_REG:[0-9]+]] ; PPC64-DAG: addi [[ADDR_REG]], 1, [[OFFSET:-?[0-9]+]] ; PPC64-DAG: li [[HI_TMP:[0-9]+]], 16399 ; PPC64-DAG: sldi [[CST_HI:[0-9]+]], [[HI_TMP]], 48 Index: llvm/trunk/test/CodeGen/PowerPC/i64-to-float.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/i64-to-float.ll +++ llvm/trunk/test/CodeGen/PowerPC/i64-to-float.ll @@ -20,7 +20,7 @@ ; CHECK-VSX: @foo ; CHECK-VSX: std 3, -; CHECK-VSX: lxsdx [[REG:[0-9]+]], +; CHECK-VSX: lfdx [[REG:[0-9]+]], ; CHECK-VSX: fcfids 1, [[REG]] ; CHECK-VSX: blr @@ -44,7 +44,7 @@ ; CHECK-VSX: @goo ; CHECK-VSX: std 3, -; CHECK-VSX: lxsdx [[REG:[0-9]+]], +; CHECK-VSX: lfdx [[REG:[0-9]+]], ; CHECK-VSX: xscvsxddp 1, [[REG]] ; CHECK-VSX: blr @@ -68,7 +68,7 @@ ; CHECK-VSX: @foou ; CHECK-VSX: std 3, -; CHECK-VSX: lxsdx [[REG:[0-9]+]], +; CHECK-VSX: lfdx [[REG:[0-9]+]], ; CHECK-VSX: fcfidus 1, [[REG]] ; CHECK-VSX: blr @@ -92,7 +92,7 @@ ; CHECK-VSX: @goou ; CHECK-VSX: std 3, -; CHECK-VSX: lxsdx [[REG:[0-9]+]], +; CHECK-VSX: lfdx [[REG:[0-9]+]], ; CHECK-VSX: xscvuxddp 1, [[REG]] ; CHECK-VSX: blr Index: llvm/trunk/test/CodeGen/PowerPC/mcm-12.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/mcm-12.ll +++ llvm/trunk/test/CodeGen/PowerPC/mcm-12.ll @@ -27,7 +27,7 @@ ; CHECK-VSX-LABEL: test_double_const: ; CHECK-VSX: addis [[REG1:[0-9]+]], 2, [[VAR]]@toc@ha ; CHECK-VSX: addi [[REG1]], {{[0-9]+}}, [[VAR]]@toc@l -; CHECK-VSX: lxsdx {{[0-9]+}}, 0, [[REG1]] +; CHECK-VSX: lfdx {{[0-9]+}}, 0, [[REG1]] ; CHECK-P9: [[VAR:[a-z0-9A-Z_.]+]]: ; CHECK-P9: .quad 4562098671269285104 Index: llvm/trunk/test/CodeGen/PowerPC/mcm-4.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/mcm-4.ll +++ llvm/trunk/test/CodeGen/PowerPC/mcm-4.ll @@ -34,7 +34,7 @@ ; MEDIUM-VSX-LABEL: test_double_const: ; MEDIUM-VSX: addis [[REG1:[0-9]+]], 2, [[VAR]]@toc@ha ; MEDIUM-VSX: addi [[REG2:[0-9]+]], [[REG1]], [[VAR]]@toc@l -; MEDIUM-VSX: lxsdx {{[0-9]+}}, 0, [[REG2]] +; MEDIUM-VSX: lfdx {{[0-9]+}}, 0, [[REG2]] ; LARGE: [[VAR:[a-z0-9A-Z_.]+]]: ; LARGE: .quad 4562098671269285104 @@ -48,7 +48,7 @@ ; LARGE-VSX-LABEL: test_double_const: ; LARGE-VSX: addis [[REG1:[0-9]+]], 2, [[VAR2:[a-z0-9A-Z_.]+]]@toc@ha ; LARGE-VSX: ld [[REG2:[0-9]+]], [[VAR2]]@toc@l([[REG1]]) -; LARGE-VSX: lxsdx {{[0-9]+}}, 0, [[REG2]] +; LARGE-VSX: lfdx {{[0-9]+}}, 0, [[REG2]] ; MEDIUM-P9: [[VAR:[a-z0-9A-Z_.]+]]: ; MEDIUM-P9: .quad 4562098671269285104 Index: llvm/trunk/test/CodeGen/PowerPC/ppc64-align-long-double.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/ppc64-align-long-double.ll +++ llvm/trunk/test/CodeGen/PowerPC/ppc64-align-long-double.ll @@ -46,8 +46,8 @@ ; CHECK-VSX-DAG: std 6, -8(1) ; CHECK-VSX-DAG: addi [[REG1:[0-9]+]], 1, -16 ; CHECK-VSX-DAG: addi 3, 1, -8 -; CHECK-VSX: lxsdx 1, 0, [[REG1]] -; CHECK-VSX: lxsdx 2, 0, 3 +; CHECK-VSX: lfdx 1, 0, [[REG1]] +; CHECK-VSX: lfdx 2, 0, 3 ; FIXME-VSX: addi 4, 1, 48 ; FIXME-VSX: lxsdx 1, 4, 3 Index: llvm/trunk/test/CodeGen/PowerPC/pr30715.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/pr30715.ll +++ llvm/trunk/test/CodeGen/PowerPC/pr30715.ll @@ -67,7 +67,7 @@ %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %exitcond = icmp eq i64 %indvars.iv.next, %wide.trip.count br i1 %exitcond, label %for.cond.cleanup.loopexit, label %for.body -; CHECK: stxsdx +; CHECK: stfdx ; CHECK: lxvd2x } Index: llvm/trunk/test/CodeGen/PowerPC/select_const.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/select_const.ll +++ llvm/trunk/test/CodeGen/PowerPC/select_const.ll @@ -652,7 +652,7 @@ ; ISEL-NEXT: addi 4, 4, .LCPI34_0@toc@l ; ISEL-NEXT: addi 3, 3, .LCPI34_1@toc@l ; ISEL-NEXT: isel 3, 3, 4, 1 -; ISEL-NEXT: lxsdx 1, 0, 3 +; ISEL-NEXT: lfdx 1, 0, 3 ; ISEL-NEXT: blr ; ; NO_ISEL-LABEL: sel_constants_fadd_constant: @@ -667,7 +667,7 @@ ; NO_ISEL-NEXT: ori 3, 4, 0 ; NO_ISEL-NEXT: b .LBB34_2 ; NO_ISEL-NEXT: .LBB34_2: -; NO_ISEL-NEXT: lxsdx 1, 0, 3 +; NO_ISEL-NEXT: lfdx 1, 0, 3 ; NO_ISEL-NEXT: blr %sel = select i1 %cond, double -4.0, double 23.3 %bo = fadd double %sel, 5.1 @@ -683,7 +683,7 @@ ; ISEL-NEXT: addi 4, 4, .LCPI35_0@toc@l ; ISEL-NEXT: addi 3, 3, .LCPI35_1@toc@l ; ISEL-NEXT: isel 3, 3, 4, 1 -; ISEL-NEXT: lxsdx 1, 0, 3 +; ISEL-NEXT: lfdx 1, 0, 3 ; ISEL-NEXT: blr ; ; NO_ISEL-LABEL: sel_constants_fsub_constant: @@ -698,7 +698,7 @@ ; NO_ISEL-NEXT: ori 3, 4, 0 ; NO_ISEL-NEXT: b .LBB35_2 ; NO_ISEL-NEXT: .LBB35_2: -; NO_ISEL-NEXT: lxsdx 1, 0, 3 +; NO_ISEL-NEXT: lfdx 1, 0, 3 ; NO_ISEL-NEXT: blr %sel = select i1 %cond, double -4.0, double 23.3 %bo = fsub double %sel, 5.1 @@ -714,7 +714,7 @@ ; ISEL-NEXT: addi 4, 4, .LCPI36_0@toc@l ; ISEL-NEXT: addi 3, 3, .LCPI36_1@toc@l ; ISEL-NEXT: isel 3, 3, 4, 1 -; ISEL-NEXT: lxsdx 1, 0, 3 +; ISEL-NEXT: lfdx 1, 0, 3 ; ISEL-NEXT: blr ; ; NO_ISEL-LABEL: sel_constants_fmul_constant: @@ -729,7 +729,7 @@ ; NO_ISEL-NEXT: ori 3, 4, 0 ; NO_ISEL-NEXT: b .LBB36_2 ; NO_ISEL-NEXT: .LBB36_2: -; NO_ISEL-NEXT: lxsdx 1, 0, 3 +; NO_ISEL-NEXT: lfdx 1, 0, 3 ; NO_ISEL-NEXT: blr %sel = select i1 %cond, double -4.0, double 23.3 %bo = fmul double %sel, 5.1 @@ -745,7 +745,7 @@ ; ISEL-NEXT: addi 4, 4, .LCPI37_0@toc@l ; ISEL-NEXT: addi 3, 3, .LCPI37_1@toc@l ; ISEL-NEXT: isel 3, 3, 4, 1 -; ISEL-NEXT: lxsdx 1, 0, 3 +; ISEL-NEXT: lfdx 1, 0, 3 ; ISEL-NEXT: blr ; ; NO_ISEL-LABEL: sel_constants_fdiv_constant: @@ -760,7 +760,7 @@ ; NO_ISEL-NEXT: ori 3, 4, 0 ; NO_ISEL-NEXT: b .LBB37_2 ; NO_ISEL-NEXT: .LBB37_2: -; NO_ISEL-NEXT: lxsdx 1, 0, 3 +; NO_ISEL-NEXT: lfdx 1, 0, 3 ; NO_ISEL-NEXT: blr %sel = select i1 %cond, double -4.0, double 23.3 %bo = fdiv double %sel, 5.1 @@ -775,7 +775,7 @@ ; ALL-NEXT: # %bb.1: ; ALL-NEXT: addis 3, 2, .LCPI38_0@toc@ha ; ALL-NEXT: addi 3, 3, .LCPI38_0@toc@l -; ALL-NEXT: lxsdx 1, 0, 3 +; ALL-NEXT: lfdx 1, 0, 3 ; ALL-NEXT: blr ; ALL-NEXT: .LBB38_2: ; ALL-NEXT: addis 3, 2, .LCPI38_1@toc@ha Index: llvm/trunk/test/CodeGen/PowerPC/store_fptoi.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/store_fptoi.ll +++ llvm/trunk/test/CodeGen/PowerPC/store_fptoi.ll @@ -22,7 +22,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2sdw -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: xscvdpsxds [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: stxsdx [[CONV]], 0, 4 ; CHECK-PWR8-NEXT: blr @@ -43,7 +43,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2sw -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: xscvdpsxws [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: stfiwx [[CONV]], 0, 4 ; CHECK-PWR8-NEXT: blr @@ -64,7 +64,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2shw -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: xscvdpsxws [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: mfvsrwz [[REG:[0-9]+]], [[CONV]] ; CHECK-PWR8-NEXT: sth [[REG]], 0(4) @@ -86,7 +86,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2sb -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: xscvdpsxws [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: mfvsrwz [[REG:[0-9]+]], [[CONV]] ; CHECK-PWR8-NEXT: stb [[REG]], 0(4) @@ -198,7 +198,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2sdw_x -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8: sldi [[REG:[0-9]+]], 5, 3 ; CHECK-PWR8-NEXT: xscvdpsxds [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: stxsdx [[CONV]], 4, [[REG]] @@ -224,7 +224,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2sw_x -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: sldi [[REG:[0-9]+]], 5, 2 ; CHECK-PWR8-NEXT: xscvdpsxws [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: stfiwx [[CONV]], 4, [[REG]] @@ -250,7 +250,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2shw_x -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: sldi [[REG:[0-9]+]], 5, 1 ; CHECK-PWR8-NEXT: xscvdpsxws [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: mfvsrwz [[REG:[0-9]+]], [[CONV]] @@ -276,7 +276,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2sb_x -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: xscvdpsxws [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: mfvsrwz [[REG:[0-9]+]], [[CONV]] ; CHECK-PWR8-NEXT: stbx [[REG]], 4, 5 @@ -406,7 +406,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2udw -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: xscvdpuxds [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: stxsdx [[CONV]], 0, 4 ; CHECK-PWR8-NEXT: blr @@ -427,7 +427,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2uw -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: xscvdpuxws [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: stfiwx [[CONV]], 0, 4 ; CHECK-PWR8-NEXT: blr @@ -448,7 +448,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2uhw -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: xscvdpsxws [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: mfvsrwz [[REG:[0-9]+]], [[CONV]] ; CHECK-PWR8-NEXT: sth [[REG]], 0(4) @@ -470,7 +470,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2ub -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: xscvdpsxws [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: mfvsrwz [[REG:[0-9]+]], [[CONV]] ; CHECK-PWR8-NEXT: stb [[REG]], 0(4) @@ -582,7 +582,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2udw_x -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8: sldi [[REG:[0-9]+]], 5, 3 ; CHECK-PWR8-NEXT: xscvdpuxds [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: stxsdx [[CONV]], 4, [[REG]] @@ -608,7 +608,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2uw_x -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: sldi [[REG:[0-9]+]], 5, 2 ; CHECK-PWR8-NEXT: xscvdpuxws [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: stfiwx [[CONV]], 4, [[REG]] @@ -634,7 +634,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2uhw_x -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: sldi [[REG:[0-9]+]], 5, 1 ; CHECK-PWR8-NEXT: xscvdpsxws [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: mfvsrwz [[REG:[0-9]+]], [[CONV]] @@ -660,7 +660,7 @@ ; CHECK-NEXT: blr ; CHECK-PWR8-LABEL: dpConv2ub_x -; CHECK-PWR8: lxsdx [[LD:[0-9]+]], 0, 3 +; CHECK-PWR8: lfdx [[LD:[0-9]+]], 0, 3 ; CHECK-PWR8-NEXT: xscvdpsxws [[CONV:[0-9]+]], [[LD]] ; CHECK-PWR8-NEXT: mfvsrwz [[REG:[0-9]+]], [[CONV]] ; CHECK-PWR8-NEXT: stbx [[REG]], 4, 5 Index: llvm/trunk/test/CodeGen/PowerPC/swaps-le-6.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/swaps-le-6.ll +++ llvm/trunk/test/CodeGen/PowerPC/swaps-le-6.ll @@ -27,7 +27,7 @@ ; CHECK-LABEL: @bar0 ; CHECK-DAG: lxvd2x [[REG1:[0-9]+]] -; CHECK-DAG: lxsdx [[REG2:[0-9]+]] +; CHECK-DAG: lfdx [[REG2:[0-9]+]] ; CHECK: xxspltd [[REG4:[0-9]+]], [[REG2]], 0 ; CHECK: xxpermdi [[REG5:[0-9]+]], [[REG4]], [[REG1]], 1 ; CHECK: stxvd2x [[REG5]] @@ -50,7 +50,7 @@ ; CHECK-LABEL: @bar1 ; CHECK-DAG: lxvd2x [[REG1:[0-9]+]] -; CHECK-DAG: lxsdx [[REG2:[0-9]+]] +; CHECK-DAG: lfdx [[REG2:[0-9]+]] ; CHECK: xxspltd [[REG4:[0-9]+]], [[REG2]], 0 ; CHECK: xxmrghd [[REG5:[0-9]+]], [[REG1]], [[REG4]] ; CHECK: stxvd2x [[REG5]] Index: llvm/trunk/test/CodeGen/PowerPC/unaligned.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/unaligned.ll +++ llvm/trunk/test/CodeGen/PowerPC/unaligned.ll @@ -74,8 +74,8 @@ ; CHECK: stfd ; CHECK-VSX: @foo5 -; CHECK-VSX: lxsdx -; CHECK-VSX: stxsdx +; CHECK-VSX: lfdx +; CHECK-VSX: stfdx } define void @foo6(<4 x float>* %p, <4 x float>* %r) nounwind { Index: llvm/trunk/test/CodeGen/PowerPC/vsx_insert_extract_le.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/vsx_insert_extract_le.ll +++ llvm/trunk/test/CodeGen/PowerPC/vsx_insert_extract_le.ll @@ -16,7 +16,7 @@ ; CHECK-LABEL: testi0 ; CHECK: lxvd2x 0, 0, 3 -; CHECK: lxsdx 1, 0, 4 +; CHECK: lfdx 1, 0, 4 ; CHECK-DAG: xxspltd 1, 1, 0 ; CHECK-DAG: xxswapd 0, 0 ; CHECK: xxpermdi 34, 0, 1, 1 @@ -36,7 +36,7 @@ ; CHECK-LABEL: testi1 ; CHECK: lxvd2x 0, 0, 3 -; CHECK: lxsdx 1, 0, 4 +; CHECK: lfdx 1, 0, 4 ; CHECK-DAG: xxspltd 1, 1, 0 ; CHECK-DAG: xxswapd 0, 0 ; CHECK: xxmrgld 34, 1, 0 Index: llvm/trunk/test/CodeGen/PowerPC/vsx_scalar_ld_st.ll =================================================================== --- llvm/trunk/test/CodeGen/PowerPC/vsx_scalar_ld_st.ll +++ llvm/trunk/test/CodeGen/PowerPC/vsx_scalar_ld_st.ll @@ -123,7 +123,7 @@ store volatile float %conv, float* %ff, align 4 ret void ; CHECK-LABEL: @dblToFloat -; CHECK: lxsdx [[REGLD5:[0-9]+]], +; CHECK: lfdx [[REGLD5:[0-9]+]], ; CHECK: stfsx [[REGLD5]], ; CHECK-P9-LABEL: @dblToFloat ; CHECK-P9: lfd [[REGLD5:[0-9]+]], @@ -140,7 +140,7 @@ ret void ; CHECK-LABEL: @floatToDbl ; CHECK: lfsx [[REGLD5:[0-9]+]], -; CHECK: stxsdx [[REGLD5]], +; CHECK: stfdx [[REGLD5]], ; CHECK-P9-LABEL: @floatToDbl ; CHECK-P9: lfs [[REGLD5:[0-9]+]], ; CHECK-P9: stfd [[REGLD5]],