ssijaric added inline comments.
Comment at: lib/CodeGen/MicrosoftCXXABI.cpp:1058
+
+ // 1. For return types <= 16 bytes, use the C return semantics.
+
richard.townsend.arm wrote:
> Microsoft have updated the spec since this was written, it now says to check
> f
This revision was automatically updated to reflect the committed changes.
Closed by commit rC351302: [SEH] Pass the frame pointer from SEH finally to
finally functions (authored by ssijaric, committed by ).
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D56463/new/
ssijaric updated this revision to Diff 181337.
ssijaric added a comment.
Address formatting comments.
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D56463/new/
https://reviews.llvm.org/D56463
Files:
lib/CodeGen/CGException.cpp
test/CodeGen/exceptions-seh-nest
ssijaric created this revision.
ssijaric added reviewers: rnk, efriedma, mstorsjo, TomTan.
The following test case, compiled with -OO -target=x86_64-windows-win32,
returns an incorrect value. It returns 5, when it should return 9. The
problem is that the frame pointer that the first finally bl
This revision was automatically updated to reflect the committed changes.
Closed by commit rC338076: [ARM64] [Windows] Follow MS X86_64 C++ ABI when
passing structs (authored by ssijaric, committed by ).
Repository:
rC Clang
https://reviews.llvm.org/D49770
Files:
include/clang/Basic/TargetI
ssijaric updated this revision to Diff 157559.
ssijaric added a comment.
Last change before committing to address Reid's point of using
CCK_MicrosoftWin64 for Windows on both X86_64 and ARM64.
Repository:
rC Clang
https://reviews.llvm.org/D49770
Files:
include/clang/Basic/TargetInfo.h
l
ssijaric updated this revision to Diff 157394.
ssijaric added a comment.
Updated to address Martin's observation. Verified that small structs with
default copy constructors and non-trivial destructors are passed in registers
on ARM64 Windows.
Repository:
rC Clang
https://reviews.llvm.org/D
ssijaric added a comment.
Yes, it looks like the comment for the thumb case is applicable here as well.
VC++ on ARM64 passes small structs with a destructor and a default copy
constructor in a register, while clang passes them on the stack. I will
probably address this in a separate patch.
ssijaric created this revision.
ssijaric added reviewers: rnk, mstorsjo, TomTan, haripul.
Herald added a reviewer: javed.absar.
Herald added subscribers: cfe-commits, chrib, kristof.beyls.
Microsoft's C++ object model for ARM64 is the same as that for X86_64. For
example, small structs with non-