Mercurial > projects > ldc
comparison gen/asmstmt.cpp @ 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 | 2fe2d4518618 |
children | 26fce59fe80a |
comparison
equal
deleted
inserted
replaced
583:12bda38ea366 | 584:c7d7e2282ba3 |
---|---|
448 { | 448 { |
449 Logger::println("AsmBlockStatement::toIR(): %s", loc.toChars()); | 449 Logger::println("AsmBlockStatement::toIR(): %s", loc.toChars()); |
450 LOG_SCOPE; | 450 LOG_SCOPE; |
451 Logger::println("BEGIN ASM"); | 451 Logger::println("BEGIN ASM"); |
452 | 452 |
453 // disable inlining | |
454 gIR->func()->setNeverInline(); | |
455 | |
453 // create asm block structure | 456 // create asm block structure |
454 assert(!p->asmBlock); | 457 assert(!p->asmBlock); |
455 IRAsmBlock* asmblock = new IRAsmBlock; | 458 IRAsmBlock* asmblock = new IRAsmBlock; |
456 assert(asmblock); | 459 assert(asmblock); |
457 p->asmBlock = asmblock; | 460 p->asmBlock = asmblock; |