iximeow submitted PR Review.
iximeow created PR Review Comment:
The frame offset is currently being incorrectly stored as 0 in our unwind information (the only ops used until now didn't require it, luckily).
I'll have to check in on this too.. Broadly this does make sense, yes. I looked at what I think is the reference for the diagram you included here - do you know how preparing for a the call to
B
interacts with unwind information? Does Windows require we reserve enough space for the most stack-heavy function call as part of the frame's fixed allocation? (I'm not totally certain we do that, and I'd want to double-check that too)
iximeow edited PR Review Comment.
peterhuene submitted PR Review.
peterhuene created PR Review Comment:
Yes, Windows does require that the local frame's fixed allocation have the maximum amount of space required for passing arguments on the stack for all function calls made by the function, plus 32 bytes for the shadow space which should always be RSP+0x8 to RSP+0x20 upon entry to the callee.
peterhuene edited PR Review Comment.
peterhuene edited PR Review Comment.
peterhuene submitted PR Review.
peterhuene created PR Review Comment:
Regarding how calling B interacts with the unwind information, it doesn't. Unwind only concerns itself with unwinding the operations done in the prologue, therefore it is only interested in the register save space and not where any arguments for callees might be stored. RSP should not adjust (except by a call) after the frame is established unless it's a "dynamic" (alloca) frame, at which point a frame pointer must be used. Since we're using a frame pointer anyway, we also need that "frame pointer offset" adjustment so that it unwinds from the right base.
What I don't get is why frames with a frame pointer need to be described using this "base address" rather than just treating every unwind operation offset as negative from the frame pointer when there is one and positive from RSP when there is not. This seems unnecessarily complicated, but I'm sure there's a good reason.
peterhuene edited PR Review Comment.
peterhuene edited PR Review Comment.
peterhuene edited PR Review Comment.
iximeow submitted PR Review.
iximeow created PR Review Comment:
Great, I think we're on the same page now. I really appreciate your help in figuring this out.
iximeow edited PR Review Comment.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow submitted PR Review.
iximeow created PR Review Comment:
I've finally gotten another tweak that I _think_ makes for the right unwind information. Because we always set up
rbp
at the start of the function we're kind of limited to producing functions that have a static frame size of 256 or fewer bytes, and unwinding information is requested. I included some checks about this, and because we can get away with a wrong offset so long as no unwind codes need it, this can be scoped down to only impacting functions using callee-save FPRs.This turns what is a (still open) miscompile corrupting arbitrary caller state into a compiler panic, so I think adding a panic here is still a net improvement.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
peterhuene created PR Review Comment:
Why is the static frame size limited to 256 bytes? The unwind information should only place limits on the offset from the frame pointer to the "base" (i.e. register save area) and not the entire frame size, no?
peterhuene submitted PR Review.
peterhuene edited PR Review Comment.
iximeow created PR Review Comment:
Since the callee-save region is added after spill slots, it ends up on the lower side of the stack frame, so we need an offset that covers locals and spills, then callee-save FPRs. I fiddled with
stack_layout
a bit to try keeping callee-save FPRs at the higher side of the stack frame (like the diagram shows) but I couldn't figure out how to get that to work.
iximeow submitted PR Review.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
peterhuene submitted PR Review.
peterhuene created PR Review Comment:
Ugh. It sounds like we really need to address how we lay out frames in Cranelift if this is a self-imposed limitation.
I mean we can live with this limitation as a short-term stop gap to get the more important issue of not saving the FPRs (i.e. unblock this PR), but I think we should file a high-priority issue to remove this limitation by always saving registers at higher addresses in the frame than any locals and spills.
peterhuene edited PR Review Comment.
peterhuene submitted PR Review.
peterhuene created PR Review Comment:
This seems incomplete.
iximeow submitted PR Review.
iximeow created PR Review Comment:
I was only particularly concerned with verifying that
xmm15
ends up with an offset that doesn't overlap with shadow space or stack argument space for the called function. I can include the rest of the function'sUnwindCode
if you'd like, but I figured that got outside the point of this test.
peterhuene submitted PR Review.
peterhuene created PR Review Comment:
I'm good with this but perhaps with a comment explaining why only the first unwind code is validated?
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
bjorn3 submitted PR Review.
bjorn3 submitted PR Review.
bjorn3 created PR Review Comment:
This is always true when reached.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow submitted PR Review.
iximeow created PR Review Comment:
Yes, this is back to being somewhat wip - wasmtime yielded some new errors I hadn't seen testing only in cranelift. I'd tried setting up a build environment on the Windows machine I have available but ran afoul of link.exe being... wrong? So I just added a bit of logging in the hopes I could figure out what went wrong from just a bit of CI logs. I think I have, and once it's passing I'm going to revert
29c6c40
.
pchickey updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow submitted PR Review.
iximeow created PR Review Comment:
I've made the FPR stack slot an
ExplicitSlot
rather thanSpillSlot
because there _is_ some mention ofSpillSlot
being eligible for certain optimizations inredundant_reload_remover
. There shouldn't be redundant reloads from this slot, butExplicitSlot
specifically indicates its use forstack_load
/stack_store
, which are the intended result of this PR (only not using those here because of encoding constraints that need to be fixed)
iximeow submitted PR Review.
iximeow created PR Review Comment:
Done - see here
iximeow submitted PR Review.
iximeow created PR Review Comment:
(I've reverted
29c6c40
and the assertion this comment is on is once again a meaningful)
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
peterhuene submitted PR Review.
peterhuene submitted PR Review.
peterhuene created PR Review Comment:
Can we create a new issue to track the stack layout for CSRs problem and link here instead of the PR? My concern is only that it's hard to make out what's relevant of a complex PR like this one.
peterhuene created PR Review Comment:
Given users might run into this panic on Windows until we fix the underlying issue (granted, without the panic they weren't getting proper register restores or unwind which is a more severe problem), perhaps we should note that this is a known limitation and link to the GitHub issue describing the problem?
iximeow submitted PR Review.
iximeow created PR Review Comment:
Absolutely. That's the third item in my to-do list which I've been waiting for even a preliminary :heavy_check_mark: to actually file.
iximeow submitted PR Review.
iximeow created PR Review Comment:
This is a good idea. I'll add that in once I have an issue filed.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
bnjbvr submitted PR Review.
bnjbvr created PR Review Comment:
nit: can you expand the date as
February 2nd, 2020
, please? I read this as "May 2nd", as a European person :)
bnjbvr submitted PR Review.
bnjbvr created PR Review Comment:
Uh? Do we prefix
Vec::new()
this way in other places in this file?
bnjbvr created PR Review Comment:
light suggestion: a cheaper alternative which avoids a check below:
if let Some(fpr_slot) = fpr_slot { debug_assert!(csrs.iter(FPR).len() != 0);
bnjbvr created PR Review Comment:
(Reopening) Can you add a comment in the code expliciting your conclusion for choosing ExplicitSlot, please?
bnjbvr created PR Review Comment:
Can you copy the comment telling that R11 can be clobbered in any convention?
bnjbvr created PR Review Comment:
We have a codegen error for implementation limits. Can we return a Result from this function, and return the impl limit reached error in this case, instead of panicking?
(Otherwise, this blocks fuzzing, among other things.)
bnjbvr created PR Review Comment:
Same possibility to do
if let Some(fpr_slot) = fpr_slot {
here.
bnjbvr created PR Review Comment:
nit: can you move this definition just before its first use, above the for loop at line 904?
iximeow submitted PR Review.
iximeow created PR Review Comment:
Oops, yeah I should expand that :)
iximeow submitted PR Review.
iximeow created PR Review Comment:
I'm curious for @peterhuene's thoughts on this, because #1466 will hopefully land relatively quickly after this does. Does #1466 PR introduce a reason for unwind information to be fallible?
If this is the only reason for an occasional failure, we could make this
Result
with the understanding that when it stops beingResult
we can revert this back to a non-Result function. I'm not sure that there's a reason this should be fallible, generally speaking. I only prefer a panic because I see this as something that _should_ be an important issue to resolve promptly, but I realize that might not be very nice to downstream users (including us fuzzing :) ).
iximeow submitted PR Review.
iximeow created PR Review Comment:
we in fact do not! The fully-qualified
Vec
reads a bit odd to me too, but I figured we can hoist theuse
if the number ofVec
-referrers goes up to two.
iximeow edited PR Review Comment.
bjorn3 submitted PR Review.
bjorn3 created PR Review Comment:
Or use
2020-02-05
. (ISO 8601
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
peterhuene submitted PR Review.
peterhuene created PR Review Comment:
Sorry, I missed this notification yesterday. I think making it
Result
is a good idea even if this particular platform's implementation will hopefully be infallible once this restriction is lifted. Other unwind information implementations might be fallible and it can't hurt to have some signature consistency between the functions that create the unwind info.
peterhuene submitted PR Review.
peterhuene created PR Review Comment:
Plenty of codgen modules have
use alloc::vec::Vec
, though, so I wouldn't mind this being lifted to ause
.
peterhuene edited PR Review Comment.
peterhuene submitted PR Review.
peterhuene created PR Review Comment:
Just a reminder to update this to
https://github.com/bytecodealliance/wasmtime/issues/1475
.
peterhuene submitted PR Review.
peterhuene created PR Review Comment:
@bnjbvr is the new comment sufficient?
bnjbvr submitted PR Review.
bnjbvr created PR Review Comment:
Yes, looks good, thanks!
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow submitted PR Review.
iximeow created PR Review Comment:
I've made functions for unwind emission all
Result
-y.ImplLimitExceeded
doesn't describe _which_ limit was exceeded, but I figure for the cases in Windows unwind info it would be very helpful to get some kind of hint, so I moved the panic message into alog::warn
as well.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
bjorn3 submitted PR Review.
bjorn3 created PR Review Comment:
// No-op by default Ok(())
iximeow created PR Review Comment:
oh goodness. thanks :(
iximeow submitted PR Review.
iximeow updated PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
peterhuene submitted PR Review.
iximeow merged PR #1216.
iximeow edited PR #1216 from windows-fprs-preservation
to master
:
Moved from https://github.com/bytecodealliance/cranelift/pull/1378.
- [x] This has been discussed in issue #1177
- [x] A short description: Windows appears to have extended ABI constraints to require callees to save XMM6-XMM15 (see #1177 for links to reference material). This PR adds preserve/restore behavior for those registers.
- [x] This PR contains test cases.
- [x] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so and/or ping
bnjbvr
. The list of suggested reviewers on the right can help you.There were a few unresolved conversations from the original PR that I'll copy below.
Last updated: Dec 23 2024 at 12:05 UTC