dnl Note that this file is intended to be included at the m4 level and not
dnl the shell level, so use sinclude(...) to pull it in.

# WHEN ADDING ENTRIES TO THIS MATRIX:

# Make sure that the left side always has two dashes.  Otherwise you
# can get spurious matches.  Even for unambiguous cases, do this as a
# convention, else the table becomes a real mess to understand and
# maintain.

dnl glue to avoid code duplication at top level
m4_ifndef([SIM_ARCH], [AC_DEFUN([SIM_ARCH],[sim_arch=$1])])

sim_igen=no
sim_arch=
case "${target}" in
   aarch64*-*-*)
       SIM_ARCH(aarch64)
       ;;
   arm*-*-*)
       SIM_ARCH(arm)
       ;;
   avr*-*-*)
       SIM_ARCH(avr)
       ;;
   bfin-*-*)
       SIM_ARCH(bfin)
       ;;
   cr16*-*-*)
       SIM_ARCH(cr16)
       ;;
   cris-*-* | crisv32-*-*)
       SIM_ARCH(cris)
       ;;
   d10v-*-*)
       SIM_ARCH(d10v)
       ;;
   frv-*-*)
       SIM_ARCH(frv)
       ;;
   h8300*-*-*)
       SIM_ARCH(h8300)
       ;;
   iq2000-*-*)
       SIM_ARCH(iq2000)
       ;;
   lm32-*-*)
       SIM_ARCH(lm32)
       ;;
   m32c-*-*)
       SIM_ARCH(m32c)
       ;;
   m32r-*-*)
       SIM_ARCH(m32r)
       ;;
   m68hc11-*-*|m6811-*-*)
       SIM_ARCH(m68hc11)
       ;;
   mcore-*-*)
       SIM_ARCH(mcore)
       ;;
   microblaze-*-*)
       SIM_ARCH(microblaze)
       ;;
   mips*-*-*)
       SIM_ARCH(mips)
       sim_igen=yes
       ;;
   mn10300*-*-*)
       SIM_ARCH(mn10300)
       sim_igen=yes
       ;;
   moxie-*-*)
       SIM_ARCH(moxie)
       ;;
   msp430*-*-*)
       SIM_ARCH(msp430)
       ;;
   rl78-*-*)
       SIM_ARCH(rl78)
       ;;
   rx-*-*)
       SIM_ARCH(rx)
       ;;
   sh64*-*-*)
       SIM_ARCH(sh64)
       ;;
   sh*-*-*)
       SIM_ARCH(sh)
       ;;
   sparc-*-rtems*|sparc-*-elf*)
       SIM_ARCH(erc32)
       ;;
   powerpc*-*-*)
       SIM_ARCH(ppc)
       ;;
   ft32-*-*)
       SIM_ARCH(ft32)
       ;;
   v850*-*-*)
       SIM_ARCH(v850)
       sim_igen=yes
       ;;
esac
AC_SUBST(sim_arch)