[Bug ada/60411] Ada bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #25 from Eric Botcazou --- > This statement is a little ambiguous to me, which is the current situation? > > A) There are no plans to alter sigtramp-android.c to support ARM > architectures below ARMv7. Patches would be accepted though. > B) There are no plans to alter sigtramp-android.c to support ARM > architectures below ARMv7. Patches will not be accepted, so to support > ARMv5 requires local modification > C) We are planning to alter sigtramp-android.c to support earlier ARM > architectures, please be patient! I guess the closest match is A.
[Bug ada/60411] Ada bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #24 from John Marino --- (In reply to Eric Botcazou from comment #22) > > Does this mean effectively nothing lower than ARMv7 can build > > arm-*-linux-androideabi? > > Apparently so, but it should be quite easy to fix this in > sigtramp-armdroid.c by means of some preprocessor magic. This statement is a little ambiguous to me, which is the current situation? A) There are no plans to alter sigtramp-android.c to support ARM architectures below ARMv7. Patches would be accepted though. B) There are no plans to alter sigtramp-android.c to support ARM architectures below ARMv7. Patches will not be accepted, so to support ARMv5 requires local modification C) We are planning to alter sigtramp-android.c to support earlier ARM architectures, please be patient! If scenario C, when / what version of GCC? Thanks!
[Bug ada/60411] Ada bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #23 from John Marino --- (In reply to John Marino from comment #17) > In the end, there were 6 failures. > > C52103x > C52104x > C52104y > c74004a (hung) > cb1010c > cb1010d To follow up, I reworked the testsuite handler to reduce the test times from 6 hours to about 15 minutes, so I've since re-run ACATS several times. There are only 5 failures. I can't reproduce the hung c74004a test, it's executing fine now. So it's only the stack-check related tests that are failing.
[Bug ada/60411] Ada bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #22 from Eric Botcazou --- > When I tried to build the ARMv5 cross compiler (-march=armv5te) I get the > following error: > > /tmp//cc5BKnWK.s: Assembler messages: > /tmp//cc5BKnWK.s:31: Error: selected processor does not support Thumb mode > `stmfd sp!,{r2,r3,lr}' > /tmp//cc5BKnWK.s:46: Error: lo register required -- `ldmfd sp,{r2,r3,pc}' > gmake[8]: *** [sigtramp-armdroid.o] Error 1 > > > Does this mean effectively nothing lower than ARMv7 can build > arm-*-linux-androideabi? Apparently so, but it should be quite easy to fix this in sigtramp-armdroid.c by means of some preprocessor magic.
[Bug ada/60411] Ada bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #21 from John Marino --- Hi Eric, When I tried to build the ARMv5 cross compiler (-march=armv5te) I get the following error: /tmp//cc5BKnWK.s: Assembler messages: /tmp//cc5BKnWK.s:31: Error: selected processor does not support Thumb mode `stmfd sp!,{r2,r3,lr}' /tmp//cc5BKnWK.s:46: Error: lo register required -- `ldmfd sp,{r2,r3,pc}' gmake[8]: *** [sigtramp-armdroid.o] Error 1 Does this mean effectively nothing lower than ARMv7 can build arm-*-linux-androideabi? I don't know which ARM arch supports ldmfd sp,{r2,r3,pc} but I assume ARMv5 and lower doesn't. John
[Bug ada/60411] Ada bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #20 from Eric Botcazou --- > ah sorry, I always seem to conclude wrongly that stack checking requires > unwind support. I'm not sure why I always conflate those two things. Yes, it does, but it first needs to be fully functional. > So this patch was proposed 9 months ago but never got committed? Or was it > only partially committed? Never reviewed and therefore not installed, I'll resubmit it at some point.
[Bug ada/60411] Ada bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #19 from John Marino --- ah sorry, I always seem to conclude wrongly that stack checking requires unwind support. I'm not sure why I always conflate those two things. So this patch was proposed 9 months ago but never got committed? Or was it only partially committed? Will stack-check support get added soon? Thanks, John
[Bug ada/60411] Ada bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #18 from Eric Botcazou --- > In the end, there were 6 failures. It appears that the ARM unwinder isn't > quite right yet. After 2314 passes, the six ACATS failures were: > > C52103x > C52104x > C52104y > c74004a (hung) > cb1010c > cb1010d It's not the ARM unwinder, it's the stack checking, see: http://gcc.gnu.org/ml/gcc-patches/2013-06/msg01421.html
[Bug ada/60411] Ada bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #17 from John Marino --- Hi Eric, In the end, there were 6 failures. It appears that the ARM unwinder isn't quite right yet. After 2314 passes, the six ACATS failures were: C52103x C52104x C52104y c74004a (hung) cb1010c cb1010d John
[Bug ada/60411] Ada bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #16 from Eric Botcazou --- > The compiler builds happily now. Great, thanks for the quick feedback. > It started right into ACATS testing and has passed the first 3 chapters > flawlessly (with the current setup ACATS takes hours because each test is > SCP'd/SSH'd to the device, but I'm going to improve the remote testing soon). Please post the definitive results here when you have them, TIA.
[Bug ada/60411] Ada bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #15 from John Marino --- Hi Eric, The compiler builds happily now. It started right into ACATS testing and has passed the first 3 chapters flawlessly (with the current setup ACATS takes hours because each test is SCP'd/SSH'd to the device, but I'm going to improve the remote testing soon). Thanks, John
[Bug ada/60411] Ada bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 Eric Botcazou changed: What|Removed |Added Target Milestone|--- |4.9.0 Summary|ADA bootstrap failure on|Ada bootstrap failure on |ARM |ARM
[Bug ada/60411] ADA bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #14 from Eric Botcazou --- Sorry about the mess, can you try after the latest change?
[Bug ada/60411] ADA bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #13 from Eric Botcazou --- Author: ebotcazou Date: Wed Apr 9 07:57:48 2014 New Revision: 209237 URL: http://gcc.gnu.org/viewcvs?rev=209237&root=gcc&view=rev Log: PR ada/60411 * s-osinte-android.ads: Adjust. Modified: trunk/gcc/ada/s-osinte-android.ads
[Bug ada/60411] ADA bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #12 from John Marino --- I am also seeing these errors: s-intman.adb:263:32: "SA_NODEFER" is not visible s-intman.adb:263:32: non-visible declaration at s-linux.ads:110 s-intman.adb:263:45: "SA_RESTART" is not visible s-intman.adb:263:45: non-visible declaration at s-linux.ads:109
[Bug ada/60411] ADA bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 John Marino changed: What|Removed |Added CC||gnugcc at marino dot st --- Comment #11 from John Marino --- Eric, Thanks for these commits. However, I'm still unable to build arm-aux-linux-androideabi cross-compiler target after 209227. This is the current error: s-osinte.ads:593:07: component "sa_flags" overlaps "sa_mask" at line 592 This happens when a-dynpri.adb is being compiled. s-osinte.ads is s-osinte-android.ads of course. I think this is a direct consequence of #include at sigtramp.h s-ointe-android.ads, lines 590-594: for struct_sigaction use record sa_handler at Linux.sa_handler_pos range 0 .. Standard'Address_Size - 1; sa_maskat Linux.sa_mask_posrange 0 .. 1023; sa_flags at Linux.sa_flags_pos range 0 .. Standard'Address_Size - 1; end record; asm/signal.h (NDK, API 15): typedef unsigned long sigset_t; struct sigaction { union { __sighandler_t _sa_handler; void (*_sa_sigaction)(int, struct siginfo *, void *); } _u; sigset_t sa_mask; unsigned long sa_flags; void (*sa_restorer)(void); }; So it does seem that struct_sigaction record isn't correct after all. John
[Bug ada/60411] ADA bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #10 from Eric Botcazou --- Author: ebotcazou Date: Tue Apr 8 20:35:14 2014 New Revision: 209227 URL: http://gcc.gnu.org/viewcvs?rev=209227&root=gcc&view=rev Log: PR ada/60411 * sigtramp.h: Add Android support. Modified: trunk/gcc/ada/ChangeLog trunk/gcc/ada/sigtramp.h
[Bug ada/60411] ADA bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #9 from Eric Botcazou --- Author: ebotcazou Date: Tue Apr 8 09:03:42 2014 New Revision: 209211 URL: http://gcc.gnu.org/viewcvs?rev=209211&root=gcc&view=rev Log: PR ada/60411 * sigtramp-armdroid.c: New file. Added: trunk/gcc/ada/sigtramp-armdroid.c Modified: trunk/gcc/ada/ChangeLog trunk/gcc/ada/gcc-interface/Makefile.in
[Bug ada/60411] ADA bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #8 from Eric Botcazou --- Author: ebotcazou Date: Tue Apr 8 08:23:56 2014 New Revision: 209210 URL: http://gcc.gnu.org/viewcvs?rev=209210&root=gcc&view=rev Log: PR ada/60411 * gcc-interface/Makefile.in (arm% linux-android): Switch to EHABI. * s-linux-android.ads: New file. * s-intman-android.adb: Likewise. Added: trunk/gcc/ada/s-intman-android.adb trunk/gcc/ada/s-linux-android.ads Modified: trunk/gcc/ada/ChangeLog trunk/gcc/ada/gcc-interface/Makefile.in
[Bug ada/60411] ADA bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #7 from charlet at adacore dot com --- > the cross build for arm-linux-gnueabihf succeeds again. Great. > So they use the same system.ads, which now links with a-exexpr-gcc.adb; > Should'nt this target now also use EH_MECHANISM=-gcc or -arm? Yes, android should also use EH_MECHANISM=-arm I'll make that change.
Re: [Bug ada/60411] ADA bootstrap failure on ARM
> the cross build for arm-linux-gnueabihf succeeds again. Great. > So they use the same system.ads, which now links with a-exexpr-gcc.adb; > Should'nt this target now also use EH_MECHANISM=-gcc or -arm? Yes, android should also use EH_MECHANISM=-arm I'll make that change.
[Bug ada/60411] ADA bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 Bernd Edlinger changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED --- Comment #6 from Bernd Edlinger --- OK, the cross build for arm-linux-gnueabihf succeeds again. So I will close this tracker now. Thanks, BUT if I look at these lines in gcc/ada/gcc-interace/Makefile.in: # ARM android ifeq ($(strip $(filter-out arm% linux-androideabi,$(target_cpu) $(target_os))),) LIBGNAT_TARGET_PAIRS = \ a-intnam.ads
[Bug ada/60411] ADA bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #5 from Bernd Edlinger --- (In reply to Arnaud Charlet from comment #4) > Let me know how things go after the recent commit I made on trunk, thanks. I'll try that on monday, but how about linux-androideabi? isn't that one broken now?
[Bug ada/60411] ADA bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 Arnaud Charlet changed: What|Removed |Added CC||charlet at gcc dot gnu.org --- Comment #4 from Arnaud Charlet --- Let me know how things go after the recent commit I made on trunk, thanks.
[Bug ada/60411] ADA bootstrap failure on ARM
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411 --- Comment #3 from Arnaud Charlet --- Author: charlet Date: Fri Mar 7 20:35:33 2014 New Revision: 208419 URL: http://gcc.gnu.org/viewcvs?rev=208419&root=gcc&view=rev Log: 2014-03-07 Doug Rupp PR ada/60411 * system-linux-armel.ads (Backend_Overflow_Checks): Set to True. (Support_64_Bit_Divides): Removed, no longer used. (ZCX_By_Default): Enabled. Modified: trunk/gcc/ada/ChangeLog trunk/gcc/ada/system-linux-armel.ads