aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@linaro.org>2017-12-16 14:10:55 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2017-12-16 14:10:55 +0000
commit8fcc61f8964aa9aa2e6fc08cb961f9dc2a5add77 (patch)
treec8a3efc7ca2ad478cb17434b58f914c16eaae241
parent7a667e6491f0df391bb19839b580f33b54088bf3 (diff)
downloadgcc-8fcc61f8964aa9aa2e6fc08cb961f9dc2a5add77.zip
gcc-8fcc61f8964aa9aa2e6fc08cb961f9dc2a5add77.tar.gz
gcc-8fcc61f8964aa9aa2e6fc08cb961f9dc2a5add77.tar.bz2
poly_int: IN_TARGET_CODE
This patch makes each target-specifc TU define an IN_TARGET_CODE macro, which is used to decide whether poly_int<1, C> should convert to C. 2017-12-16 Richard Sandiford <richard.sandiford@linaro.org> Alan Hayward <alan.hayward@arm.com> David Sherwood <david.sherwood@arm.com> gcc/ * doc/sourcebuild.texi: Document IN_TARGET_CODE. * genattrtab.c (write_header): Define IN_TARGET_CODE to 1 in the target C file. * genautomata.c (main): Likewise. * genconditions.c (write_header): Likewise. * genemit.c (main): Likewise. * genextract.c (print_header): Likewise. * genopinit.c (main): Likewise. * genoutput.c (output_prologue): Likewise. * genpeep.c (main): Likewise. * genpreds.c (write_insn_preds_c): Likewise. * genrecog.c (writer_header): Likewise. * config/aarch64/aarch64-builtins.c (IN_TARGET_CODE): Define. * config/aarch64/aarch64-c.c (IN_TARGET_CODE): Likewise. * config/aarch64/aarch64.c (IN_TARGET_CODE): Likewise. * config/aarch64/cortex-a57-fma-steering.c (IN_TARGET_CODE): Likewise. * config/aarch64/driver-aarch64.c (IN_TARGET_CODE): Likewise. * config/alpha/alpha.c (IN_TARGET_CODE): Likewise. * config/alpha/driver-alpha.c (IN_TARGET_CODE): Likewise. * config/arc/arc-c.c (IN_TARGET_CODE): Likewise. * config/arc/arc.c (IN_TARGET_CODE): Likewise. * config/arc/driver-arc.c (IN_TARGET_CODE): Likewise. * config/arm/aarch-common.c (IN_TARGET_CODE): Likewise. * config/arm/arm-builtins.c (IN_TARGET_CODE): Likewise. * config/arm/arm-c.c (IN_TARGET_CODE): Likewise. * config/arm/arm.c (IN_TARGET_CODE): Likewise. * config/arm/driver-arm.c (IN_TARGET_CODE): Likewise. * config/avr/avr-c.c (IN_TARGET_CODE): Likewise. * config/avr/avr-devices.c (IN_TARGET_CODE): Likewise. * config/avr/avr-log.c (IN_TARGET_CODE): Likewise. * config/avr/avr.c (IN_TARGET_CODE): Likewise. * config/avr/driver-avr.c (IN_TARGET_CODE): Likewise. * config/avr/gen-avr-mmcu-specs.c (IN_TARGET_CODE): Likewise. * config/bfin/bfin.c (IN_TARGET_CODE): Likewise. * config/c6x/c6x.c (IN_TARGET_CODE): Likewise. * config/cr16/cr16.c (IN_TARGET_CODE): Likewise. * config/cris/cris.c (IN_TARGET_CODE): Likewise. * config/darwin.c (IN_TARGET_CODE): Likewise. * config/epiphany/epiphany.c (IN_TARGET_CODE): Likewise. * config/epiphany/mode-switch-use.c (IN_TARGET_CODE): Likewise. * config/epiphany/resolve-sw-modes.c (IN_TARGET_CODE): Likewise. * config/fr30/fr30.c (IN_TARGET_CODE): Likewise. * config/frv/frv.c (IN_TARGET_CODE): Likewise. * config/ft32/ft32.c (IN_TARGET_CODE): Likewise. * config/h8300/h8300.c (IN_TARGET_CODE): Likewise. * config/i386/djgpp.c (IN_TARGET_CODE): Likewise. * config/i386/driver-i386.c (IN_TARGET_CODE): Likewise. * config/i386/driver-mingw32.c (IN_TARGET_CODE): Likewise. * config/i386/host-cygwin.c (IN_TARGET_CODE): Likewise. * config/i386/host-i386-darwin.c (IN_TARGET_CODE): Likewise. * config/i386/host-mingw32.c (IN_TARGET_CODE): Likewise. * config/i386/i386-c.c (IN_TARGET_CODE): Likewise. * config/i386/i386.c (IN_TARGET_CODE): Likewise. * config/i386/intelmic-mkoffload.c (IN_TARGET_CODE): Likewise. * config/i386/msformat-c.c (IN_TARGET_CODE): Likewise. * config/i386/winnt-cxx.c (IN_TARGET_CODE): Likewise. * config/i386/winnt-stubs.c (IN_TARGET_CODE): Likewise. * config/i386/winnt.c (IN_TARGET_CODE): Likewise. * config/i386/x86-tune-sched-atom.c (IN_TARGET_CODE): Likewise. * config/i386/x86-tune-sched-bd.c (IN_TARGET_CODE): Likewise. * config/i386/x86-tune-sched-core.c (IN_TARGET_CODE): Likewise. * config/i386/x86-tune-sched.c (IN_TARGET_CODE): Likewise. * config/ia64/ia64-c.c (IN_TARGET_CODE): Likewise. * config/ia64/ia64.c (IN_TARGET_CODE): Likewise. * config/iq2000/iq2000.c (IN_TARGET_CODE): Likewise. * config/lm32/lm32.c (IN_TARGET_CODE): Likewise. * config/m32c/m32c-pragma.c (IN_TARGET_CODE): Likewise. * config/m32c/m32c.c (IN_TARGET_CODE): Likewise. * config/m32r/m32r.c (IN_TARGET_CODE): Likewise. * config/m68k/m68k.c (IN_TARGET_CODE): Likewise. * config/mcore/mcore.c (IN_TARGET_CODE): Likewise. * config/microblaze/microblaze-c.c (IN_TARGET_CODE): Likewise. * config/microblaze/microblaze.c (IN_TARGET_CODE): Likewise. * config/mips/driver-native.c (IN_TARGET_CODE): Likewise. * config/mips/frame-header-opt.c (IN_TARGET_CODE): Likewise. * config/mips/mips.c (IN_TARGET_CODE): Likewise. * config/mmix/mmix.c (IN_TARGET_CODE): Likewise. * config/mn10300/mn10300.c (IN_TARGET_CODE): Likewise. * config/moxie/moxie.c (IN_TARGET_CODE): Likewise. * config/msp430/driver-msp430.c (IN_TARGET_CODE): Likewise. * config/msp430/msp430-c.c (IN_TARGET_CODE): Likewise. * config/msp430/msp430.c (IN_TARGET_CODE): Likewise. * config/nds32/nds32-cost.c (IN_TARGET_CODE): Likewise. * config/nds32/nds32-fp-as-gp.c (IN_TARGET_CODE): Likewise. * config/nds32/nds32-intrinsic.c (IN_TARGET_CODE): Likewise. * config/nds32/nds32-isr.c (IN_TARGET_CODE): Likewise. * config/nds32/nds32-md-auxiliary.c (IN_TARGET_CODE): Likewise. * config/nds32/nds32-memory-manipulation.c (IN_TARGET_CODE): Likewise. * config/nds32/nds32-pipelines-auxiliary.c (IN_TARGET_CODE): Likewise. * config/nds32/nds32-predicates.c (IN_TARGET_CODE): Likewise. * config/nds32/nds32.c (IN_TARGET_CODE): Likewise. * config/nios2/nios2.c (IN_TARGET_CODE): Likewise. * config/nvptx/mkoffload.c (IN_TARGET_CODE): Likewise. * config/nvptx/nvptx.c (IN_TARGET_CODE): Likewise. * config/pa/pa.c (IN_TARGET_CODE): Likewise. * config/pdp11/pdp11.c (IN_TARGET_CODE): Likewise. * config/powerpcspe/driver-powerpcspe.c (IN_TARGET_CODE): Likewise. * config/powerpcspe/host-darwin.c (IN_TARGET_CODE): Likewise. * config/powerpcspe/host-ppc64-darwin.c (IN_TARGET_CODE): Likewise. * config/powerpcspe/powerpcspe-c.c (IN_TARGET_CODE): Likewise. * config/powerpcspe/powerpcspe-linux.c (IN_TARGET_CODE): Likewise. * config/powerpcspe/powerpcspe.c (IN_TARGET_CODE): Likewise. * config/riscv/riscv-builtins.c (IN_TARGET_CODE): Likewise. * config/riscv/riscv-c.c (IN_TARGET_CODE): Likewise. * config/riscv/riscv.c (IN_TARGET_CODE): Likewise. * config/rl78/rl78-c.c (IN_TARGET_CODE): Likewise. * config/rl78/rl78.c (IN_TARGET_CODE): Likewise. * config/rs6000/driver-rs6000.c (IN_TARGET_CODE): Likewise. * config/rs6000/host-darwin.c (IN_TARGET_CODE): Likewise. * config/rs6000/host-ppc64-darwin.c (IN_TARGET_CODE): Likewise. * config/rs6000/rs6000-c.c (IN_TARGET_CODE): Likewise. * config/rs6000/rs6000-linux.c (IN_TARGET_CODE): Likewise. * config/rs6000/rs6000-p8swap.c (IN_TARGET_CODE): Likewise. * config/rs6000/rs6000-string.c (IN_TARGET_CODE): Likewise. * config/rs6000/rs6000.c (IN_TARGET_CODE): Likewise. * config/rx/rx.c (IN_TARGET_CODE): Likewise. * config/s390/driver-native.c (IN_TARGET_CODE): Likewise. * config/s390/s390-c.c (IN_TARGET_CODE): Likewise. * config/s390/s390.c (IN_TARGET_CODE): Likewise. * config/sh/sh-c.c (IN_TARGET_CODE): Likewise. * config/sh/sh-mem.cc (IN_TARGET_CODE): Likewise. * config/sh/sh.c (IN_TARGET_CODE): Likewise. * config/sh/sh_optimize_sett_clrt.cc (IN_TARGET_CODE): Likewise. * config/sh/sh_treg_combine.cc (IN_TARGET_CODE): Likewise. * config/sparc/driver-sparc.c (IN_TARGET_CODE): Likewise. * config/sparc/sparc-c.c (IN_TARGET_CODE): Likewise. * config/sparc/sparc.c (IN_TARGET_CODE): Likewise. * config/spu/spu-c.c (IN_TARGET_CODE): Likewise. * config/spu/spu.c (IN_TARGET_CODE): Likewise. * config/stormy16/stormy16.c (IN_TARGET_CODE): Likewise. * config/tilegx/mul-tables.c (IN_TARGET_CODE): Likewise. * config/tilegx/tilegx-c.c (IN_TARGET_CODE): Likewise. * config/tilegx/tilegx.c (IN_TARGET_CODE): Likewise. * config/tilepro/mul-tables.c (IN_TARGET_CODE): Likewise. * config/tilepro/tilepro-c.c (IN_TARGET_CODE): Likewise. * config/tilepro/tilepro.c (IN_TARGET_CODE): Likewise. * config/v850/v850-c.c (IN_TARGET_CODE): Likewise. * config/v850/v850.c (IN_TARGET_CODE): Likewise. * config/vax/vax.c (IN_TARGET_CODE): Likewise. * config/visium/visium.c (IN_TARGET_CODE): Likewise. * config/vms/vms-c.c (IN_TARGET_CODE): Likewise. * config/vms/vms-f.c (IN_TARGET_CODE): Likewise. * config/vms/vms.c (IN_TARGET_CODE): Likewise. * config/xtensa/xtensa.c (IN_TARGET_CODE): Likewise. Co-Authored-By: Alan Hayward <alan.hayward@arm.com> Co-Authored-By: David Sherwood <david.sherwood@arm.com> From-SVN: r255743
-rw-r--r--gcc/ChangeLog149
-rw-r--r--gcc/config/aarch64/aarch64-builtins.c2
-rw-r--r--gcc/config/aarch64/aarch64-c.c2
-rw-r--r--gcc/config/aarch64/aarch64.c2
-rw-r--r--gcc/config/aarch64/cortex-a57-fma-steering.c2
-rw-r--r--gcc/config/aarch64/driver-aarch64.c2
-rw-r--r--gcc/config/alpha/alpha.c2
-rw-r--r--gcc/config/alpha/driver-alpha.c2
-rw-r--r--gcc/config/arc/arc-c.c2
-rw-r--r--gcc/config/arc/arc.c2
-rw-r--r--gcc/config/arc/driver-arc.c2
-rw-r--r--gcc/config/arm/aarch-common.c2
-rw-r--r--gcc/config/arm/arm-builtins.c2
-rw-r--r--gcc/config/arm/arm-c.c2
-rw-r--r--gcc/config/arm/arm.c2
-rw-r--r--gcc/config/arm/driver-arm.c2
-rw-r--r--gcc/config/avr/avr-c.c2
-rw-r--r--gcc/config/avr/avr-devices.c2
-rw-r--r--gcc/config/avr/avr-log.c2
-rw-r--r--gcc/config/avr/avr.c2
-rw-r--r--gcc/config/avr/driver-avr.c2
-rw-r--r--gcc/config/avr/gen-avr-mmcu-specs.c2
-rw-r--r--gcc/config/bfin/bfin.c2
-rw-r--r--gcc/config/c6x/c6x.c2
-rw-r--r--gcc/config/cr16/cr16.c2
-rw-r--r--gcc/config/cris/cris.c2
-rw-r--r--gcc/config/darwin.c2
-rw-r--r--gcc/config/epiphany/epiphany.c2
-rw-r--r--gcc/config/epiphany/mode-switch-use.c2
-rw-r--r--gcc/config/epiphany/resolve-sw-modes.c2
-rw-r--r--gcc/config/fr30/fr30.c2
-rw-r--r--gcc/config/frv/frv.c2
-rw-r--r--gcc/config/ft32/ft32.c2
-rw-r--r--gcc/config/h8300/h8300.c2
-rw-r--r--gcc/config/i386/djgpp.c2
-rw-r--r--gcc/config/i386/driver-i386.c2
-rw-r--r--gcc/config/i386/driver-mingw32.c2
-rw-r--r--gcc/config/i386/host-cygwin.c2
-rw-r--r--gcc/config/i386/host-i386-darwin.c2
-rw-r--r--gcc/config/i386/host-mingw32.c2
-rw-r--r--gcc/config/i386/i386-c.c2
-rw-r--r--gcc/config/i386/i386.c2
-rw-r--r--gcc/config/i386/intelmic-mkoffload.c2
-rw-r--r--gcc/config/i386/msformat-c.c2
-rw-r--r--gcc/config/i386/winnt-cxx.c2
-rw-r--r--gcc/config/i386/winnt-stubs.c2
-rw-r--r--gcc/config/i386/winnt.c2
-rw-r--r--gcc/config/i386/x86-tune-sched-atom.c2
-rw-r--r--gcc/config/i386/x86-tune-sched-bd.c2
-rw-r--r--gcc/config/i386/x86-tune-sched-core.c2
-rw-r--r--gcc/config/i386/x86-tune-sched.c2
-rw-r--r--gcc/config/ia64/ia64-c.c2
-rw-r--r--gcc/config/ia64/ia64.c2
-rw-r--r--gcc/config/iq2000/iq2000.c2
-rw-r--r--gcc/config/lm32/lm32.c2
-rw-r--r--gcc/config/m32c/m32c-pragma.c2
-rw-r--r--gcc/config/m32c/m32c.c2
-rw-r--r--gcc/config/m32r/m32r.c2
-rw-r--r--gcc/config/m68k/m68k.c2
-rw-r--r--gcc/config/mcore/mcore.c2
-rw-r--r--gcc/config/microblaze/microblaze-c.c2
-rw-r--r--gcc/config/microblaze/microblaze.c2
-rw-r--r--gcc/config/mips/driver-native.c2
-rw-r--r--gcc/config/mips/frame-header-opt.c2
-rw-r--r--gcc/config/mips/mips.c2
-rw-r--r--gcc/config/mmix/mmix.c2
-rw-r--r--gcc/config/mn10300/mn10300.c2
-rw-r--r--gcc/config/moxie/moxie.c2
-rw-r--r--gcc/config/msp430/driver-msp430.c2
-rw-r--r--gcc/config/msp430/msp430-c.c2
-rw-r--r--gcc/config/msp430/msp430.c2
-rw-r--r--gcc/config/nds32/nds32-cost.c2
-rw-r--r--gcc/config/nds32/nds32-fp-as-gp.c2
-rw-r--r--gcc/config/nds32/nds32-intrinsic.c2
-rw-r--r--gcc/config/nds32/nds32-isr.c2
-rw-r--r--gcc/config/nds32/nds32-md-auxiliary.c2
-rw-r--r--gcc/config/nds32/nds32-memory-manipulation.c2
-rw-r--r--gcc/config/nds32/nds32-pipelines-auxiliary.c2
-rw-r--r--gcc/config/nds32/nds32-predicates.c2
-rw-r--r--gcc/config/nds32/nds32.c2
-rw-r--r--gcc/config/nios2/nios2.c2
-rw-r--r--gcc/config/nvptx/mkoffload.c2
-rw-r--r--gcc/config/nvptx/nvptx.c2
-rw-r--r--gcc/config/pa/pa.c2
-rw-r--r--gcc/config/pdp11/pdp11.c2
-rw-r--r--gcc/config/powerpcspe/driver-powerpcspe.c2
-rw-r--r--gcc/config/powerpcspe/host-darwin.c2
-rw-r--r--gcc/config/powerpcspe/host-ppc64-darwin.c2
-rw-r--r--gcc/config/powerpcspe/powerpcspe-c.c2
-rw-r--r--gcc/config/powerpcspe/powerpcspe-linux.c2
-rw-r--r--gcc/config/powerpcspe/powerpcspe.c2
-rw-r--r--gcc/config/riscv/riscv-builtins.c2
-rw-r--r--gcc/config/riscv/riscv-c.c2
-rw-r--r--gcc/config/riscv/riscv.c2
-rw-r--r--gcc/config/rl78/rl78-c.c2
-rw-r--r--gcc/config/rl78/rl78.c2
-rw-r--r--gcc/config/rs6000/driver-rs6000.c2
-rw-r--r--gcc/config/rs6000/host-darwin.c2
-rw-r--r--gcc/config/rs6000/host-ppc64-darwin.c2
-rw-r--r--gcc/config/rs6000/rs6000-c.c2
-rw-r--r--gcc/config/rs6000/rs6000-linux.c2
-rw-r--r--gcc/config/rs6000/rs6000-p8swap.c2
-rw-r--r--gcc/config/rs6000/rs6000-string.c2
-rw-r--r--gcc/config/rs6000/rs6000.c2
-rw-r--r--gcc/config/rx/rx.c2
-rw-r--r--gcc/config/s390/driver-native.c2
-rw-r--r--gcc/config/s390/s390-c.c2
-rw-r--r--gcc/config/s390/s390.c2
-rw-r--r--gcc/config/sh/sh-c.c2
-rw-r--r--gcc/config/sh/sh-mem.cc2
-rw-r--r--gcc/config/sh/sh.c2
-rw-r--r--gcc/config/sh/sh_optimize_sett_clrt.cc2
-rw-r--r--gcc/config/sh/sh_treg_combine.cc2
-rw-r--r--gcc/config/sparc/driver-sparc.c2
-rw-r--r--gcc/config/sparc/sparc-c.c2
-rw-r--r--gcc/config/sparc/sparc.c2
-rw-r--r--gcc/config/spu/spu-c.c2
-rw-r--r--gcc/config/spu/spu.c2
-rw-r--r--gcc/config/stormy16/stormy16.c2
-rw-r--r--gcc/config/tilegx/mul-tables.c2
-rw-r--r--gcc/config/tilegx/tilegx-c.c2
-rw-r--r--gcc/config/tilegx/tilegx.c2
-rw-r--r--gcc/config/tilepro/mul-tables.c2
-rw-r--r--gcc/config/tilepro/tilepro-c.c2
-rw-r--r--gcc/config/tilepro/tilepro.c2
-rw-r--r--gcc/config/v850/v850-c.c2
-rw-r--r--gcc/config/v850/v850.c2
-rw-r--r--gcc/config/vax/vax.c2
-rw-r--r--gcc/config/visium/visium.c2
-rw-r--r--gcc/config/vms/vms-c.c2
-rw-r--r--gcc/config/vms/vms-f.c2
-rw-r--r--gcc/config/vms/vms.c2
-rw-r--r--gcc/config/xtensa/xtensa.c2
-rw-r--r--gcc/doc/sourcebuild.texi11
-rw-r--r--gcc/genattrtab.c1
-rw-r--r--gcc/genautomata.c1
-rw-r--r--gcc/genconditions.c1
-rw-r--r--gcc/genemit.c1
-rw-r--r--gcc/genextract.c1
-rw-r--r--gcc/genopinit.c1
-rw-r--r--gcc/genoutput.c1
-rw-r--r--gcc/genpeep.c1
-rw-r--r--gcc/genpreds.c1
-rw-r--r--gcc/genrecog.c2
144 files changed, 435 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 843f492..841e6ed 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -2,6 +2,155 @@
Alan Hayward <alan.hayward@arm.com>
David Sherwood <david.sherwood@arm.com>
+ * doc/sourcebuild.texi: Document IN_TARGET_CODE.
+ * genattrtab.c (write_header): Define IN_TARGET_CODE to 1 in the
+ target C file.
+ * genautomata.c (main): Likewise.
+ * genconditions.c (write_header): Likewise.
+ * genemit.c (main): Likewise.
+ * genextract.c (print_header): Likewise.
+ * genopinit.c (main): Likewise.
+ * genoutput.c (output_prologue): Likewise.
+ * genpeep.c (main): Likewise.
+ * genpreds.c (write_insn_preds_c): Likewise.
+ * genrecog.c (writer_header): Likewise.
+ * config/aarch64/aarch64-builtins.c (IN_TARGET_CODE): Define.
+ * config/aarch64/aarch64-c.c (IN_TARGET_CODE): Likewise.
+ * config/aarch64/aarch64.c (IN_TARGET_CODE): Likewise.
+ * config/aarch64/cortex-a57-fma-steering.c (IN_TARGET_CODE): Likewise.
+ * config/aarch64/driver-aarch64.c (IN_TARGET_CODE): Likewise.
+ * config/alpha/alpha.c (IN_TARGET_CODE): Likewise.
+ * config/alpha/driver-alpha.c (IN_TARGET_CODE): Likewise.
+ * config/arc/arc-c.c (IN_TARGET_CODE): Likewise.
+ * config/arc/arc.c (IN_TARGET_CODE): Likewise.
+ * config/arc/driver-arc.c (IN_TARGET_CODE): Likewise.
+ * config/arm/aarch-common.c (IN_TARGET_CODE): Likewise.
+ * config/arm/arm-builtins.c (IN_TARGET_CODE): Likewise.
+ * config/arm/arm-c.c (IN_TARGET_CODE): Likewise.
+ * config/arm/arm.c (IN_TARGET_CODE): Likewise.
+ * config/arm/driver-arm.c (IN_TARGET_CODE): Likewise.
+ * config/avr/avr-c.c (IN_TARGET_CODE): Likewise.
+ * config/avr/avr-devices.c (IN_TARGET_CODE): Likewise.
+ * config/avr/avr-log.c (IN_TARGET_CODE): Likewise.
+ * config/avr/avr.c (IN_TARGET_CODE): Likewise.
+ * config/avr/driver-avr.c (IN_TARGET_CODE): Likewise.
+ * config/avr/gen-avr-mmcu-specs.c (IN_TARGET_CODE): Likewise.
+ * config/bfin/bfin.c (IN_TARGET_CODE): Likewise.
+ * config/c6x/c6x.c (IN_TARGET_CODE): Likewise.
+ * config/cr16/cr16.c (IN_TARGET_CODE): Likewise.
+ * config/cris/cris.c (IN_TARGET_CODE): Likewise.
+ * config/darwin.c (IN_TARGET_CODE): Likewise.
+ * config/epiphany/epiphany.c (IN_TARGET_CODE): Likewise.
+ * config/epiphany/mode-switch-use.c (IN_TARGET_CODE): Likewise.
+ * config/epiphany/resolve-sw-modes.c (IN_TARGET_CODE): Likewise.
+ * config/fr30/fr30.c (IN_TARGET_CODE): Likewise.
+ * config/frv/frv.c (IN_TARGET_CODE): Likewise.
+ * config/ft32/ft32.c (IN_TARGET_CODE): Likewise.
+ * config/h8300/h8300.c (IN_TARGET_CODE): Likewise.
+ * config/i386/djgpp.c (IN_TARGET_CODE): Likewise.
+ * config/i386/driver-i386.c (IN_TARGET_CODE): Likewise.
+ * config/i386/driver-mingw32.c (IN_TARGET_CODE): Likewise.
+ * config/i386/host-cygwin.c (IN_TARGET_CODE): Likewise.
+ * config/i386/host-i386-darwin.c (IN_TARGET_CODE): Likewise.
+ * config/i386/host-mingw32.c (IN_TARGET_CODE): Likewise.
+ * config/i386/i386-c.c (IN_TARGET_CODE): Likewise.
+ * config/i386/i386.c (IN_TARGET_CODE): Likewise.
+ * config/i386/intelmic-mkoffload.c (IN_TARGET_CODE): Likewise.
+ * config/i386/msformat-c.c (IN_TARGET_CODE): Likewise.
+ * config/i386/winnt-cxx.c (IN_TARGET_CODE): Likewise.
+ * config/i386/winnt-stubs.c (IN_TARGET_CODE): Likewise.
+ * config/i386/winnt.c (IN_TARGET_CODE): Likewise.
+ * config/i386/x86-tune-sched-atom.c (IN_TARGET_CODE): Likewise.
+ * config/i386/x86-tune-sched-bd.c (IN_TARGET_CODE): Likewise.
+ * config/i386/x86-tune-sched-core.c (IN_TARGET_CODE): Likewise.
+ * config/i386/x86-tune-sched.c (IN_TARGET_CODE): Likewise.
+ * config/ia64/ia64-c.c (IN_TARGET_CODE): Likewise.
+ * config/ia64/ia64.c (IN_TARGET_CODE): Likewise.
+ * config/iq2000/iq2000.c (IN_TARGET_CODE): Likewise.
+ * config/lm32/lm32.c (IN_TARGET_CODE): Likewise.
+ * config/m32c/m32c-pragma.c (IN_TARGET_CODE): Likewise.
+ * config/m32c/m32c.c (IN_TARGET_CODE): Likewise.
+ * config/m32r/m32r.c (IN_TARGET_CODE): Likewise.
+ * config/m68k/m68k.c (IN_TARGET_CODE): Likewise.
+ * config/mcore/mcore.c (IN_TARGET_CODE): Likewise.
+ * config/microblaze/microblaze-c.c (IN_TARGET_CODE): Likewise.
+ * config/microblaze/microblaze.c (IN_TARGET_CODE): Likewise.
+ * config/mips/driver-native.c (IN_TARGET_CODE): Likewise.
+ * config/mips/frame-header-opt.c (IN_TARGET_CODE): Likewise.
+ * config/mips/mips.c (IN_TARGET_CODE): Likewise.
+ * config/mmix/mmix.c (IN_TARGET_CODE): Likewise.
+ * config/mn10300/mn10300.c (IN_TARGET_CODE): Likewise.
+ * config/moxie/moxie.c (IN_TARGET_CODE): Likewise.
+ * config/msp430/driver-msp430.c (IN_TARGET_CODE): Likewise.
+ * config/msp430/msp430-c.c (IN_TARGET_CODE): Likewise.
+ * config/msp430/msp430.c (IN_TARGET_CODE): Likewise.
+ * config/nds32/nds32-cost.c (IN_TARGET_CODE): Likewise.
+ * config/nds32/nds32-fp-as-gp.c (IN_TARGET_CODE): Likewise.
+ * config/nds32/nds32-intrinsic.c (IN_TARGET_CODE): Likewise.
+ * config/nds32/nds32-isr.c (IN_TARGET_CODE): Likewise.
+ * config/nds32/nds32-md-auxiliary.c (IN_TARGET_CODE): Likewise.
+ * config/nds32/nds32-memory-manipulation.c (IN_TARGET_CODE): Likewise.
+ * config/nds32/nds32-pipelines-auxiliary.c (IN_TARGET_CODE): Likewise.
+ * config/nds32/nds32-predicates.c (IN_TARGET_CODE): Likewise.
+ * config/nds32/nds32.c (IN_TARGET_CODE): Likewise.
+ * config/nios2/nios2.c (IN_TARGET_CODE): Likewise.
+ * config/nvptx/mkoffload.c (IN_TARGET_CODE): Likewise.
+ * config/nvptx/nvptx.c (IN_TARGET_CODE): Likewise.
+ * config/pa/pa.c (IN_TARGET_CODE): Likewise.
+ * config/pdp11/pdp11.c (IN_TARGET_CODE): Likewise.
+ * config/powerpcspe/driver-powerpcspe.c (IN_TARGET_CODE): Likewise.
+ * config/powerpcspe/host-darwin.c (IN_TARGET_CODE): Likewise.
+ * config/powerpcspe/host-ppc64-darwin.c (IN_TARGET_CODE): Likewise.
+ * config/powerpcspe/powerpcspe-c.c (IN_TARGET_CODE): Likewise.
+ * config/powerpcspe/powerpcspe-linux.c (IN_TARGET_CODE): Likewise.
+ * config/powerpcspe/powerpcspe.c (IN_TARGET_CODE): Likewise.
+ * config/riscv/riscv-builtins.c (IN_TARGET_CODE): Likewise.
+ * config/riscv/riscv-c.c (IN_TARGET_CODE): Likewise.
+ * config/riscv/riscv.c (IN_TARGET_CODE): Likewise.
+ * config/rl78/rl78-c.c (IN_TARGET_CODE): Likewise.
+ * config/rl78/rl78.c (IN_TARGET_CODE): Likewise.
+ * config/rs6000/driver-rs6000.c (IN_TARGET_CODE): Likewise.
+ * config/rs6000/host-darwin.c (IN_TARGET_CODE): Likewise.
+ * config/rs6000/host-ppc64-darwin.c (IN_TARGET_CODE): Likewise.
+ * config/rs6000/rs6000-c.c (IN_TARGET_CODE): Likewise.
+ * config/rs6000/rs6000-linux.c (IN_TARGET_CODE): Likewise.
+ * config/rs6000/rs6000-p8swap.c (IN_TARGET_CODE): Likewise.
+ * config/rs6000/rs6000-string.c (IN_TARGET_CODE): Likewise.
+ * config/rs6000/rs6000.c (IN_TARGET_CODE): Likewise.
+ * config/rx/rx.c (IN_TARGET_CODE): Likewise.
+ * config/s390/driver-native.c (IN_TARGET_CODE): Likewise.
+ * config/s390/s390-c.c (IN_TARGET_CODE): Likewise.
+ * config/s390/s390.c (IN_TARGET_CODE): Likewise.
+ * config/sh/sh-c.c (IN_TARGET_CODE): Likewise.
+ * config/sh/sh-mem.cc (IN_TARGET_CODE): Likewise.
+ * config/sh/sh.c (IN_TARGET_CODE): Likewise.
+ * config/sh/sh_optimize_sett_clrt.cc (IN_TARGET_CODE): Likewise.
+ * config/sh/sh_treg_combine.cc (IN_TARGET_CODE): Likewise.
+ * config/sparc/driver-sparc.c (IN_TARGET_CODE): Likewise.
+ * config/sparc/sparc-c.c (IN_TARGET_CODE): Likewise.
+ * config/sparc/sparc.c (IN_TARGET_CODE): Likewise.
+ * config/spu/spu-c.c (IN_TARGET_CODE): Likewise.
+ * config/spu/spu.c (IN_TARGET_CODE): Likewise.
+ * config/stormy16/stormy16.c (IN_TARGET_CODE): Likewise.
+ * config/tilegx/mul-tables.c (IN_TARGET_CODE): Likewise.
+ * config/tilegx/tilegx-c.c (IN_TARGET_CODE): Likewise.
+ * config/tilegx/tilegx.c (IN_TARGET_CODE): Likewise.
+ * config/tilepro/mul-tables.c (IN_TARGET_CODE): Likewise.
+ * config/tilepro/tilepro-c.c (IN_TARGET_CODE): Likewise.
+ * config/tilepro/tilepro.c (IN_TARGET_CODE): Likewise.
+ * config/v850/v850-c.c (IN_TARGET_CODE): Likewise.
+ * config/v850/v850.c (IN_TARGET_CODE): Likewise.
+ * config/vax/vax.c (IN_TARGET_CODE): Likewise.
+ * config/visium/visium.c (IN_TARGET_CODE): Likewise.
+ * config/vms/vms-c.c (IN_TARGET_CODE): Likewise.
+ * config/vms/vms-f.c (IN_TARGET_CODE): Likewise.
+ * config/vms/vms.c (IN_TARGET_CODE): Likewise.
+ * config/xtensa/xtensa.c (IN_TARGET_CODE): Likewise.
+
+2017-12-16 Richard Sandiford <richard.sandiford@linaro.org>
+ Alan Hayward <alan.hayward@arm.com>
+ David Sherwood <david.sherwood@arm.com>
+
* tree-ssa-sccvn.c (vn_reference_lookup_3): Avoid repeated
checks for MEM_REF.
diff --git a/gcc/config/aarch64/aarch64-builtins.c b/gcc/config/aarch64/aarch64-builtins.c
index 8cbdb01..29955a3 100644
--- a/gcc/config/aarch64/aarch64-builtins.c
+++ b/gcc/config/aarch64/aarch64-builtins.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/aarch64/aarch64-c.c b/gcc/config/aarch64/aarch64-c.c
index e18ec4a..81d7fea 100644
--- a/gcc/config/aarch64/aarch64-c.c
+++ b/gcc/config/aarch64/aarch64-c.c
@@ -17,6 +17,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index b9c17fc..d10fa16 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#define INCLUDE_STRING
#include "system.h"
diff --git a/gcc/config/aarch64/cortex-a57-fma-steering.c b/gcc/config/aarch64/cortex-a57-fma-steering.c
index fa8c56a..a07fc9c 100644
--- a/gcc/config/aarch64/cortex-a57-fma-steering.c
+++ b/gcc/config/aarch64/cortex-a57-fma-steering.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#define INCLUDE_LIST
#include "system.h"
diff --git a/gcc/config/aarch64/driver-aarch64.c b/gcc/config/aarch64/driver-aarch64.c
index 75de645..dedd482 100644
--- a/gcc/config/aarch64/driver-aarch64.c
+++ b/gcc/config/aarch64/driver-aarch64.c
@@ -17,6 +17,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#define INCLUDE_STRING
#include "system.h"
diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c
index 63821fc..16ca93d 100644
--- a/gcc/config/alpha/alpha.c
+++ b/gcc/config/alpha/alpha.c
@@ -19,6 +19,8 @@ along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/alpha/driver-alpha.c b/gcc/config/alpha/driver-alpha.c
index 6eaa586..f2dba39 100644
--- a/gcc/config/alpha/driver-alpha.c
+++ b/gcc/config/alpha/driver-alpha.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/arc/arc-c.c b/gcc/config/arc/arc-c.c
index 44ff338..7f4a4de 100644
--- a/gcc/config/arc/arc-c.c
+++ b/gcc/config/arc/arc-c.c
@@ -17,6 +17,8 @@
<http://www.gnu.org/licenses/>.
*/
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c
index 3fc867f..d1d0d72 100644
--- a/gcc/config/arc/arc.c
+++ b/gcc/config/arc/arc.c
@@ -28,6 +28,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/arc/driver-arc.c b/gcc/config/arc/driver-arc.c
index 0e13878..6d571d1 100644
--- a/gcc/config/arc/driver-arc.c
+++ b/gcc/config/arc/driver-arc.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/arm/aarch-common.c b/gcc/config/arm/aarch-common.c
index 979f86e..34751af 100644
--- a/gcc/config/arm/aarch-common.c
+++ b/gcc/config/arm/aarch-common.c
@@ -21,6 +21,8 @@
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/arm/arm-builtins.c b/gcc/config/arm/arm-builtins.c
index 6d1b20c..d09c6e3 100644
--- a/gcc/config/arm/arm-builtins.c
+++ b/gcc/config/arm/arm-builtins.c
@@ -17,6 +17,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/arm/arm-c.c b/gcc/config/arm/arm-c.c
index 295f03b..635bc3c 100644
--- a/gcc/config/arm/arm-c.c
+++ b/gcc/config/arm/arm-c.c
@@ -16,6 +16,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 1b2bcc3..3252f84 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -20,6 +20,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#define INCLUDE_STRING
#include "system.h"
diff --git a/gcc/config/arm/driver-arm.c b/gcc/config/arm/driver-arm.c
index 8621231..280f420 100644
--- a/gcc/config/arm/driver-arm.c
+++ b/gcc/config/arm/driver-arm.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/avr/avr-c.c b/gcc/config/avr/avr-c.c
index e47cefa..aaab8e6 100644
--- a/gcc/config/avr/avr-c.c
+++ b/gcc/config/avr/avr-c.c
@@ -19,6 +19,8 @@
/* Not included in avr.c since this requires C front end. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/avr/avr-devices.c b/gcc/config/avr/avr-devices.c
index 9961588..07f1976 100644
--- a/gcc/config/avr/avr-devices.c
+++ b/gcc/config/avr/avr-devices.c
@@ -18,6 +18,8 @@
<http://www.gnu.org/licenses/>. */
#ifndef IN_GEN_AVR_MMCU_TEXI
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/avr/avr-log.c b/gcc/config/avr/avr-log.c
index aacaed0..e3a821a 100644
--- a/gcc/config/avr/avr-log.c
+++ b/gcc/config/avr/avr-log.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/avr/avr.c b/gcc/config/avr/avr.c
index 39decb8..8a28950 100644
--- a/gcc/config/avr/avr.c
+++ b/gcc/config/avr/avr.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "intl.h"
diff --git a/gcc/config/avr/driver-avr.c b/gcc/config/avr/driver-avr.c
index c27cc5c..fe17e2d 100644
--- a/gcc/config/avr/driver-avr.c
+++ b/gcc/config/avr/driver-avr.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/avr/gen-avr-mmcu-specs.c b/gcc/config/avr/gen-avr-mmcu-specs.c
index b923aa4..e09f3e4 100644
--- a/gcc/config/avr/gen-avr-mmcu-specs.c
+++ b/gcc/config/avr/gen-avr-mmcu-specs.c
@@ -21,6 +21,8 @@
#include <stdio.h>
#include <string.h>
+#define IN_TARGET_CODE 1
+
#include "config.h"
#define IN_GEN_AVR_MMCU_TEXI
diff --git a/gcc/config/bfin/bfin.c b/gcc/config/bfin/bfin.c
index 96ef232..d4460b5 100644
--- a/gcc/config/bfin/bfin.c
+++ b/gcc/config/bfin/bfin.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/c6x/c6x.c b/gcc/config/c6x/c6x.c
index cbc44ec..ab67577 100644
--- a/gcc/config/c6x/c6x.c
+++ b/gcc/config/c6x/c6x.c
@@ -19,6 +19,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/cr16/cr16.c b/gcc/config/cr16/cr16.c
index 70c0e34..2dd30fa 100644
--- a/gcc/config/cr16/cr16.c
+++ b/gcc/config/cr16/cr16.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/cris/cris.c b/gcc/config/cris/cris.c
index 8fa234f..a31e743 100644
--- a/gcc/config/cris/cris.c
+++ b/gcc/config/cris/cris.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/darwin.c b/gcc/config/darwin.c
index e633b88..7d3b754 100644
--- a/gcc/config/darwin.c
+++ b/gcc/config/darwin.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/epiphany/epiphany.c b/gcc/config/epiphany/epiphany.c
index 9128231..af296c6 100644
--- a/gcc/config/epiphany/epiphany.c
+++ b/gcc/config/epiphany/epiphany.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/epiphany/mode-switch-use.c b/gcc/config/epiphany/mode-switch-use.c
index 394ce5e..d607ead 100644
--- a/gcc/config/epiphany/mode-switch-use.c
+++ b/gcc/config/epiphany/mode-switch-use.c
@@ -19,6 +19,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/epiphany/resolve-sw-modes.c b/gcc/config/epiphany/resolve-sw-modes.c
index f38e210..36e4672 100644
--- a/gcc/config/epiphany/resolve-sw-modes.c
+++ b/gcc/config/epiphany/resolve-sw-modes.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/fr30/fr30.c b/gcc/config/fr30/fr30.c
index 9188481..920e65a 100644
--- a/gcc/config/fr30/fr30.c
+++ b/gcc/config/fr30/fr30.c
@@ -20,6 +20,8 @@
/*{{{ Includes */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/frv/frv.c b/gcc/config/frv/frv.c
index c9877e7..b644a63 100644
--- a/gcc/config/frv/frv.c
+++ b/gcc/config/frv/frv.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/ft32/ft32.c b/gcc/config/ft32/ft32.c
index d7d41a2..ddc847a 100644
--- a/gcc/config/ft32/ft32.c
+++ b/gcc/config/ft32/ft32.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/h8300/h8300.c b/gcc/config/h8300/h8300.c
index dd5b69c..c574375 100644
--- a/gcc/config/h8300/h8300.c
+++ b/gcc/config/h8300/h8300.c
@@ -19,6 +19,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/djgpp.c b/gcc/config/i386/djgpp.c
index a949fab..54c1153 100644
--- a/gcc/config/i386/djgpp.c
+++ b/gcc/config/i386/djgpp.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/driver-i386.c b/gcc/config/i386/driver-i386.c
index 0cc4c4e..013107a 100644
--- a/gcc/config/i386/driver-i386.c
+++ b/gcc/config/i386/driver-i386.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/driver-mingw32.c b/gcc/config/i386/driver-mingw32.c
index b70363a..bc3cacd 100644
--- a/gcc/config/i386/driver-mingw32.c
+++ b/gcc/config/i386/driver-mingw32.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
/* When defined, force the use (if non null) or not (otherwise) of CLI
diff --git a/gcc/config/i386/host-cygwin.c b/gcc/config/i386/host-cygwin.c
index 7817752..abe6b52 100644
--- a/gcc/config/i386/host-cygwin.c
+++ b/gcc/config/i386/host-cygwin.c
@@ -17,6 +17,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/host-i386-darwin.c b/gcc/config/i386/host-i386-darwin.c
index 3d7d2b4..d360380 100644
--- a/gcc/config/i386/host-i386-darwin.c
+++ b/gcc/config/i386/host-i386-darwin.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/host-mingw32.c b/gcc/config/i386/host-mingw32.c
index 68100b7..5d2c608 100644
--- a/gcc/config/i386/host-mingw32.c
+++ b/gcc/config/i386/host-mingw32.c
@@ -17,6 +17,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/i386-c.c b/gcc/config/i386/i386-c.c
index 8ccec7b..072e49b 100644
--- a/gcc/config/i386/i386-c.c
+++ b/gcc/config/i386/i386-c.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 551395f..b9f6e27 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/intelmic-mkoffload.c b/gcc/config/i386/intelmic-mkoffload.c
index 2cc0108..0b7c954 100644
--- a/gcc/config/i386/intelmic-mkoffload.c
+++ b/gcc/config/i386/intelmic-mkoffload.c
@@ -20,6 +20,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include <libgen.h>
#include "system.h"
diff --git a/gcc/config/i386/msformat-c.c b/gcc/config/i386/msformat-c.c
index 716a5c6..6006d9b 100644
--- a/gcc/config/i386/msformat-c.c
+++ b/gcc/config/i386/msformat-c.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/winnt-cxx.c b/gcc/config/i386/winnt-cxx.c
index a3569fb..532d9c9 100644
--- a/gcc/config/i386/winnt-cxx.c
+++ b/gcc/config/i386/winnt-cxx.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/winnt-stubs.c b/gcc/config/i386/winnt-stubs.c
index bd5588b..52a2bbf 100644
--- a/gcc/config/i386/winnt-stubs.c
+++ b/gcc/config/i386/winnt-stubs.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/winnt.c b/gcc/config/i386/winnt.c
index 61d94d2..2f8518e 100644
--- a/gcc/config/i386/winnt.c
+++ b/gcc/config/i386/winnt.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/x86-tune-sched-atom.c b/gcc/config/i386/x86-tune-sched-atom.c
index 86942c0..9e9f253 100644
--- a/gcc/config/i386/x86-tune-sched-atom.c
+++ b/gcc/config/i386/x86-tune-sched-atom.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/x86-tune-sched-bd.c b/gcc/config/i386/x86-tune-sched-bd.c
index c862fc1..0045c63 100644
--- a/gcc/config/i386/x86-tune-sched-bd.c
+++ b/gcc/config/i386/x86-tune-sched-bd.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/x86-tune-sched-core.c b/gcc/config/i386/x86-tune-sched-core.c
index 67b14a7..70e8556 100644
--- a/gcc/config/i386/x86-tune-sched-core.c
+++ b/gcc/config/i386/x86-tune-sched-core.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/i386/x86-tune-sched.c b/gcc/config/i386/x86-tune-sched.c
index 5bcaf2c..4902d94 100644
--- a/gcc/config/i386/x86-tune-sched.c
+++ b/gcc/config/i386/x86-tune-sched.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/ia64/ia64-c.c b/gcc/config/ia64/ia64-c.c
index 3319cbc..37791f3e7 100644
--- a/gcc/config/ia64/ia64-c.c
+++ b/gcc/config/ia64/ia64-c.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index b16c340..f99bea9 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -19,6 +19,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/iq2000/iq2000.c b/gcc/config/iq2000/iq2000.c
index 2e0c6f6..ee107cb 100644
--- a/gcc/config/iq2000/iq2000.c
+++ b/gcc/config/iq2000/iq2000.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/lm32/lm32.c b/gcc/config/lm32/lm32.c
index 1d6cfa0..9677087 100644
--- a/gcc/config/lm32/lm32.c
+++ b/gcc/config/lm32/lm32.c
@@ -19,6 +19,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/m32c/m32c-pragma.c b/gcc/config/m32c/m32c-pragma.c
index 68aa228..c44e59c 100644
--- a/gcc/config/m32c/m32c-pragma.c
+++ b/gcc/config/m32c/m32c-pragma.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/m32c/m32c.c b/gcc/config/m32c/m32c.c
index 244e6bc..f6b711e 100644
--- a/gcc/config/m32c/m32c.c
+++ b/gcc/config/m32c/m32c.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/m32r/m32r.c b/gcc/config/m32r/m32r.c
index 830e7e7..dbc1bae 100644
--- a/gcc/config/m32r/m32r.c
+++ b/gcc/config/m32r/m32r.c
@@ -17,6 +17,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c
index 075ab47..9e42830 100644
--- a/gcc/config/m68k/m68k.c
+++ b/gcc/config/m68k/m68k.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/mcore/mcore.c b/gcc/config/mcore/mcore.c
index 4bd1671..57447e6 100644
--- a/gcc/config/mcore/mcore.c
+++ b/gcc/config/mcore/mcore.c
@@ -17,6 +17,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/microblaze/microblaze-c.c b/gcc/config/microblaze/microblaze-c.c
index 0c9a6af..6dd4be6 100644
--- a/gcc/config/microblaze/microblaze-c.c
+++ b/gcc/config/microblaze/microblaze-c.c
@@ -19,6 +19,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/microblaze/microblaze.c b/gcc/config/microblaze/microblaze.c
index a808bd0..acebb52 100644
--- a/gcc/config/microblaze/microblaze.c
+++ b/gcc/config/microblaze/microblaze.c
@@ -19,6 +19,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/mips/driver-native.c b/gcc/config/mips/driver-native.c
index e1261a0..4895216 100644
--- a/gcc/config/mips/driver-native.c
+++ b/gcc/config/mips/driver-native.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/mips/frame-header-opt.c b/gcc/config/mips/frame-header-opt.c
index 8c41562..2a960d6 100644
--- a/gcc/config/mips/frame-header-opt.c
+++ b/gcc/config/mips/frame-header-opt.c
@@ -23,6 +23,8 @@ along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "context.h"
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c
index d6f7e28..4f6eb84 100644
--- a/gcc/config/mips/mips.c
+++ b/gcc/config/mips/mips.c
@@ -21,6 +21,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/mmix/mmix.c b/gcc/config/mmix/mmix.c
index 4a73162..038c394 100644
--- a/gcc/config/mmix/mmix.c
+++ b/gcc/config/mmix/mmix.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/mn10300/mn10300.c b/gcc/config/mn10300/mn10300.c
index 8351a5e..705f577 100644
--- a/gcc/config/mn10300/mn10300.c
+++ b/gcc/config/mn10300/mn10300.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/moxie/moxie.c b/gcc/config/moxie/moxie.c
index 4901237..f570c06 100644
--- a/gcc/config/moxie/moxie.c
+++ b/gcc/config/moxie/moxie.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/msp430/driver-msp430.c b/gcc/config/msp430/driver-msp430.c
index bad70bb..fa1d90b 100644
--- a/gcc/config/msp430/driver-msp430.c
+++ b/gcc/config/msp430/driver-msp430.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/msp430/msp430-c.c b/gcc/config/msp430/msp430-c.c
index 6ec5b03..7293fb6 100644
--- a/gcc/config/msp430/msp430-c.c
+++ b/gcc/config/msp430/msp430-c.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/msp430/msp430.c b/gcc/config/msp430/msp430.c
index e8f4c9f..46cbaa7 100644
--- a/gcc/config/msp430/msp430.c
+++ b/gcc/config/msp430/msp430.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/nds32/nds32-cost.c b/gcc/config/nds32/nds32-cost.c
index c507517..8f7c316 100644
--- a/gcc/config/nds32/nds32-cost.c
+++ b/gcc/config/nds32/nds32-cost.c
@@ -20,6 +20,8 @@
/* ------------------------------------------------------------------------ */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/nds32/nds32-fp-as-gp.c b/gcc/config/nds32/nds32-fp-as-gp.c
index 6b340b9..743179b 100644
--- a/gcc/config/nds32/nds32-fp-as-gp.c
+++ b/gcc/config/nds32/nds32-fp-as-gp.c
@@ -20,6 +20,8 @@
/* ------------------------------------------------------------------------ */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/nds32/nds32-intrinsic.c b/gcc/config/nds32/nds32-intrinsic.c
index 86d2ed1..064a8c1 100644
--- a/gcc/config/nds32/nds32-intrinsic.c
+++ b/gcc/config/nds32/nds32-intrinsic.c
@@ -20,6 +20,8 @@
/* ------------------------------------------------------------------------ */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/nds32/nds32-isr.c b/gcc/config/nds32/nds32-isr.c
index 933072c..698315e 100644
--- a/gcc/config/nds32/nds32-isr.c
+++ b/gcc/config/nds32/nds32-isr.c
@@ -20,6 +20,8 @@
/* ------------------------------------------------------------------------ */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/nds32/nds32-md-auxiliary.c b/gcc/config/nds32/nds32-md-auxiliary.c
index 5888438..b4041df 100644
--- a/gcc/config/nds32/nds32-md-auxiliary.c
+++ b/gcc/config/nds32/nds32-md-auxiliary.c
@@ -21,6 +21,8 @@
/* ------------------------------------------------------------------------ */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/nds32/nds32-memory-manipulation.c b/gcc/config/nds32/nds32-memory-manipulation.c
index 5bc1f9b..5503dba 100644
--- a/gcc/config/nds32/nds32-memory-manipulation.c
+++ b/gcc/config/nds32/nds32-memory-manipulation.c
@@ -21,6 +21,8 @@
/* ------------------------------------------------------------------------ */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/nds32/nds32-pipelines-auxiliary.c b/gcc/config/nds32/nds32-pipelines-auxiliary.c
index c0fd54d..603ca7e 100644
--- a/gcc/config/nds32/nds32-pipelines-auxiliary.c
+++ b/gcc/config/nds32/nds32-pipelines-auxiliary.c
@@ -21,6 +21,8 @@
/* ------------------------------------------------------------------------ */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/nds32/nds32-predicates.c b/gcc/config/nds32/nds32-predicates.c
index b6cff20..32aec3c 100644
--- a/gcc/config/nds32/nds32-predicates.c
+++ b/gcc/config/nds32/nds32-predicates.c
@@ -20,6 +20,8 @@
/* ------------------------------------------------------------------------ */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/nds32/nds32.c b/gcc/config/nds32/nds32.c
index e4ba5ff..99c3dd0 100644
--- a/gcc/config/nds32/nds32.c
+++ b/gcc/config/nds32/nds32.c
@@ -20,6 +20,8 @@
/* ------------------------------------------------------------------------ */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/nios2/nios2.c b/gcc/config/nios2/nios2.c
index e0df9c5..f608403 100644
--- a/gcc/config/nios2/nios2.c
+++ b/gcc/config/nios2/nios2.c
@@ -20,6 +20,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/nvptx/mkoffload.c b/gcc/config/nvptx/mkoffload.c
index 7baa593..560ea23 100644
--- a/gcc/config/nvptx/mkoffload.c
+++ b/gcc/config/nvptx/mkoffload.c
@@ -27,6 +27,8 @@
This is not a complete assembler. We presume the source is well
formed from the compiler and can die horribly if it is not. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/nvptx/nvptx.c b/gcc/config/nvptx/nvptx.c
index f57b4f9..cce0a55 100644
--- a/gcc/config/nvptx/nvptx.c
+++ b/gcc/config/nvptx/nvptx.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include <sstream>
#include "system.h"
diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c
index 5d28ecd..8b46252 100644
--- a/gcc/config/pa/pa.c
+++ b/gcc/config/pa/pa.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/pdp11/pdp11.c b/gcc/config/pdp11/pdp11.c
index 4fdb077..06fef13 100644
--- a/gcc/config/pdp11/pdp11.c
+++ b/gcc/config/pdp11/pdp11.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/powerpcspe/driver-powerpcspe.c b/gcc/config/powerpcspe/driver-powerpcspe.c
index 8215abb..f3edb86 100644
--- a/gcc/config/powerpcspe/driver-powerpcspe.c
+++ b/gcc/config/powerpcspe/driver-powerpcspe.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/powerpcspe/host-darwin.c b/gcc/config/powerpcspe/host-darwin.c
index da90e2f..ecafe08 100644
--- a/gcc/config/powerpcspe/host-darwin.c
+++ b/gcc/config/powerpcspe/host-darwin.c
@@ -17,6 +17,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/powerpcspe/host-ppc64-darwin.c b/gcc/config/powerpcspe/host-ppc64-darwin.c
index 381fe16..8f99514 100644
--- a/gcc/config/powerpcspe/host-ppc64-darwin.c
+++ b/gcc/config/powerpcspe/host-ppc64-darwin.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/powerpcspe/powerpcspe-c.c b/gcc/config/powerpcspe/powerpcspe-c.c
index 661480f..6020d0c 100644
--- a/gcc/config/powerpcspe/powerpcspe-c.c
+++ b/gcc/config/powerpcspe/powerpcspe-c.c
@@ -20,6 +20,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/powerpcspe/powerpcspe-linux.c b/gcc/config/powerpcspe/powerpcspe-linux.c
index 4a8d9fa..f9965b6 100644
--- a/gcc/config/powerpcspe/powerpcspe-linux.c
+++ b/gcc/config/powerpcspe/powerpcspe-linux.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/powerpcspe/powerpcspe.c b/gcc/config/powerpcspe/powerpcspe.c
index 7d11242..bf90cc5 100644
--- a/gcc/config/powerpcspe/powerpcspe.c
+++ b/gcc/config/powerpcspe/powerpcspe.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/riscv/riscv-builtins.c b/gcc/config/riscv/riscv-builtins.c
index 1311fee..39d2316 100644
--- a/gcc/config/riscv/riscv-builtins.c
+++ b/gcc/config/riscv/riscv-builtins.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/riscv/riscv-c.c b/gcc/config/riscv/riscv-c.c
index 64e7cf8..2a045ec 100644
--- a/gcc/config/riscv/riscv-c.c
+++ b/gcc/config/riscv/riscv-c.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/riscv/riscv.c b/gcc/config/riscv/riscv.c
index cfab2e7..0147c31 100644
--- a/gcc/config/riscv/riscv.c
+++ b/gcc/config/riscv/riscv.c
@@ -19,6 +19,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/rl78/rl78-c.c b/gcc/config/rl78/rl78-c.c
index 3572ae4..59409c8 100644
--- a/gcc/config/rl78/rl78-c.c
+++ b/gcc/config/rl78/rl78-c.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/rl78/rl78.c b/gcc/config/rl78/rl78.c
index e2532b1..6c4caee 100644
--- a/gcc/config/rl78/rl78.c
+++ b/gcc/config/rl78/rl78.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/rs6000/driver-rs6000.c b/gcc/config/rs6000/driver-rs6000.c
index 8215abb..f3edb86 100644
--- a/gcc/config/rs6000/driver-rs6000.c
+++ b/gcc/config/rs6000/driver-rs6000.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/rs6000/host-darwin.c b/gcc/config/rs6000/host-darwin.c
index da90e2f..ecafe08 100644
--- a/gcc/config/rs6000/host-darwin.c
+++ b/gcc/config/rs6000/host-darwin.c
@@ -17,6 +17,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/rs6000/host-ppc64-darwin.c b/gcc/config/rs6000/host-ppc64-darwin.c
index 381fe16..8f99514 100644
--- a/gcc/config/rs6000/host-ppc64-darwin.c
+++ b/gcc/config/rs6000/host-ppc64-darwin.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/rs6000/rs6000-c.c b/gcc/config/rs6000/rs6000-c.c
index 1bcdaa9..5507042 100644
--- a/gcc/config/rs6000/rs6000-c.c
+++ b/gcc/config/rs6000/rs6000-c.c
@@ -20,6 +20,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/rs6000/rs6000-linux.c b/gcc/config/rs6000/rs6000-linux.c
index 4a8d9fa..f9965b6 100644
--- a/gcc/config/rs6000/rs6000-linux.c
+++ b/gcc/config/rs6000/rs6000-linux.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/rs6000/rs6000-p8swap.c b/gcc/config/rs6000/rs6000-p8swap.c
index e1324b7..7d9ab87 100644
--- a/gcc/config/rs6000/rs6000-p8swap.c
+++ b/gcc/config/rs6000/rs6000-p8swap.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/rs6000/rs6000-string.c b/gcc/config/rs6000/rs6000-string.c
index 1ff4284..7e1976b 100644
--- a/gcc/config/rs6000/rs6000-string.c
+++ b/gcc/config/rs6000/rs6000-string.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 215a1f4..42704d3 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/rx/rx.c b/gcc/config/rx/rx.c
index 071cca5..150ef98 100644
--- a/gcc/config/rx/rx.c
+++ b/gcc/config/rx/rx.c
@@ -22,6 +22,8 @@
* Re-enable memory-to-memory copies and fix up reload. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/s390/driver-native.c b/gcc/config/s390/driver-native.c
index acb9836..40b5923 100644
--- a/gcc/config/s390/driver-native.c
+++ b/gcc/config/s390/driver-native.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/s390/s390-c.c b/gcc/config/s390/s390-c.c
index 07224ad..0a2733c 100644
--- a/gcc/config/s390/s390-c.c
+++ b/gcc/config/s390/s390-c.c
@@ -27,6 +27,8 @@
included anymore - a mechanism supposed to avoid adding frontend -
backend dependencies. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c
index b87b49e..0b04ac0 100644
--- a/gcc/config/s390/s390.c
+++ b/gcc/config/s390/s390.c
@@ -20,6 +20,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/sh/sh-c.c b/gcc/config/sh/sh-c.c
index 31e591d..ca74f0f 100644
--- a/gcc/config/sh/sh-c.c
+++ b/gcc/config/sh/sh-c.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/sh/sh-mem.cc b/gcc/config/sh/sh-mem.cc
index 4c33260..c5a9a1e 100644
--- a/gcc/config/sh/sh-mem.cc
+++ b/gcc/config/sh/sh-mem.cc
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index a627e8f..e0ad5bf 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -21,6 +21,8 @@ along with GCC; see the file COPYING3. If not see
#include <sstream>
+#define IN_TARGET_CODE 1
+
#include "config.h"
#define INCLUDE_VECTOR
#include "system.h"
diff --git a/gcc/config/sh/sh_optimize_sett_clrt.cc b/gcc/config/sh/sh_optimize_sett_clrt.cc
index 449261e..bfb9aba 100644
--- a/gcc/config/sh/sh_optimize_sett_clrt.cc
+++ b/gcc/config/sh/sh_optimize_sett_clrt.cc
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/sh/sh_treg_combine.cc b/gcc/config/sh/sh_treg_combine.cc
index bae81af..05608ce 100644
--- a/gcc/config/sh/sh_treg_combine.cc
+++ b/gcc/config/sh/sh_treg_combine.cc
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#define INCLUDE_ALGORITHM
#define INCLUDE_LIST
diff --git a/gcc/config/sparc/driver-sparc.c b/gcc/config/sparc/driver-sparc.c
index 0c25d6c..9b811a8 100644
--- a/gcc/config/sparc/driver-sparc.c
+++ b/gcc/config/sparc/driver-sparc.c
@@ -17,6 +17,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/sparc/sparc-c.c b/gcc/config/sparc/sparc-c.c
index 4aacfff..f8124bf 100644
--- a/gcc/config/sparc/sparc-c.c
+++ b/gcc/config/sparc/sparc-c.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
index fc50f9b..c7c0bd8 100644
--- a/gcc/config/sparc/sparc.c
+++ b/gcc/config/sparc/sparc.c
@@ -20,6 +20,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/spu/spu-c.c b/gcc/config/spu/spu-c.c
index ba858f1..4f78bb7 100644
--- a/gcc/config/spu/spu-c.c
+++ b/gcc/config/spu/spu-c.c
@@ -14,6 +14,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/spu/spu.c b/gcc/config/spu/spu.c
index c1c79a2..4b47b4a 100644
--- a/gcc/config/spu/spu.c
+++ b/gcc/config/spu/spu.c
@@ -14,6 +14,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/stormy16/stormy16.c b/gcc/config/stormy16/stormy16.c
index bf72693..a355794 100644
--- a/gcc/config/stormy16/stormy16.c
+++ b/gcc/config/stormy16/stormy16.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/tilegx/mul-tables.c b/gcc/config/tilegx/mul-tables.c
index 9725f7d..877df27 100644
--- a/gcc/config/tilegx/mul-tables.c
+++ b/gcc/config/tilegx/mul-tables.c
@@ -21,6 +21,8 @@
/* Note this file is auto-generated from gen-mul-tables.cc.
Make any required changes there. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/tilegx/tilegx-c.c b/gcc/config/tilegx/tilegx-c.c
index 8f38a88..ba63fde 100644
--- a/gcc/config/tilegx/tilegx-c.c
+++ b/gcc/config/tilegx/tilegx-c.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/tilegx/tilegx.c b/gcc/config/tilegx/tilegx.c
index 63fe340..794afee 100644
--- a/gcc/config/tilegx/tilegx.c
+++ b/gcc/config/tilegx/tilegx.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/tilepro/mul-tables.c b/gcc/config/tilepro/mul-tables.c
index 99877d6..32e6ec0 100644
--- a/gcc/config/tilepro/mul-tables.c
+++ b/gcc/config/tilepro/mul-tables.c
@@ -21,6 +21,8 @@
/* Note this file is auto-generated from gen-mul-tables.cc.
Make any required changes there. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/tilepro/tilepro-c.c b/gcc/config/tilepro/tilepro-c.c
index fab4689..13e8056 100644
--- a/gcc/config/tilepro/tilepro-c.c
+++ b/gcc/config/tilepro/tilepro-c.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/tilepro/tilepro.c b/gcc/config/tilepro/tilepro.c
index ee9bc0a..ae71f75 100644
--- a/gcc/config/tilepro/tilepro.c
+++ b/gcc/config/tilepro/tilepro.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/v850/v850-c.c b/gcc/config/v850/v850-c.c
index 1855204..145eef5 100644
--- a/gcc/config/v850/v850-c.c
+++ b/gcc/config/v850/v850-c.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/v850/v850.c b/gcc/config/v850/v850.c
index a26f5d6..ab096ea 100644
--- a/gcc/config/v850/v850.c
+++ b/gcc/config/v850/v850.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/vax/vax.c b/gcc/config/vax/vax.c
index 82f13da..8bc40eb 100644
--- a/gcc/config/vax/vax.c
+++ b/gcc/config/vax/vax.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/visium/visium.c b/gcc/config/visium/visium.c
index 4165214..991783d 100644
--- a/gcc/config/visium/visium.c
+++ b/gcc/config/visium/visium.c
@@ -18,6 +18,8 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/vms/vms-c.c b/gcc/config/vms/vms-c.c
index 278c8e2..f0c9fdc 100644
--- a/gcc/config/vms/vms-c.c
+++ b/gcc/config/vms/vms-c.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/vms/vms-f.c b/gcc/config/vms/vms-f.c
index e0fd0fe..bde1948 100644
--- a/gcc/config/vms/vms-f.c
+++ b/gcc/config/vms/vms-f.c
@@ -17,6 +17,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/vms/vms.c b/gcc/config/vms/vms.c
index a303e96..f17097c 100644
--- a/gcc/config/vms/vms.c
+++ b/gcc/config/vms/vms.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c
index 92b9a60..665fe95 100644
--- a/gcc/config/xtensa/xtensa.c
+++ b/gcc/config/xtensa/xtensa.c
@@ -18,6 +18,8 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+#define IN_TARGET_CODE 1
+
#include "config.h"
#include "system.h"
#include "coretypes.h"
diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi
index 04e18df..d5da393 100644
--- a/gcc/doc/sourcebuild.texi
+++ b/gcc/doc/sourcebuild.texi
@@ -822,6 +822,17 @@ manual needs to be installed as info for this to work, or to be a
chapter of this manual.
@end itemize
+GCC uses the macro @code{IN_TARGET_CODE} to distinguish between
+machine-specific @file{.c} and @file{.cc} files and
+machine-independent @file{.c} and @file{.cc} files. Machine-specific
+files should use the directive:
+
+@example
+#define IN_TARGET_CODE 1
+@end example
+
+before including @code{config.h}.
+
If the back end is added to the official GCC source repository, the
following are also necessary:
diff --git a/gcc/genattrtab.c b/gcc/genattrtab.c
index 51dfe77..a2a66e3 100644
--- a/gcc/genattrtab.c
+++ b/gcc/genattrtab.c
@@ -5072,6 +5072,7 @@ write_header (FILE *outf)
fprintf (outf, "/* Generated automatically by the program `genattrtab'\n"
" from the machine description file `md'. */\n\n");
+ fprintf (outf, "#define IN_TARGET_CODE 1\n");
fprintf (outf, "#include \"config.h\"\n");
fprintf (outf, "#include \"system.h\"\n");
fprintf (outf, "#include \"coretypes.h\"\n");
diff --git a/gcc/genautomata.c b/gcc/genautomata.c
index 76dacbc..aed10a3 100644
--- a/gcc/genautomata.c
+++ b/gcc/genautomata.c
@@ -9641,6 +9641,7 @@ main (int argc, const char **argv)
{
puts ("/* Generated automatically by the program `genautomata'\n"
" from the machine description file `md'. */\n\n"
+ "#define IN_TARGET_CODE 1\n"
"#include \"config.h\"\n"
"#include \"system.h\"\n"
"#include \"coretypes.h\"\n"
diff --git a/gcc/genconditions.c b/gcc/genconditions.c
index f62ff16..178026a 100644
--- a/gcc/genconditions.c
+++ b/gcc/genconditions.c
@@ -50,6 +50,7 @@ write_header (void)
/* Generated automatically by the program `genconditions' from the target\n\
machine description file. */\n\
\n\
+#define IN_TARGET_CODE 1\n\
#include \"bconfig.h\"\n\
#define INCLUDE_STRING\n\
#include \"system.h\"\n\
diff --git a/gcc/genemit.c b/gcc/genemit.c
index 6e60c0a..059fdb6 100644
--- a/gcc/genemit.c
+++ b/gcc/genemit.c
@@ -764,6 +764,7 @@ main (int argc, const char **argv)
printf ("/* Generated automatically by the program `genemit'\n\
from the machine description file `md'. */\n\n");
+ printf ("#define IN_TARGET_CODE 1\n");
printf ("#include \"config.h\"\n");
printf ("#include \"system.h\"\n");
printf ("#include \"coretypes.h\"\n");
diff --git a/gcc/genextract.c b/gcc/genextract.c
index d9599ad..258d234 100644
--- a/gcc/genextract.c
+++ b/gcc/genextract.c
@@ -343,6 +343,7 @@ print_header (void)
/* Generated automatically by the program `genextract'\n\
from the machine description file `md'. */\n\
\n\
+#define IN_TARGET_CODE 1\n\
#include \"config.h\"\n\
#include \"system.h\"\n\
#include \"coretypes.h\"\n\
diff --git a/gcc/genopinit.c b/gcc/genopinit.c
index d98fcd5..1ad9054 100644
--- a/gcc/genopinit.c
+++ b/gcc/genopinit.c
@@ -246,6 +246,7 @@ main (int argc, const char **argv)
"#endif\n");
fprintf (s_file,
+ "#define IN_TARGET_CODE 1\n"
"#include \"config.h\"\n"
"#include \"system.h\"\n"
"#include \"coretypes.h\"\n"
diff --git a/gcc/genoutput.c b/gcc/genoutput.c
index d447455..1deb9b0 100644
--- a/gcc/genoutput.c
+++ b/gcc/genoutput.c
@@ -203,6 +203,7 @@ output_prologue (void)
printf ("/* Generated automatically by the program `genoutput'\n\
from the machine description file `md'. */\n\n");
+ printf ("#define IN_TARGET_CODE 1\n");
printf ("#include \"config.h\"\n");
printf ("#include \"system.h\"\n");
printf ("#include \"coretypes.h\"\n");
diff --git a/gcc/genpeep.c b/gcc/genpeep.c
index 2fcd891..4b9c537 100644
--- a/gcc/genpeep.c
+++ b/gcc/genpeep.c
@@ -355,6 +355,7 @@ main (int argc, const char **argv)
printf ("/* Generated automatically by the program `genpeep'\n\
from the machine description file `md'. */\n\n");
+ printf ("#define IN_TARGET_CODE 1\n");
printf ("#include \"config.h\"\n");
printf ("#include \"system.h\"\n");
printf ("#include \"coretypes.h\"\n");
diff --git a/gcc/genpreds.c b/gcc/genpreds.c
index 48226f5..200869f 100644
--- a/gcc/genpreds.c
+++ b/gcc/genpreds.c
@@ -1558,6 +1558,7 @@ write_insn_preds_c (void)
md_reader_ptr->get_top_level_filename ());
puts ("\
+#define IN_TARGET_CODE 1\n\
#include \"config.h\"\n\
#include \"system.h\"\n\
#include \"coretypes.h\"\n\
diff --git a/gcc/genrecog.c b/gcc/genrecog.c
index b3d02d7..275168d 100644
--- a/gcc/genrecog.c
+++ b/gcc/genrecog.c
@@ -4218,6 +4218,8 @@ write_header (void)
/* Generated automatically by the program `genrecog' from the target\n\
machine description file. */\n\
\n\
+#define IN_TARGET_CODE 1\n\
+\n\
#include \"config.h\"\n\
#include \"system.h\"\n\
#include \"coretypes.h\"\n\