2015-03-10 18:02 GMT+03:00 Georg-Johann Lay <a...@gjlay.de>:
> This is just a small addendum to the option and specs handling:
>
> - Document new avr-gcc command options
>
> - Change -march= to -mmcu= in some test cases
>
> - Add comfigure test to detect whether gas supports -mrmw and --mlink-relax.
>
> - Use result of these tests in specs generatio, i.e. omit respective options
> if they are not supported.
>
>
> Ok to apply?
>
>
> Two issues remain:
>
> - The tests that add -mmcu= to the command options will fail because there
> must not be more than one -mmcu=.  Supporting several, incompatible MCUs
> makes no sense (same for incompatible -march + -mmcu which was the case).
> In 4.9 this works per accident with unspecified definitions for built-in
> macros or when the options differ in default settings, for example.
>
> - Spaces in the installation path are not supported.  It's possible to
> recover from spaces in -specs= by escaping them in spec function
> device-specs-file. However this is almost impossible for the device library
> without changing gcc.c which can use convert_white_space() as needed.
> Adding more than one escape level is not possible because the '\' would be
> interpreted as part of the path.
>
>
> Johann
>
>
> gcc/
>         PR target/65296
>         * configure.ac [avr]: Check as for options -mrmw, --mlink-relax.
>         * configure: Regenerate.
>         * config.in: Regenerate.
>         * config/avr/gen-avr-mmcu-specs.c (config.h): Include it.
>         (*asm_relax): Only define spec if HAVE_AS_AVR_MLINK_RELAX_OPTION.
>         (*asm_rmw): Only define spec if HAVE_AS_AVR_MRMW_OPTION.
>
>
> gcc/
>         PR target/65296
>         * doc/invoke.texi (AVR Options) [-mrmw]: Document it.
>         [-mn-flash]: Document it.
>         [__AVR_DEVICE_NAME__]: Document it.
>         [__ARV_ARCH__]: Document avrtiny.
>
> gcc/testsuite/
>         PR target/65296
>         * gcc.target/avr/tiny-memx: Use -mmcu instead of -march.
>         * gcc.target/avr/tiny-caller-save.c: Same.
>
>
> gcc/
>         PR target/65296
>         * configure.ac [avr]: Check as for option -mrmw.
>         * configure: Regenerate.
>         * config.in: Regenerate.
>         * config/avr/driver-avr.c (avr_device_to_as): Don't add -mrmw to
>         assembler options if not HAVE_AS_AVR_MRMW_OPTION.
>

Approved.

Denis.

Reply via email to