mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-01-11 18:33:14 +01:00
Apply naked changes of [920] to dmd2/
This commit is contained in:
@@ -619,6 +619,7 @@ VarDeclaration::VarDeclaration(Loc loc, Type *type, Identifier *id, Initializer
|
||||
// LDC
|
||||
anonDecl = NULL;
|
||||
offset2 = 0;
|
||||
nakedUse = false;
|
||||
}
|
||||
|
||||
Dsymbol *VarDeclaration::syntaxCopy(Dsymbol *s)
|
||||
|
||||
@@ -280,6 +280,7 @@ struct VarDeclaration : Declaration
|
||||
// LDC
|
||||
AnonDeclaration* anonDecl;
|
||||
unsigned offset2;
|
||||
bool nakedUse;
|
||||
};
|
||||
|
||||
/**************************************************************/
|
||||
|
||||
@@ -912,7 +912,7 @@ int main(int argc, char *argv[])
|
||||
global.params.cpu = ARCHthumb;
|
||||
}
|
||||
else {
|
||||
assert(0 && "Invalid arch");
|
||||
error("invalid cpu architecture specified: %s", global.params.llvmArch);
|
||||
}
|
||||
|
||||
assert(global.params.cpu != ARCHinvalid);
|
||||
|
||||
@@ -162,6 +162,9 @@ struct Statement : Object
|
||||
// Back end
|
||||
virtual void toIR(IRState *irs);
|
||||
|
||||
// LDC
|
||||
virtual void toNakedIR(IRState *irs);
|
||||
|
||||
// Avoid dynamic_cast
|
||||
virtual DeclarationStatement *isDeclarationStatement() { return NULL; }
|
||||
virtual CompoundStatement *isCompoundStatement() { return NULL; }
|
||||
@@ -187,6 +190,9 @@ struct ExpStatement : Statement
|
||||
Statement *inlineScan(InlineScanState *iss);
|
||||
|
||||
void toIR(IRState *irs);
|
||||
|
||||
// LDC
|
||||
virtual void toNakedIR(IRState *irs);
|
||||
};
|
||||
|
||||
struct CompileStatement : Statement
|
||||
@@ -237,6 +243,9 @@ struct CompoundStatement : Statement
|
||||
|
||||
virtual void toIR(IRState *irs);
|
||||
|
||||
// LDC
|
||||
virtual void toNakedIR(IRState *irs);
|
||||
|
||||
virtual CompoundStatement *isCompoundStatement() { return this; }
|
||||
};
|
||||
|
||||
@@ -879,6 +888,7 @@ struct LabelStatement : Statement
|
||||
|
||||
// LDC
|
||||
bool asmLabel; // for labels inside inline assembler
|
||||
virtual void toNakedIR(IRState *irs);
|
||||
};
|
||||
|
||||
struct LabelDsymbol : Dsymbol
|
||||
@@ -912,6 +922,8 @@ struct AsmStatement : Statement
|
||||
// LDC
|
||||
// non-zero if this is a branch, contains the target labels identifier
|
||||
Identifier* isBranchToLabel;
|
||||
|
||||
virtual void toNakedIR(IRState *irs);
|
||||
};
|
||||
|
||||
struct AsmBlockStatement : CompoundStatement
|
||||
@@ -928,6 +940,7 @@ struct AsmBlockStatement : CompoundStatement
|
||||
AsmBlockStatement *isAsmBlockStatement() { return this; }
|
||||
|
||||
void toIR(IRState *irs);
|
||||
virtual void toNakedIR(IRState *irs);
|
||||
};
|
||||
|
||||
#endif /* DMD_STATEMENT_H */
|
||||
|
||||
Reference in New Issue
Block a user