public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [COMMITTED 0/9] Small cleanups and improvements for PRU backend
@ 2024-05-07  7:22 Dimitar Dimitrov
  2024-05-07  7:22 ` [COMMITTED 1/9] pru: Implement TARGET_ADDRESS_COST Dimitar Dimitrov
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: Dimitar Dimitrov @ 2024-05-07  7:22 UTC (permalink / raw)
  To: gcc-patches; +Cc: Dimitar Dimitrov

This patch set includes small cleanups and code generation improvements
I implemented during stages 3 and 4.

All patches have been regression-tested individually for pru-unknown-elf
while being developed.  And the entire set was tested again on GCC 15
mainline.

Dimitar Dimitrov (9):
  pru: Implement TARGET_ADDRESS_COST
  pru: Implement zero fill for 64-bit registers
  pru: Optimize the extzv and insv patterns
  pru: Add pattern variants for zero extending destination
  pru: Skip register save if function will not return
  pru: Drop usage of ATTRIBUTE_UNUSED
  pru: Use HOST_WIDE_INT_1U macro
  pru: Refactor to use passes definition file
  pru: New validation pass for minrt

 gcc/config/pru/alu-zext.md                    |  38 +++++-
 gcc/config/pru/pru-passes.cc                  |  96 ++++++++++---
 gcc/config/pru/pru-passes.def                 |  29 ++++
 gcc/config/pru/pru-pragma.cc                  |   2 +-
 gcc/config/pru/pru-protos.h                   |   3 +-
 gcc/config/pru/pru.cc                         |  58 +++++---
 gcc/config/pru/pru.md                         | 128 +++++++++++++++---
 gcc/config/pru/t-pru                          |   2 +
 gcc/testsuite/g++.target/pru/minrt-1.cc       |  10 ++
 gcc/testsuite/g++.target/pru/minrt-2.cc       |  10 ++
 gcc/testsuite/g++.target/pru/minrt-3.cc       |   9 ++
 gcc/testsuite/g++.target/pru/pru.exp          |  34 +++++
 gcc/testsuite/gcc.target/pru/ashiftrt.c       |   2 +-
 gcc/testsuite/gcc.target/pru/extzv-1.c        |  14 ++
 gcc/testsuite/gcc.target/pru/extzv-2.c        |  15 ++
 gcc/testsuite/gcc.target/pru/extzv-3.c        |  13 ++
 gcc/testsuite/gcc.target/pru/insv-1.c         |  14 ++
 gcc/testsuite/gcc.target/pru/insv-2.c         |  14 ++
 gcc/testsuite/gcc.target/pru/insv-3.c         |  14 ++
 gcc/testsuite/gcc.target/pru/insv-4.c         |  14 ++
 gcc/testsuite/gcc.target/pru/minrt-1.c        |  10 ++
 gcc/testsuite/gcc.target/pru/minrt-2.c        |  10 ++
 gcc/testsuite/gcc.target/pru/minrt-3.c        |   9 ++
 gcc/testsuite/gcc.target/pru/mov-0.c          |  19 +++
 .../gcc.target/pru/noreturn-prologue-1.c      |  10 ++
 .../gcc.target/pru/noreturn-prologue-2.c      |  11 ++
 .../gcc.target/pru/zero_extend-op0.c          |  28 ++++
 27 files changed, 549 insertions(+), 67 deletions(-)
 create mode 100644 gcc/config/pru/pru-passes.def
 create mode 100644 gcc/testsuite/g++.target/pru/minrt-1.cc
 create mode 100644 gcc/testsuite/g++.target/pru/minrt-2.cc
 create mode 100644 gcc/testsuite/g++.target/pru/minrt-3.cc
 create mode 100644 gcc/testsuite/g++.target/pru/pru.exp
 create mode 100644 gcc/testsuite/gcc.target/pru/extzv-1.c
 create mode 100644 gcc/testsuite/gcc.target/pru/extzv-2.c
 create mode 100644 gcc/testsuite/gcc.target/pru/extzv-3.c
 create mode 100644 gcc/testsuite/gcc.target/pru/insv-1.c
 create mode 100644 gcc/testsuite/gcc.target/pru/insv-2.c
 create mode 100644 gcc/testsuite/gcc.target/pru/insv-3.c
 create mode 100644 gcc/testsuite/gcc.target/pru/insv-4.c
 create mode 100644 gcc/testsuite/gcc.target/pru/minrt-1.c
 create mode 100644 gcc/testsuite/gcc.target/pru/minrt-2.c
 create mode 100644 gcc/testsuite/gcc.target/pru/minrt-3.c
 create mode 100644 gcc/testsuite/gcc.target/pru/mov-0.c
 create mode 100644 gcc/testsuite/gcc.target/pru/noreturn-prologue-1.c
 create mode 100644 gcc/testsuite/gcc.target/pru/noreturn-prologue-2.c
 create mode 100644 gcc/testsuite/gcc.target/pru/zero_extend-op0.c

-- 
2.45.0


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

end of thread, other threads:[~2024-05-07  7:23 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-05-07  7:22 [COMMITTED 0/9] Small cleanups and improvements for PRU backend Dimitar Dimitrov
2024-05-07  7:22 ` [COMMITTED 1/9] pru: Implement TARGET_ADDRESS_COST Dimitar Dimitrov
2024-05-07  7:22 ` [COMMITTED 2/9] pru: Implement zero fill for 64-bit registers Dimitar Dimitrov
2024-05-07  7:22 ` [COMMITTED 3/9] pru: Optimize the extzv and insv patterns Dimitar Dimitrov
2024-05-07  7:22 ` [COMMITTED 4/9] pru: Add pattern variants for zero extending destination Dimitar Dimitrov
2024-05-07  7:22 ` [COMMITTED 5/9] pru: Skip register save if function will not return Dimitar Dimitrov
2024-05-07  7:22 ` [COMMITTED 6/9] pru: Drop usage of ATTRIBUTE_UNUSED Dimitar Dimitrov
2024-05-07  7:22 ` [COMMITTED 7/9] pru: Use HOST_WIDE_INT_1U macro Dimitar Dimitrov
2024-05-07  7:22 ` [COMMITTED 8/9] pru: Refactor to use passes definition file Dimitar Dimitrov
2024-05-07  7:22 ` [COMMITTED 9/9] pru: New validation pass for minrt Dimitar Dimitrov

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).