| Index: src/IceTargetLoweringX8632.h
|
| diff --git a/src/IceTargetLoweringX8632.h b/src/IceTargetLoweringX8632.h
|
| index 39ba6083897a41f95076c35c8f62255f60ad4a48..5b9e6d06150a9fbc08fc7213abea701115b49611 100644
|
| --- a/src/IceTargetLoweringX8632.h
|
| +++ b/src/IceTargetLoweringX8632.h
|
| @@ -34,6 +34,7 @@ class TargetX8632 final : public ::Ice::X8632::TargetX86Base<X8632::Traits> {
|
| TargetX8632(const TargetX8632 &) = delete;
|
| TargetX8632 &operator=(const TargetX8632 &) = delete;
|
|
|
| + void emitSandboxedReturn() override;
|
| void emitJumpTable(const Cfg *Func,
|
| const InstJumpTable *JumpTable) const override;
|
|
|
| @@ -55,13 +56,15 @@ protected:
|
| llvm::report_fatal_error("sandbox mem reference for x86-32.");
|
| }
|
| void _sub_sp(Operand *Adjustment);
|
| + void _link_bp();
|
| + void _unlink_bp();
|
| + void _push_reg(Variable *Reg);
|
|
|
| void initSandbox() {}
|
| void lowerIndirectJump(Variable *JumpTarget);
|
| + void emitGetIP(CfgNode *Node);
|
| Inst *emitCallToTarget(Operand *CallTarget, Variable *ReturnReg) override;
|
| Variable *moveReturnValueToRegister(Operand *Value, Type ReturnType) override;
|
| - void addProlog(CfgNode *Node) override;
|
| - void addEpilog(CfgNode *Node) override;
|
|
|
| private:
|
| ENABLE_MAKE_UNIQUE;
|
|
|