https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66697
--- Comment #4 from Justas L ---
I haven't tested this yet, but I understand this global solution would affect
the performance of ALL functions, not only those that interface with outside
code, correct?
Wine already assigns the force_align_arg_p
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66697
--- Comment #8 from Justas L ---
I applied the first (testing) version of the patch on gcc 5.2.0 release source
(with slight modifications to make it apply). All new features work as
expected, as per the test in comment #2. However, compiling Win
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66697
--- Comment #12 from Justas L ---
This one does not apply neatly on 5.2.0 and I have trouble getting the dev
version to compile, so I can't test it. Any chance of a backport?
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66697
Justas L changed:
What|Removed |Added
Status|ASSIGNED|RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66697
--- Comment #17 from Justas L ---
Yes, this one works fine too.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66697
--- Comment #18 from Justas L ---
Out of curiosity, what could it be that makes -mincoming-stack-boundary=3
successfully deal with rogue code while -mstackrealign fails at that? Shouldn't
-mstackrealign do the same job without being told what the
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66697
--- Comment #21 from Justas L ---
(In reply to H.J. Lu from comment #20)
> -mstackrealign works correctly as designed on x86-64. The
> issue is MIN_STACK_BOUNDARY. When MIN_STACK_BOUNDARY is 128,
> you don't need to realign the stack if you onl
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66697
--- Comment #24 from Justas L ---
Oh, OK. I was looking at the patched code and forgot that part was patched.
: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: bucaneer at gmail dot com
Target Milestone: ---
Compilation of 64bit Wine with GCC 5.3 fails when using both stack realignment
(-mincoming-stack-boundary=3) and
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69140
--- Comment #2 from Justas L ---
Created attachment 37221
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37221&action=edit
testcase
This testcase throws the error when compiled with:
gcc -c -O2 -mincoming-stack-boundary=3 crypt_md4.i
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69140
--- Comment #3 from Justas L ---
Created attachment 37222
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37222&action=edit
testcase2
The previous testcase fails only with -O2 or higher; this one fails with -O1:
gcc -c -O1 -mincoming-stack
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69140
--- Comment #7 from Justas L ---
(In reply to Eric Botcazou from comment #5)
> As expected, reverting the patch doesn't change anything on the 5 branch, so
> I'd suggest either filling a bug report for 'git bisect' or double checking
> its result
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69140
--- Comment #9 from Justas L ---
Yes, forced stack alignment on x86_64 was introduced after 5.2, in r228728 for
pr66697. Also, I can confirm that adding -fno-omit-frame-pointer allows Wine to
compile normally.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69140
--- Comment #14 from Justas L ---
(In reply to Uroš Bizjak from comment #13)
> Justas, can you please test the following patch
Thank you, it indeed solves the problem.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69140
--- Comment #16 from Justas L ---
(In reply to Uroš Bizjak from comment #15)
> Please also do some runtime tests, I don't have the Wine source here ...
Wine compiles and runs with no apparent issues.
: enhancement
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: bucaneer at gmail dot com
Target Milestone: ---
-mstackrealign option and force_align_arg_pointer attribute work for 32bit x86,
but not x86_64.
In particular, this makes
16 matches
Mail list logo