diff options
author | Joseph Myers <joseph@codesourcery.com> | 2006-07-22 08:18:31 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2006-07-22 08:18:31 +0000 |
commit | 0a64f119695536dab8271394d2f90a5c881bbf00 (patch) | |
tree | 9545ecb68a3ee26a3dd9faed9516776d9a016e91 | |
parent | 1e34e75f57a2e9bf642f3c4aeb9a28b71f223459 (diff) |
2006-07-21 Joseph Myers <joseph@codesourcery.com>csl-3_4_3-linux-branch
* gcc/emit-rtl.c (validate_subreg): Disable test for changing size
of floating mode.
2006-07-10 Mark Shinwell <shinwell@codesourcery.com>
* gcc/config/arm/wrs-linux.h (CC1_SPEC, SUBTARGET_EXTRA_ASM_SPEC,
SYSROOT_SUFFIX_SPEC): Add support for iWMMXt2.
* gcc/config/arm/arm.c (all_architectures): Add iWMMXt2 entry.
* gcc/config/arm/t-wrs-linux (MULTILIB_MATCHES): New, for iWMMXt2.
* gcc/config/arm/arm-cores.def: New ARM_CORE entry for iWMMXt2.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/csl-3_4_3-linux-branch@115673 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | ChangeLog.csl | 13 | ||||
-rw-r--r-- | gcc/config/arm/arm-cores.def | 1 | ||||
-rw-r--r-- | gcc/config/arm/arm-tune.md | 2 | ||||
-rw-r--r-- | gcc/config/arm/arm.c | 1 | ||||
-rw-r--r-- | gcc/config/arm/t-wrs-linux | 2 | ||||
-rw-r--r-- | gcc/config/arm/wrs-linux.h | 4 | ||||
-rw-r--r-- | gcc/emit-rtl.c | 2 |
7 files changed, 23 insertions, 2 deletions
diff --git a/ChangeLog.csl b/ChangeLog.csl index c627d0f518d..b36c457644d 100644 --- a/ChangeLog.csl +++ b/ChangeLog.csl @@ -1,3 +1,16 @@ +2006-07-21 Joseph Myers <joseph@codesourcery.com> + + * gcc/emit-rtl.c (validate_subreg): Disable test for changing size + of floating mode. + +2006-07-10 Mark Shinwell <shinwell@codesourcery.com> + + * gcc/config/arm/wrs-linux.h (CC1_SPEC, SUBTARGET_EXTRA_ASM_SPEC, + SYSROOT_SUFFIX_SPEC): Add support for iWMMXt2. + * gcc/config/arm/arm.c (all_architectures): Add iWMMXt2 entry. + * gcc/config/arm/t-wrs-linux (MULTILIB_MATCHES): New, for iWMMXt2. + * gcc/config/arm/arm-cores.def: New ARM_CORE entry for iWMMXt2. + 2006-07-10 Mark Shinwell <shinwell@codesourcery.com> * gcc/config/arm/t-wrs-linux (MULTILIB_OPTIONS, MULTILIB_EXCEPTIONS, diff --git a/gcc/config/arm/arm-cores.def b/gcc/config/arm/arm-cores.def index 338e47cecb5..ac159b038c7 100644 --- a/gcc/config/arm/arm-cores.def +++ b/gcc/config/arm/arm-cores.def @@ -103,6 +103,7 @@ ARM_CORE("arm1020e", arm1020e, 5TE, FL_LDSCHED, fastmul) ARM_CORE("arm1022e", arm1022e, 5TE, FL_LDSCHED, fastmul) ARM_CORE("xscale", xscale, 5TE, FL_LDSCHED | FL_STRONG | FL_XSCALE, xscale) ARM_CORE("iwmmxt", iwmmxt, 5TE, FL_LDSCHED | FL_STRONG | FL_XSCALE | FL_IWMMXT, xscale) +ARM_CORE("iwmmxt2", iwmmxt2, 5TE, FL_LDSCHED | FL_STRONG | FL_XSCALE | FL_IWMMXT, xscale) /* V5TEJ Architecture Processors */ ARM_CORE("arm926ej-s", arm926ejs, 5TEJ, 0, 9e) diff --git a/gcc/config/arm/arm-tune.md b/gcc/config/arm/arm-tune.md index 950cd912982..b201210fa62 100644 --- a/gcc/config/arm/arm-tune.md +++ b/gcc/config/arm/arm-tune.md @@ -1,5 +1,5 @@ ;; -*- buffer-read-only: t -*- ;; Generated automatically by gentune.sh from arm-cores.def (define_attr "tune" - "arm2,arm250,arm3,arm6,arm60,arm600,arm610,arm620,arm7,arm7d,arm7di,arm70,arm700,arm700i,arm710,arm720,arm710c,arm7100,arm7500,arm7500fe,arm7m,arm7dm,arm7dmi,arm8,arm810,strongarm,strongarm110,strongarm1100,strongarm1110,arm7tdmi,arm7tdmis,arm710t,arm720t,arm740t,arm9,arm9tdmi,arm920,arm920t,arm922t,arm940t,ep9312,arm10tdmi,arm1020t,arm9e,arm946es,arm966es,arm968es,arm10e,arm1020e,arm1022e,xscale,iwmmxt,arm926ejs,arm1026ejs,arm1136js,arm1136jfs,arm1176jzs,arm1176jzfs,mpcorenovfp,mpcore" + "arm2,arm250,arm3,arm6,arm60,arm600,arm610,arm620,arm7,arm7d,arm7di,arm70,arm700,arm700i,arm710,arm720,arm710c,arm7100,arm7500,arm7500fe,arm7m,arm7dm,arm7dmi,arm8,arm810,strongarm,strongarm110,strongarm1100,strongarm1110,arm7tdmi,arm7tdmis,arm710t,arm720t,arm740t,arm9,arm9tdmi,arm920,arm920t,arm922t,arm940t,ep9312,arm10tdmi,arm1020t,arm9e,arm946es,arm966es,arm968es,arm10e,arm1020e,arm1022e,xscale,iwmmxt,iwmmxt2,arm926ejs,arm1026ejs,arm1136js,arm1136jfs,arm1176jzs,arm1176jzfs,mpcorenovfp,mpcore" (const (symbol_ref "arm_tune"))) diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 7fd1aa148d5..6ebc28b66ca 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -583,6 +583,7 @@ static const struct processors all_architectures[] = {"armv6zk", arm1176jzs, "6ZK", FL_CO_PROC | FL_FOR_ARCH6ZK, NULL}, {"ep9312", ep9312, "4T", FL_LDSCHED | FL_CIRRUS | FL_FOR_ARCH4, NULL}, {"iwmmxt", iwmmxt, "5TE", FL_LDSCHED | FL_STRONG | FL_FOR_ARCH5TE | FL_XSCALE | FL_IWMMXT , NULL}, + {"iwmmxt2", iwmmxt2, "5TE", FL_LDSCHED | FL_STRONG | FL_FOR_ARCH5TE | FL_XSCALE | FL_IWMMXT , NULL}, {NULL, arm_none, NULL, 0 , NULL} }; diff --git a/gcc/config/arm/t-wrs-linux b/gcc/config/arm/t-wrs-linux index 28e6ca1ec34..2d6b8ad56fd 100644 --- a/gcc/config/arm/t-wrs-linux +++ b/gcc/config/arm/t-wrs-linux @@ -32,6 +32,8 @@ MULTILIB_EXCEPTIONS += *tiwmmxt*/*mfloat-abi=softfp* MULTILIB_EXCEPTIONS += *txscale*/*mfloat-abi=softfp* MULTILIB_EXCEPTIONS += *tarm920t*/*mfloat-abi=softfp* +MULTILIB_MATCHES = tiwmmxt=tiwmmxt2 + # These files must be built for each multilib. EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o diff --git a/gcc/config/arm/wrs-linux.h b/gcc/config/arm/wrs-linux.h index 7bce6e6556c..1d56c9ef924 100644 --- a/gcc/config/arm/wrs-linux.h +++ b/gcc/config/arm/wrs-linux.h @@ -29,6 +29,7 @@ Boston, MA 02111-1307, USA. */ #define CC1_SPEC " \ %{tarm926ej-s: -mcpu=arm926ej-s ; \ tiwmmxt: -mcpu=iwmmxt ; \ + tiwmmxt2: -mcpu=iwmmxt ; \ txscale: -mcpu=xscale -mbig-endian ; \ tarm920t: -mcpu=arm920t } \ %{profile:-p}" @@ -49,7 +50,7 @@ Boston, MA 02111-1307, USA. */ option is SUBTARGET_EXTRA_ASM_SPEC in bpabi.h. */ #undef SUBTARGET_EXTRA_ASM_SPEC #define SUBTARGET_EXTRA_ASM_SPEC \ - "%{tiwmmxt:-mcpu=iwmmxt} %{txscale:-mcpu=xscale -EB} -meabi=4" + "%{tiwmmxt2:-mcpu=iwmmxt2} %{tiwmmxt:-mcpu=iwmmxt} %{txscale:-mcpu=xscale -EB} -meabi=4" /* Translate -tiwmmxt for the linker. */ #undef SUBTARGET_EXTRA_LINK_SPEC @@ -62,6 +63,7 @@ Boston, MA 02111-1307, USA. */ #undef SYSROOT_SUFFIX_SPEC #define SYSROOT_SUFFIX_SPEC \ "%{muclibc:/uclibc}%{tiwmmxt:/tiwmmxt ; \ + tiwmmxt2:/tiwmmxt ; \ txscale:/txscale ; \ tarm920t:/tarm920t}%{mfloat-abi=softfp:/softfp}" diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index 42595a207b7..bffd822038a 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -654,8 +654,10 @@ validate_subreg (enum machine_mode omode, enum machine_mode imode, (subreg:SI (reg:DF) 0) isn't. */ else if (FLOAT_MODE_P (imode) || FLOAT_MODE_P (omode)) { +#if 0 if (isize != osize) return false; +#endif } /* Paradoxical subregs must have offset zero. */ |