arsenm closed this revision.
arsenm added a comment.
r310527
https://reviews.llvm.org/D36171
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
yaxunl accepted this revision.
yaxunl added a comment.
This revision is now accepted and ready to land.
LGTM. Thanks!
https://reviews.llvm.org/D36171
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listi
arsenm added inline comments.
Comment at: lib/CodeGen/TargetInfo.cpp:7571
+
+ // XXX: Should this be i64 instead, and should the limit increase?
+ llvm::Type *I32Ty = llvm::Type::getInt32Ty(getVMContext());
b-sumner wrote:
> arsenm wrote:
> > b-sumner w
b-sumner added inline comments.
Comment at: lib/CodeGen/TargetInfo.cpp:7571
+
+ // XXX: Should this be i64 instead, and should the limit increase?
+ llvm::Type *I32Ty = llvm::Type::getInt32Ty(getVMContext());
arsenm wrote:
> b-sumner wrote:
> > What we
arsenm added inline comments.
Comment at: lib/CodeGen/TargetInfo.cpp:7386
+ bool isHomogeneousAggregateBaseType(QualType Ty) const override;
+ bool isHomogeneousAggregateSmallEnough(const Type *Base,
+ uint64_t Members) const override;
--
b-sumner added inline comments.
Comment at: lib/CodeGen/TargetInfo.cpp:7571
+
+ // XXX: Should this be i64 instead, and should the limit increase?
+ llvm::Type *I32Ty = llvm::Type::getInt32Ty(getVMContext());
What we do here depends on NumRegsLeft when
arsenm updated this revision to Diff 110272.
arsenm added a comment.
Fix assert when estimating array registers
https://reviews.llvm.org/D36171
Files:
lib/CodeGen/TargetInfo.cpp
test/CodeGenOpenCL/addr-space-struct-arg.cl
test/CodeGenOpenCL/amdgpu-abi-struct-coerce.cl
test/CodeGenOpenCL
yaxunl added inline comments.
Comment at: lib/CodeGen/TargetInfo.cpp:7386
+ bool isHomogeneousAggregateBaseType(QualType Ty) const override;
+ bool isHomogeneousAggregateSmallEnough(const Type *Base,
+ uint64_t Members) const override;
--
arsenm added inline comments.
Comment at: lib/CodeGen/TargetInfo.cpp:7386
+ bool isHomogeneousAggregateBaseType(QualType Ty) const override;
+ bool isHomogeneousAggregateSmallEnough(const Type *Base,
+ uint64_t Members) const override;
--
yaxunl added inline comments.
Comment at: lib/CodeGen/TargetInfo.cpp:7386
+ bool isHomogeneousAggregateBaseType(QualType Ty) const override;
+ bool isHomogeneousAggregateSmallEnough(const Type *Base,
+ uint64_t Members) const override;
--
b-sumner added inline comments.
Comment at: lib/CodeGen/TargetInfo.cpp:7555
+ if (NumRegsLeft > 0)
+NumRegsLeft -= (Size + 31) / 32;
+
Won't NumRegsLeft wrap if size==64 and NumRegsLeft == 1 potentially causing an
assert later?
https://reviews.llv
arsenm added a comment.
ping
https://reviews.llvm.org/D36171
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
arsenm created this revision.
Herald added subscribers: t-tye, tpr, dstuttard, nhaehnle, wdng, kzhuravl.
This is an improvement over always using byval for
structs.
This will use registers until ~16 are used, and then
switch back to byval. This needs more work, since I'm
not sure it ever
13 matches
Mail list logo