Mercurial > projects > ldc
comparison ir/irfunction.h @ 584:c7d7e2282ba3
Make sure functions containing inline asm are never inlined to avoid
duplicated labels.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Mon, 08 Sep 2008 20:38:55 +0200 |
parents | a34078905d01 |
children | eef8ac26c66c |
comparison
equal
deleted
inserted
replaced
583:12bda38ea366 | 584:c7d7e2282ba3 |
---|---|
50 // landing pads for try statements | 50 // landing pads for try statements |
51 IRLandingPad landingPad; | 51 IRLandingPad landingPad; |
52 | 52 |
53 IrFunction(FuncDeclaration* fd); | 53 IrFunction(FuncDeclaration* fd); |
54 | 54 |
55 // annotations | |
56 void setNeverInline(); | |
57 void setAlwaysInline(); | |
58 | |
55 private: | 59 private: |
56 // prefix for labels and gotos | 60 // prefix for labels and gotos |
57 // used for allowing labels to be emitted twice | 61 // used for allowing labels to be emitted twice |
58 std::vector<std::string> labelScopes; | 62 std::vector<std::string> labelScopes; |
59 | 63 |