Displaying 2 results from an estimated 2 matches for "arrayaddrlv".
Did you mean:
arrayaddr
2009 Jan 09
0
[LLVMdev] RFC: Store alignment should be LValue alignment, not source alignment
...f (DECL_USER_ALIGN(exp) || Alignment <
> (unsigned)DECL_ALIGN_UNIT(exp))
> + Alignment = DECL_ALIGN_UNIT(exp);
> + }
> +
> + return LValue(BitCastToType(Decl, PTy), Alignment);
Since I don't know what this case handles, I can't comment on this.
> LValue ArrayAddrLV = EmitLV(Array);
> assert(!ArrayAddrLV.isBitfield() && "Arrays cannot be
> bitfields!");
> ArrayAddr = ArrayAddrLV.Ptr;
> + ArrayAlign = ArrayAddrLV.Alignment;
Couldn't this be expr_align(Array)?
> + const Type *ATy = cast<PointerType>...
2009 Jan 09
2
[LLVMdev] RFC: Store alignment should be LValue alignment, not source alignment
..._TYPE) {
+ if (TREE_CODE(ArrayTreeType) == ARRAY_TYPE) {
// First subtract the lower bound, if any, in the type of the
index.
tree LowerBound = array_ref_low_bound(exp);
if (!integer_zerop(LowerBound))
@@ -5956,8 +5975,10 @@ LValue TreeToLLVM::EmitLV_ARRAY_REF(tree
LValue ArrayAddrLV = EmitLV(Array);
assert(!ArrayAddrLV.isBitfield() && "Arrays cannot be
bitfields!");
ArrayAddr = ArrayAddrLV.Ptr;
+ ArrayAlign = ArrayAddrLV.Alignment;
} else {
ArrayAddr = Emit(Array, 0);
+ ArrayAlign = expr_align(ArrayTreeType) / 8;
}
Value...