mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-08 03:28:20 +02:00
var-return support for const eval methods
This commit is contained in:
parent
585e2575e8
commit
706fe9e04b
15 changed files with 292 additions and 60 deletions
|
@ -518,6 +518,7 @@ public:
|
|||
String mName;
|
||||
#endif
|
||||
BfIRLinkageType mLinkageType;
|
||||
bool mIsVarReturn;
|
||||
bool mAlwaysInline;
|
||||
bool mNoUnwind;
|
||||
bool mUWTable;
|
||||
|
@ -539,6 +540,7 @@ public:
|
|||
mLinkageType = BfIRLinkageType_External;
|
||||
mModule = NULL;
|
||||
mDbgFunction = NULL;
|
||||
mIsVarReturn = false;
|
||||
mAlwaysInline = false;
|
||||
mDidInlinePass = false;
|
||||
mNoUnwind = false;
|
||||
|
@ -1265,6 +1267,15 @@ public:
|
|||
}
|
||||
};
|
||||
|
||||
class BeSetRetInst : public BeRetInst
|
||||
{
|
||||
public:
|
||||
BE_VALUE_TYPE(BeSetRetInst, BeRetInst);
|
||||
|
||||
public:
|
||||
int32 mReturnTypeId;
|
||||
};
|
||||
|
||||
class BeCallInst : public BeInst
|
||||
{
|
||||
public:
|
||||
|
@ -2311,6 +2322,7 @@ public:
|
|||
BeCondBrInst* CreateCondBr(BeValue* cond, BeBlock* trueBlock, BeBlock* falseBlock);
|
||||
BeRetInst* CreateRetVoid();
|
||||
BeRetInst* CreateRet(BeValue* value);
|
||||
BeSetRetInst* CreateSetRet(BeValue* value, int returnTypeId);
|
||||
BeCallInst* CreateCall(BeValue* func, const SizedArrayImpl<BeValue*>& args);
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue