[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2015-01-14 Thread ramana at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 --- Comment #14 from Ramana Radhakrishnan ramana at gcc dot gnu.org --- (In reply to Donn Seeley from comment #13) BTW, this issue cropped up in Wind River Linux testing, not VxWorks. I have no idea whether the VxWorks folks are using

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2015-01-14 Thread ebotcazou at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 --- Comment #15 from Eric Botcazou ebotcazou at gcc dot gnu.org --- Thanks for the input on VxWorks, we'll draft something up about deprecating this option. Note that the system compiler uses APCS frames and DWARF2 EH on VxWorks 6, which is

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2015-01-13 Thread ramana at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 Ramana Radhakrishnan ramana at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P4

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2015-01-13 Thread ebotcazou at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 Eric Botcazou ebotcazou at gcc dot gnu.org changed: What|Removed |Added CC||ebotcazou at

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2015-01-13 Thread ramana at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 --- Comment #10 from Ramana Radhakrishnan ramana at gcc dot gnu.org --- (In reply to Eric Botcazou from comment #9) Uggh - these ancient options in the backend. mapcs-frame is quite ancient and isn't really something that's tested very often,

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2015-01-13 Thread ebotcazou at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 --- Comment #11 from Eric Botcazou ebotcazou at gcc dot gnu.org --- While we are here, what's the thought on deprecating mapcs-frame in the arm-wrs-vxworks community ? It is not really something that's part of the ABI (it predates EABI),

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2015-01-13 Thread donn.seeley at windriver dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 --- Comment #13 from Donn Seeley donn.seeley at windriver dot com --- BTW, this issue cropped up in Wind River Linux testing, not VxWorks. I have no idea whether the VxWorks folks are using -mapcs-frame. WR Linux will remove the -mapcs-frame

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2015-01-13 Thread donn.seeley at windriver dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 --- Comment #12 from Donn Seeley donn.seeley at windriver dot com --- I talked to the folks who added -mapcs-frame to our builds, and it appears that we don't actually need it any more. We'll remove it and see what happens.

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2014-12-23 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 --- Comment #5 from Mikael Pettersson mikpelinux at gmail dot com --- I can reproduce the wrong-code with gcc-4.9.2 on armv7l-linux-gnueabi. Appears to need both -foptimize-sibling-calls and -mapcs-frame to trigger.

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2014-12-23 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 Mikael Pettersson mikpelinux at gmail dot com changed: What|Removed |Added CC|

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2014-12-23 Thread donn.seeley at windriver dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 --- Comment #7 from Donn Seeley donn.seeley at windriver dot com --- Re -mapcs-frame: Yes, the failure is due to code in arm_expand_epilogue_apcs_frame() that explicitly requires / stomps on IP in order to restore VFP/NEON registers. Sorry, I

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2014-12-22 Thread donn.seeley at windriver dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 --- Comment #2 from Donn Seeley donn.seeley at windriver dot com --- Created attachment 34316 -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34316action=edit compiler parameters for the build

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2014-12-22 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 --- Comment #3 from Mikael Pettersson mikpelinux at gmail dot com --- Can you add a main() with the necessary parameter setup and call to mark_set() to make the testcase self-contained and executable? You can annotate mark_set() with

[Bug target/64379] VFP register restore in ARM epilogue can break indirect tailcalls

2014-12-22 Thread donn.seeley at windriver dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64379 --- Comment #4 from Donn Seeley donn.seeley at windriver dot com --- Created attachment 34319 -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34319action=edit main.i to go with content.i I copied content.i to main.i and added just enough