> These are the easy ones (they default to reload): > > bergner@pike:~/gcc/gcc-fsf-mainline/gcc/config$ grep -r TARGET_LRA_P | grep > false | sort alpha/alpha.c:#define TARGET_LRA_P hook_bool_void_false > avr/avr.c:#define TARGET_LRA_P hook_bool_void_false > bfin/bfin.c:#define TARGET_LRA_P hook_bool_void_false > c6x/c6x.c:#define TARGET_LRA_P hook_bool_void_false > cr16/cr16.c:#define TARGET_LRA_P hook_bool_void_false > cris/cris.c:#define TARGET_LRA_P hook_bool_void_false > epiphany/epiphany.c:#define TARGET_LRA_P hook_bool_void_false > fr30/fr30.c:#define TARGET_LRA_P hook_bool_void_false > frv/frv.c:#define TARGET_LRA_P hook_bool_void_false > h8300/h8300.c:#define TARGET_LRA_P hook_bool_void_false > ia64/ia64.c:#define TARGET_LRA_P hook_bool_void_false > iq2000/iq2000.c:#define TARGET_LRA_P hook_bool_void_false > lm32/lm32.c:#define TARGET_LRA_P hook_bool_void_false > m32c/m32c.c:#define TARGET_LRA_P hook_bool_void_false > m32r/m32r.c:#define TARGET_LRA_P hook_bool_void_false > m68k/m68k.c:#define TARGET_LRA_P hook_bool_void_false > mcore/mcore.c:#define TARGET_LRA_P hook_bool_void_false > microblaze/microblaze.c:#define TARGET_LRA_P hook_bool_void_false > mmix/mmix.c:#define TARGET_LRA_P hook_bool_void_false > mn10300/mn10300.c:#define TARGET_LRA_P hook_bool_void_false > moxie/moxie.c:#define TARGET_LRA_P hook_bool_void_false > msp430/msp430.c:#define TARGET_LRA_P hook_bool_void_false > nvptx/nvptx.c:#define TARGET_LRA_P hook_bool_void_false > pa/pa.c:#define TARGET_LRA_P hook_bool_void_false > rl78/rl78.c:#define TARGET_LRA_P hook_bool_void_false > spu/spu.c:#define TARGET_LRA_P hook_bool_void_false > stormy16/stormy16.c:#define TARGET_LRA_P hook_bool_void_false > tilegx/tilegx.c:#define TARGET_LRA_P hook_bool_void_false > tilepro/tilepro.c:#define TARGET_LRA_P hook_bool_void_false > vax/vax.c:#define TARGET_LRA_P hook_bool_void_false > visium/visium.c:#define TARGET_LRA_P hook_bool_void_false > xtensa/xtensa.c:#define TARGET_LRA_P hook_bool_void_false > > These are harder since they support -mlra: > > arc/arc.c:#define TARGET_LRA_P arc_lra_p > ft32/ft32.c:#define TARGET_LRA_P ft32_lra_p > mips/mips.c:#define TARGET_LRA_P mips_lra_p > pdp11/pdp11.c:#define TARGET_LRA_P pdp11_lra_p > powerpcspe/powerpcspe.c:#define TARGET_LRA_P rs6000_lra_p > rx/rx.c:#define TARGET_LRA_P rx_enable_lra > s390/s390.c:#define TARGET_LRA_P s390_lra_p > sh/sh.c:#define TARGET_LRA_P sh_lra_p > sparc/sparc.c:#define TARGET_LRA_P sparc_lra_p > > Quickly looking into their *.opt files, the follwoing default to LRA: > mips, s390 > while these default to reload: > ft32, sh4 > and these I'm not sure of without looking deeper: > arc, pdp11, powerpcspe, rx, sparc > > ...if that helps.
See https://gcc.gnu.org/backends.html for a more precise summary. -- Eric Botcazou