Mercurial > projects > ldc
comparison gen/tollvm.cpp @ 1353:45aca7e7cc88
Remove struct padding when passing or returning in registers on x86-64 (extern(D) only)
author | Frits van Bommel <fvbommel wxs.nl> |
---|---|
date | Thu, 14 May 2009 20:36:55 +0200 |
parents | 3647bef175d7 |
children | 46f6365a50d7 |
comparison
equal
deleted
inserted
replaced
1352:b9f5f7c5db73 | 1353:45aca7e7cc88 |
---|---|
628 return llvm::ConstantExpr::getBitCast(v, t); | 628 return llvm::ConstantExpr::getBitCast(v, t); |
629 } | 629 } |
630 | 630 |
631 ////////////////////////////////////////////////////////////////////////////////////////// | 631 ////////////////////////////////////////////////////////////////////////////////////////// |
632 | 632 |
633 LLValue* DtoInsertValue(LLValue* aggr, LLValue* v, unsigned idx) | |
634 { | |
635 return gIR->ir->CreateInsertValue(aggr, v, idx); | |
636 } | |
637 | |
638 LLValue* DtoExtractValue(LLValue* aggr, unsigned idx) | |
639 { | |
640 return gIR->ir->CreateExtractValue(aggr, idx); | |
641 } | |
642 | |
643 ////////////////////////////////////////////////////////////////////////////////////////// | |
644 | |
633 const LLPointerType* isaPointer(LLValue* v) | 645 const LLPointerType* isaPointer(LLValue* v) |
634 { | 646 { |
635 return llvm::dyn_cast<LLPointerType>(v->getType()); | 647 return llvm::dyn_cast<LLPointerType>(v->getType()); |
636 } | 648 } |
637 | 649 |