mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
Unbreak WebAssembly build
Summary: D11021 and D11045 didn't update the WebAssembly target's code. It's still experimental so all tests passed. Reviewers: sunfish, joker.eph, echristo Subscribers: llvm-commits, jfb Differential Revision: http://reviews.llvm.org/D11084 llvm-svn: 241859
This commit is contained in:
parent
3fd54f5cb7
commit
d8a6dbbffc
@ -17,7 +17,4 @@ using namespace llvm;
|
|||||||
|
|
||||||
#define DEBUG_TYPE "wasm-selectiondag-info"
|
#define DEBUG_TYPE "wasm-selectiondag-info"
|
||||||
|
|
||||||
WebAssemblySelectionDAGInfo::WebAssemblySelectionDAGInfo(const DataLayout *DL)
|
|
||||||
: TargetSelectionDAGInfo(DL) {}
|
|
||||||
|
|
||||||
WebAssemblySelectionDAGInfo::~WebAssemblySelectionDAGInfo() {}
|
WebAssemblySelectionDAGInfo::~WebAssemblySelectionDAGInfo() {}
|
||||||
|
@ -22,7 +22,6 @@ namespace llvm {
|
|||||||
|
|
||||||
class WebAssemblySelectionDAGInfo final : public TargetSelectionDAGInfo {
|
class WebAssemblySelectionDAGInfo final : public TargetSelectionDAGInfo {
|
||||||
public:
|
public:
|
||||||
explicit WebAssemblySelectionDAGInfo(const DataLayout *DL);
|
|
||||||
~WebAssemblySelectionDAGInfo() override;
|
~WebAssemblySelectionDAGInfo() override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -42,7 +42,7 @@ WebAssemblySubtarget::WebAssemblySubtarget(const Triple &TT,
|
|||||||
const TargetMachine &TM)
|
const TargetMachine &TM)
|
||||||
: WebAssemblyGenSubtargetInfo(TT, CPU, FS), HasSIMD128(false),
|
: WebAssemblyGenSubtargetInfo(TT, CPU, FS), HasSIMD128(false),
|
||||||
CPUString(CPU), TargetTriple(TT), FrameLowering(),
|
CPUString(CPU), TargetTriple(TT), FrameLowering(),
|
||||||
InstrInfo(initializeSubtargetDependencies(FS)),
|
InstrInfo(initializeSubtargetDependencies(FS)), TSInfo(),
|
||||||
TSInfo(TM.getDataLayout()), TLInfo(TM, *this) {}
|
TLInfo(TM, *this) {}
|
||||||
|
|
||||||
bool WebAssemblySubtarget::enableMachineScheduler() const { return true; }
|
bool WebAssemblySubtarget::enableMachineScheduler() const { return true; }
|
||||||
|
@ -31,7 +31,6 @@ class WebAssemblyTTIImpl final : public BasicTTIImplBase<WebAssemblyTTIImpl> {
|
|||||||
typedef TargetTransformInfo TTI;
|
typedef TargetTransformInfo TTI;
|
||||||
friend BaseT;
|
friend BaseT;
|
||||||
|
|
||||||
const WebAssemblyTargetMachine *TM;
|
|
||||||
const WebAssemblySubtarget *ST;
|
const WebAssemblySubtarget *ST;
|
||||||
const WebAssemblyTargetLowering *TLI;
|
const WebAssemblyTargetLowering *TLI;
|
||||||
|
|
||||||
@ -40,30 +39,15 @@ class WebAssemblyTTIImpl final : public BasicTTIImplBase<WebAssemblyTTIImpl> {
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
WebAssemblyTTIImpl(const WebAssemblyTargetMachine *TM, Function &F)
|
WebAssemblyTTIImpl(const WebAssemblyTargetMachine *TM, Function &F)
|
||||||
: BaseT(TM), TM(TM), ST(TM->getSubtargetImpl(F)),
|
: BaseT(TM, F.getParent()->getDataLayout()), ST(TM->getSubtargetImpl(F)),
|
||||||
TLI(ST->getTargetLowering()) {}
|
TLI(ST->getTargetLowering()) {}
|
||||||
|
|
||||||
// Provide value semantics. MSVC requires that we spell all of these out.
|
// Provide value semantics. MSVC requires that we spell all of these out.
|
||||||
WebAssemblyTTIImpl(const WebAssemblyTTIImpl &Arg)
|
WebAssemblyTTIImpl(const WebAssemblyTTIImpl &Arg)
|
||||||
: BaseT(static_cast<const BaseT &>(Arg)), TM(Arg.TM), ST(Arg.ST),
|
: BaseT(static_cast<const BaseT &>(Arg)), ST(Arg.ST), TLI(Arg.TLI) {}
|
||||||
TLI(Arg.TLI) {}
|
|
||||||
WebAssemblyTTIImpl(WebAssemblyTTIImpl &&Arg)
|
WebAssemblyTTIImpl(WebAssemblyTTIImpl &&Arg)
|
||||||
: BaseT(std::move(static_cast<BaseT &>(Arg))), TM(std::move(Arg.TM)),
|
: BaseT(std::move(static_cast<BaseT &>(Arg))), ST(std::move(Arg.ST)),
|
||||||
ST(std::move(Arg.ST)), TLI(std::move(Arg.TLI)) {}
|
TLI(std::move(Arg.TLI)) {}
|
||||||
WebAssemblyTTIImpl &operator=(const WebAssemblyTTIImpl &RHS) {
|
|
||||||
BaseT::operator=(static_cast<const BaseT &>(RHS));
|
|
||||||
TM = RHS.TM;
|
|
||||||
ST = RHS.ST;
|
|
||||||
TLI = RHS.TLI;
|
|
||||||
return *this;
|
|
||||||
}
|
|
||||||
WebAssemblyTTIImpl &operator=(WebAssemblyTTIImpl &&RHS) {
|
|
||||||
BaseT::operator=(std::move(static_cast<BaseT &>(RHS)));
|
|
||||||
TM = std::move(RHS.TM);
|
|
||||||
ST = std::move(RHS.ST);
|
|
||||||
TLI = std::move(RHS.TLI);
|
|
||||||
return *this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// \name Scalar TTI Implementations
|
/// \name Scalar TTI Implementations
|
||||||
/// @{
|
/// @{
|
||||||
|
Loading…
Reference in New Issue
Block a user