Haitao Zhang <hzh...@netspectrum.com> writes: > we recently use GCC 4.3.3 to build userland application use ARM EABI, > for running on a ARM7TDMI, mmuless platform. > > after explicit compile application with -fstack-limit-register=R10, > there is no binary change with or without this option. Does this option work? > > another thing, in old GCC 3.x series, there is a -mapcs-stack-check, > but once GCC and ARM ABI upgraded to use AAPCS, > seems there is no such option like -maapcs-stack-check.
This e-mail message is appropriate for the mailing list gcc-h...@gcc.gnu.org, not g...@gcc.gnu.org. Please take any followups to gcc-h...@gcc.gnu.org. Thanks. -fstack-limit-register will affect the use of alloca and variable length arrays on ARM. However, it will not affect ordinary functions. It looks like the backend support for -fstack-limit-register was only ever implemented for Blackfin, m68k, and PPC. This seems like an omission which should be documented. It was added here: http://gcc.gnu.org/ml/gcc-patches/1999-11/msg00739.html and was never really carried forward. I don't think it would be very difficult to add it to the ARM backend, but somebody would have to actually do the work. You're right that there is no -maacps-stack-check option, and in fact -mapcs-stack-check doesn't work either. Sorry that I don't have better news on this front. Ian