public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH 00/10] ARC: Add support for NPS400 variant
@ 2016-03-04 13:25 Andrew Burgess
  2016-03-04 13:25 ` [PATCH 01/10] gcc: Add support for mellanox nps400 arc variant Andrew Burgess
                   ` (17 more replies)
  0 siblings, 18 replies; 46+ messages in thread
From: Andrew Burgess @ 2016-03-04 13:25 UTC (permalink / raw)
  To: gcc-patches; +Cc: noamca, Claudiu.Zissulescu, Andrew Burgess

The NPS400 is an ARC700 variant from Mellanox (formally EZChip).

This patch series adds a new GCC build target with the mellanox vendor
string, that configures the ARC backend to support NPS400.

This patch series is intended for GCC 7, Stage 1, once it reopens.  I
am posting early in the hope that I could get an early review,
especially on patch #1, the build infrastructure, then if I need to
rework anything I can get started on it sooner.

I've run regression tests against a standard arc-elf target, and the
results look good.

All feedback appreciated.

Thanks,
Andrew

---

Andrew Burgess (10):
  gcc: Add support for mellanox nps400 arc variant
  gcc/arc: Add -munaligned-access option for nps400
  gcc/arc: generate jump tables in code section for nps400
  gcc/arc: Replace rI constraint with r & Cm2 for ld and update insns
  gcc/arc: convert some constraints to define_constraint
  gcc/arc: Add support for nps400 cmem xld/xst instructions
  gcc/arc: Add nps400 bitops support
  gcc/arc: Mask integer 'L' operands to 32-bit
  gcc/arc: Add an nps400 specific testcase
  gcc/arc: Add __NPS400__ define for nps400 targets

 gcc/ChangeLog.NPS400                      | 122 +++++++
 gcc/config.gcc                            |  10 +
 gcc/config/arc/arc.c                      |  67 +++-
 gcc/config/arc/arc.h                      |  35 +-
 gcc/config/arc/arc.md                     | 567 +++++++++++++++++++++++-------
 gcc/config/arc/arc.opt                    |  14 +-
 gcc/config/arc/constraints.md             |  86 ++++-
 gcc/config/arc/predicates.md              |  19 +
 gcc/config/arc/t-nps400                   |  21 ++
 gcc/testsuite/ChangeLog.NPS400            |  44 +++
 gcc/testsuite/gcc.target/arc/cmem-1.c     |  10 +
 gcc/testsuite/gcc.target/arc/cmem-2.c     |  10 +
 gcc/testsuite/gcc.target/arc/cmem-3.c     |  10 +
 gcc/testsuite/gcc.target/arc/cmem-4.c     |  10 +
 gcc/testsuite/gcc.target/arc/cmem-5.c     |  10 +
 gcc/testsuite/gcc.target/arc/cmem-6.c     |  10 +
 gcc/testsuite/gcc.target/arc/cmem-7.c     |  26 ++
 gcc/testsuite/gcc.target/arc/cmem-ld.inc  |  16 +
 gcc/testsuite/gcc.target/arc/cmem-st.inc  |  18 +
 gcc/testsuite/gcc.target/arc/extzv-1.c    |  11 +
 gcc/testsuite/gcc.target/arc/insv-1.c     |  21 ++
 gcc/testsuite/gcc.target/arc/insv-2.c     |  18 +
 gcc/testsuite/gcc.target/arc/movb-1.c     |  13 +
 gcc/testsuite/gcc.target/arc/movb-2.c     |  13 +
 gcc/testsuite/gcc.target/arc/movb-3.c     |  13 +
 gcc/testsuite/gcc.target/arc/movb-4.c     |  13 +
 gcc/testsuite/gcc.target/arc/movb-5.c     |  13 +
 gcc/testsuite/gcc.target/arc/movb_cl-1.c  |   9 +
 gcc/testsuite/gcc.target/arc/movb_cl-2.c  |  11 +
 gcc/testsuite/gcc.target/arc/movbi_cl-1.c |   9 +
 gcc/testsuite/gcc.target/arc/movh_cl-1.c  |  27 ++
 gcc/testsuite/gcc.target/arc/movl-1.c     |  17 +
 gcc/testsuite/gcc.target/arc/mrgb-1.c     |  14 +
 gcc/testsuite/gcc.target/arc/nps400-1.c   |  23 ++
 gcc/testsuite/gcc.target/arc/setmem-1.c   |  13 +
 gcc/testsuite/gcc.target/arc/setmem-2.c   |  18 +
 gcc/testsuite/gcc.target/arc/setmem-3.c   |  13 +
 gcc/testsuite/gcc.target/arc/setmem-4.c   |  18 +
 38 files changed, 1231 insertions(+), 161 deletions(-)
 create mode 100644 gcc/config/arc/t-nps400
 create mode 100644 gcc/testsuite/ChangeLog.NPS400
 create mode 100644 gcc/testsuite/gcc.target/arc/cmem-1.c
 create mode 100644 gcc/testsuite/gcc.target/arc/cmem-2.c
 create mode 100644 gcc/testsuite/gcc.target/arc/cmem-3.c
 create mode 100644 gcc/testsuite/gcc.target/arc/cmem-4.c
 create mode 100644 gcc/testsuite/gcc.target/arc/cmem-5.c
 create mode 100644 gcc/testsuite/gcc.target/arc/cmem-6.c
 create mode 100644 gcc/testsuite/gcc.target/arc/cmem-7.c
 create mode 100644 gcc/testsuite/gcc.target/arc/cmem-ld.inc
 create mode 100644 gcc/testsuite/gcc.target/arc/cmem-st.inc
 create mode 100644 gcc/testsuite/gcc.target/arc/extzv-1.c
 create mode 100644 gcc/testsuite/gcc.target/arc/insv-1.c
 create mode 100644 gcc/testsuite/gcc.target/arc/insv-2.c
 create mode 100644 gcc/testsuite/gcc.target/arc/movb-1.c
 create mode 100644 gcc/testsuite/gcc.target/arc/movb-2.c
 create mode 100644 gcc/testsuite/gcc.target/arc/movb-3.c
 create mode 100644 gcc/testsuite/gcc.target/arc/movb-4.c
 create mode 100644 gcc/testsuite/gcc.target/arc/movb-5.c
 create mode 100644 gcc/testsuite/gcc.target/arc/movb_cl-1.c
 create mode 100644 gcc/testsuite/gcc.target/arc/movb_cl-2.c
 create mode 100644 gcc/testsuite/gcc.target/arc/movbi_cl-1.c
 create mode 100644 gcc/testsuite/gcc.target/arc/movh_cl-1.c
 create mode 100644 gcc/testsuite/gcc.target/arc/movl-1.c
 create mode 100644 gcc/testsuite/gcc.target/arc/mrgb-1.c
 create mode 100644 gcc/testsuite/gcc.target/arc/nps400-1.c
 create mode 100644 gcc/testsuite/gcc.target/arc/setmem-1.c
 create mode 100644 gcc/testsuite/gcc.target/arc/setmem-2.c
 create mode 100644 gcc/testsuite/gcc.target/arc/setmem-3.c
 create mode 100644 gcc/testsuite/gcc.target/arc/setmem-4.c

-- 
2.6.4

^ permalink raw reply	[flat|nested] 46+ messages in thread

end of thread, other threads:[~2016-11-16 11:44 UTC | newest]

Thread overview: 46+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-04 13:25 [PATCH 00/10] ARC: Add support for NPS400 variant Andrew Burgess
2016-03-04 13:25 ` [PATCH 01/10] gcc: Add support for mellanox nps400 arc variant Andrew Burgess
2016-03-04 13:26 ` [PATCH 07/10] gcc/arc: Add nps400 bitops support Andrew Burgess
2016-03-04 13:26 ` [PATCH 10/10] gcc/arc: Add __NPS400__ define for nps400 targets Andrew Burgess
2016-03-04 13:26 ` [PATCH 02/10] gcc/arc: Add -munaligned-access option for nps400 Andrew Burgess
2016-03-04 13:26 ` [PATCH 06/10] gcc/arc: Add support for nps400 cmem xld/xst instructions Andrew Burgess
2016-03-04 13:26 ` [PATCH 05/10] gcc/arc: convert some constraints to define_constraint Andrew Burgess
2016-03-04 13:26 ` [PATCH 08/10] gcc/arc: Mask integer 'L' operands to 32-bit Andrew Burgess
2016-03-04 13:26 ` [PATCH 03/10] gcc/arc: generate jump tables in code section for nps400 Andrew Burgess
2016-03-04 13:26 ` [PATCH 09/10] gcc/arc: Add an nps400 specific testcase Andrew Burgess
2016-03-04 13:26 ` [PATCH 04/10] gcc/arc: Replace rI constraint with r & Cm2 for ld and update insns Andrew Burgess
2016-04-21 11:39 ` [PATCHv2 2/7] " Andrew Burgess
2016-04-28 17:07   ` Joern Wolfgang Rennecke
2016-04-29 11:59     ` Andrew Burgess
2016-04-29 12:09       ` Joern Wolfgang Rennecke
2016-04-21 11:39 ` [PATCHv2 0/7] ARC: Add support for nps400 variant Andrew Burgess
2016-04-28 15:31   ` Joern Wolfgang Rennecke
2016-04-28 16:55     ` Joern Wolfgang Rennecke
2016-04-29  9:04       ` Claudiu Zissulescu
2016-04-29 10:22         ` Andrew Burgess
2016-04-29 22:17         ` Andrew Burgess
2016-05-02  9:02           ` Claudiu Zissulescu
2016-05-03 10:56             ` Andrew Burgess
2016-05-12 11:30               ` Claudiu Zissulescu
2016-06-14 18:46               ` Joern Wolfgang Rennecke
2016-06-14 23:38                 ` [PATCH 1/2] gcc/arc: New peephole2 and little endian arc test fixes Andrew Burgess
2016-06-14 23:38                 ` [PATCH 2/2] gcc/genrecog: Don't warn for missing mode on special predicates Andrew Burgess
2016-06-15 18:08                   ` Richard Sandiford
2016-06-30 13:38                     ` Andrew Burgess
2016-07-04  8:47                       ` Richard Sandiford
2016-07-06 19:43                         ` Andrew Burgess
2016-07-13 22:19                           ` Jeff Law
2016-06-14 23:38                 ` [PATCH 0/2] Arc fixes and genrecog warning fix Andrew Burgess
2016-11-16 11:44           ` [PATCHv2 0/7] ARC: Add support for nps400 variant Claudiu Zissulescu
2016-04-21 11:39 ` [PATCHv2 3/7] gcc/arc: convert some constraints to define_constraint Andrew Burgess
2016-04-28 17:16   ` Joern Wolfgang Rennecke
2016-04-21 11:40 ` [PATCHv2 4/7] gcc/arc: Add support for nps400 cmem xld/xst instructions Andrew Burgess
2016-04-28 18:23   ` Joern Wolfgang Rennecke
2016-04-21 11:40 ` [PATCHv2 1/7] gcc/arc: Add support for nps400 cpu type Andrew Burgess
2016-04-28 17:07   ` Joern Wolfgang Rennecke
2016-04-21 11:40 ` [PATCHv2 6/7] gcc/arc: Mask integer 'L' operands to 32-bit Andrew Burgess
2016-04-28 19:09   ` Joern Wolfgang Rennecke
2016-04-21 11:40 ` [PATCHv2 5/7] gcc/arc: Add nps400 bitops support Andrew Burgess
2016-04-28 18:50   ` Joern Wolfgang Rennecke
2016-04-21 11:40 ` [PATCHv2 7/7] gcc/arc: Add an nps400 specific testcase Andrew Burgess
2016-04-28 19:14   ` Joern Wolfgang Rennecke

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).