mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-08-06 06:20:04 +02:00
[svn r323] Branching out of inline asm works.
Renamed emit_finallyblocks to DtoFinallyBlocks and moved to llvmhelpers. Added enclosingtryfinally to AsmBlockStatement, so branches out of asm blocks respect finallys. Refactored some GotoStatement code into DtoGoto.
This commit is contained in:
@@ -794,14 +794,17 @@ struct AsmStatement : Statement
|
||||
|
||||
// LLVMDC
|
||||
// non-zero if this is a branch, contains the target
|
||||
Identifier* isBranchToLabel;
|
||||
LabelDsymbol* isBranchToLabel;
|
||||
};
|
||||
|
||||
struct AsmBlockStatement : CompoundStatement
|
||||
{
|
||||
TryFinallyStatement *enclosingtryfinally;
|
||||
|
||||
AsmBlockStatement(Loc loc, Statements *s);
|
||||
Statements *flatten(Scope *sc);
|
||||
Statement *syntaxCopy();
|
||||
Statement *semantic(Scope *sc);
|
||||
|
||||
CompoundStatement *isCompoundStatement() { return NULL; }
|
||||
AsmBlockStatement *isAsmBlockStatement() { return this; }
|
||||
|
||||
Reference in New Issue
Block a user