This revision was automatically updated to reflect the committed changes.
Closed by commit rL308769: Complex Long Double classification In RegCall
calling convention (authored by erichkeane).
Changed prior to commit:
https://reviews.llvm.org/D35259?vs=107667&id=107696#toc
Repository:
rL LLVM
rnk accepted this revision.
rnk added a comment.
This revision is now accepted and ready to land.
lgtm
https://reviews.llvm.org/D35259
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
eandrews updated this revision to Diff 107667.
eandrews added a comment.
Regcall-specific checks for Lin64 now occur only if CXXABI returns false. An
existing test has also been modified to verify behavior with non trivial
destructors.
https://reviews.llvm.org/D35259
Files:
lib/CodeGen/Targ
rnk added inline comments.
Comment at: lib/CodeGen/TargetInfo.cpp:3516
+ // calling convention is used.
if (IsRegCall && FI.getReturnType()->getTypePtr()->isRecordType() &&
!FI.getReturnType()->getTypePtr()->isUnionType()) {
This is incorrect. We shoul
eandrews updated this revision to Diff 107343.
eandrews added a comment.
As per revision comments, I moved the condition for extended precision floating
type to isX86VectorTypeForVectorCall. This update will now alter behavior for
complex long double type under vectorcall calling convention as w
eandrews added a comment.
In https://reviews.llvm.org/D35259#805415, @erichkeane wrote:
> In https://reviews.llvm.org/D35259#805409, @rnk wrote:
>
> > In https://reviews.llvm.org/D35259#805284, @erichkeane wrote:
> >
> > > Oren discovered this miss to the original implementation. I'd reviewed
>
erichkeane added a comment.
In https://reviews.llvm.org/D35259#805409, @rnk wrote:
> In https://reviews.llvm.org/D35259#805284, @erichkeane wrote:
>
> > Oren discovered this miss to the original implementation. I'd reviewed
> > this internally quite a bit.
> >
> > The reason for the Win32ABI te
rnk added a comment.
In https://reviews.llvm.org/D35259#805284, @erichkeane wrote:
> Oren discovered this miss to the original implementation. I'd reviewed this
> internally quite a bit.
>
> The reason for the Win32ABI test is that MSVC 'long double' is actually small
> enough for SSE register
erichkeane added a comment.
Oren discovered this miss to the original implementation. I'd reviewed this
internally quite a bit.
The reason for the Win32ABI test is that MSVC 'long double' is actually small
enough for SSE registers in this case. I DO now (looking again, sorry
Elizabeth) wonde
eandrews created this revision.
This change is part of the RegCall calling convention support for LLVM.
Existing RegCall implementation was extended to include correct handling of
Complex Long Double type. Complex long double types should be returned/passed
in memory and not register stack. Thi
10 matches
Mail list logo