diff options
Diffstat (limited to 'llvm/lib/Target/PowerPC')
| -rw-r--r-- | llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp | 2 | ||||
| -rw-r--r-- | llvm/lib/Target/PowerPC/PPCInstrFuture.td | 8 | ||||
| -rw-r--r-- | llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp | 2 | ||||
| -rw-r--r-- | llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h | 2 | 
4 files changed, 11 insertions, 3 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp b/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp index bcb3f50..780e124 100644 --- a/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp +++ b/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp @@ -2702,7 +2702,7 @@ static bool isSpecialLLVMGlobalArrayToSkip(const GlobalVariable *GV) {  static bool isSpecialLLVMGlobalArrayForStaticInit(const GlobalVariable *GV) {    return StringSwitch<bool>(GV->getName()) -      .Cases("llvm.global_ctors", "llvm.global_dtors", true) +      .Cases({"llvm.global_ctors", "llvm.global_dtors"}, true)        .Default(false);  } diff --git a/llvm/lib/Target/PowerPC/PPCInstrFuture.td b/llvm/lib/Target/PowerPC/PPCInstrFuture.td index da3efdc..0c2e44e 100644 --- a/llvm/lib/Target/PowerPC/PPCInstrFuture.td +++ b/llvm/lib/Target/PowerPC/PPCInstrFuture.td @@ -360,6 +360,10 @@ let Predicates = [HasVSX, IsISAFuture] in {      def LXVPRLL : XForm_XTp5_RAB5<31, 621, (outs vsrprc:$XTp),                                    (ins (memr $RA):$addr, g8rc:$RB),                                    "lxvprll $XTp, $addr, $RB", IIC_LdStLFD, []>; +    def LXVPB32X +        : XForm_XTp5_RAB5<31, 877, (outs vsrprc:$XTp), +                          (ins (memr $RA):$addr, g8rc:$RB), +                          "lxvpb32x $XTp, $addr, $RB", IIC_LdStLFD, []>;    }    let mayStore = 1 in { @@ -376,6 +380,10 @@ let Predicates = [HasVSX, IsISAFuture] in {          : XForm_XTp5_RAB5<31, 749, (outs),                            (ins vsrprc:$XTp, (memr $RA):$addr, g8rc:$RB),                            "stxvprll $XTp, $addr, $RB", IIC_LdStLFD, []>; +    def STXVPB32X +        : XForm_XTp5_RAB5<31, 1005, (outs), +                          (ins vsrprc:$XTp, (memr $RA):$addr, g8rc:$RB), +                          "stxvpb32x $XTp, $addr, $RB", IIC_LdStLFD, []>;    }    def VUPKHSNTOB : VXForm_VRTB5<387, 0, (outs vrrc:$VRT), (ins vrrc:$VRB), diff --git a/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp b/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp index 2fba090..b04e887 100644 --- a/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp +++ b/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp @@ -912,7 +912,7 @@ bool PPCTTIImpl::areInlineCompatible(const Function *Caller,  bool PPCTTIImpl::areTypesABICompatible(const Function *Caller,                                         const Function *Callee, -                                       const ArrayRef<Type *> &Types) const { +                                       ArrayRef<Type *> Types) const {    // We need to ensure that argument promotion does not    // attempt to promote pointers to MMA types (__vector_pair diff --git a/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h b/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h index 475472a..8d7f255 100644 --- a/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h +++ b/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h @@ -147,7 +147,7 @@ public:    bool areInlineCompatible(const Function *Caller,                             const Function *Callee) const override;    bool areTypesABICompatible(const Function *Caller, const Function *Callee, -                             const ArrayRef<Type *> &Types) const override; +                             ArrayRef<Type *> Types) const override;    bool supportsTailCallFor(const CallBase *CB) const override;  private:  | 
