[cfe-commits] r65242 - in /cfe/trunk/lib/CodeGen: CGBlocks.cpp CGExprScalar.cpp CodeGenFunction.cpp CodeGenFunction.h
Mike Stump
mrs at apple.com
Sun Feb 22 05:35:32 PST 2009
On Feb 21, 2009, at 1:32 PM, Daniel Dunbar wrote:
> Just fix the test case, the name assigned to equivalent types is
> undefined.
Ok, fixed. I kinda don't like it.
> Would adding -fblocks=0 be a simple way to fix the test case?
Nope.
>> + // FIXME: second argument should be false?
>> llvm::Value *Func = Builder.CreateLoad(FuncPtr, FuncPtr, "tmp");
>
> It certainly shouldn't be FunctPtr (for 'bool isVolatile' arg). false
> is probably right, although I didn't look at context.
Fixed.
>> +#include "llvm/Target/TargetData.h"
>
> We shouldn't need this.
It was there before I got there, there is one more use of it, and that
use seems to be based upon llvm types and ASTContext::getTypeSize()
seems not to want one of those?
>> + const llvm::Type *Ty;
>> + Ty = CGF.CGM.getTypes().ConvertType(E->getDecl()->getType());
>> +
>> + // See if we have already allocated an offset for this variable.
>> + if (offset == 0) {
>> + int Size =
>> CGF.CGM.getTargetData().getTypeStoreSizeInBits(Ty) / 8;
>
> Is there a good reason to be using TargetData here? Can't this use
> ASTContext::getTypeSize() ?
I was copying code... I fixed it.
> Please use 'BlockOffset = RoundUpToAlignment(BlockOffset, Align/8);'
Fixed.
> Also, wouldn't it be cleaner to have getBlockOffset just take the
> type and embed the size/align computation there?
Fixed.
Thanks.
More information about the cfe-commits
mailing list