[PATCHv3 00/55] Replace the Power target-specific builtin machinery

Bill Schmidt wschmidt@linux.ibm.com
Tue Jul 13 13:52:56 GMT 2021


Ping^2

On 6/25/21 10:25 AM, Bill Schmidt wrote:
> Ping / beg  :-)
>
> On 6/17/21 10:18 AM, Bill Schmidt via Gcc-patches wrote:
>> Original patch series here:
>> https://gcc.gnu.org/pipermail/gcc-patches/2021-April/568840.html
>>
>> V2 patch series here:
>> https://gcc.gnu.org/pipermail/gcc-patches/2021-June/572231.html
>>
>> I've made some slight changes to the V2 series because of recent updates
>> to trunk from Carl Love and Peter Bergner.  Carl added some new P10
>> builtins, and Peter made some changes to the MMA builtins.  This series
>> is compatible with all builtins that are currently upstream.
>>
>> As a reminder, as a result of reviews, the original patch 0001 has been
>> dropped, so the patch numbering is off by one compared with the original
>> series.  Status of the remaining patches (using new numbering):
>>
>> 0001: Approved
>> 0002: Approved
>> 0003: Approved
>> 0004: Approved
>> 0005: Needs re-review
>> 0006: Approved
>> 0007: Approved
>> 0008: Approved
>> 0009: Approved
>> 0010-0055: Not yet reviewed
>>
>> Thanks again for the ongoing reviews!
>>
>> Bill
>>
>> Bill Schmidt (55):
>>     Support scanning of build-time GC roots in gengtype
>>     rs6000: Initial create of rs6000-gen-builtins.c
>>     rs6000: Add initial input files
>>     rs6000: Add file support and functions for diagnostic support
>>     rs6000: Add helper functions for parsing
>>     rs6000: Add functions for matching types, part 1 of 3
>>     rs6000: Add functions for matching types, part 2 of 3
>>     rs6000: Add functions for matching types, part 3 of 3
>>     rs6000: Red-black tree implementation for balanced tree search
>>     rs6000: Main function with stubs for parsing and output
>>     rs6000: Parsing built-in input file, part 1 of 3
>>     rs6000: Parsing built-in input file, part 2 of 3
>>     rs6000: Parsing built-in input file, part 3 of 3
>>     rs6000: Parsing of overload input file
>>     rs6000: Build and store function type identifiers
>>     rs6000: Write output to the builtin definition include file
>>     rs6000: Write output to the builtins header file
>>     rs6000: Write output to the builtins init file, part 1 of 3
>>     rs6000: Write output to the builtins init file, part 2 of 3
>>     rs6000: Write output to the builtins init file, part 3 of 3
>>     rs6000: Write static initializations for built-in table
>>     rs6000: Write static initializations for overload tables
>>     rs6000: Incorporate new builtins code into the build machinery
>>     rs6000: Add gengtype handling to the build machinery
>>     rs6000: Add the rest of the [altivec] stanza to the builtins file
>>     rs6000: Add VSX builtins
>>     rs6000: Add available-everywhere and ancient builtins
>>     rs6000: Add power7 and power7-64 builtins
>>     rs6000: Add power8-vector builtins
>>     rs6000: Add Power9 builtins
>>     rs6000: Add more type nodes to support builtin processing
>>     rs6000: Add Power10 builtins
>>     rs6000: Add MMA builtins
>>     rs6000: Add miscellaneous builtins
>>     rs6000: Add Cell builtins
>>     rs6000: Add remaining overloads
>>     rs6000: Execute the automatic built-in initialization code
>>     rs6000: Darwin builtin support
>>     rs6000: Add sanity to V2DI_type_node definitions
>>     rs6000: Always initialize vector_pair and vector_quad nodes
>>     rs6000: Handle overloads during program parsing
>>     rs6000: Handle gimple folding of target built-ins
>>     rs6000: Support for vectorizing built-in functions
>>     rs6000: Builtin expansion, part 1
>>     rs6000: Builtin expansion, part 2
>>     rs6000: Builtin expansion, part 3
>>     rs6000: Builtin expansion, part 4
>>     rs6000: Builtin expansion, part 5
>>     rs6000: Builtin expansion, part 6
>>     rs6000: Update rs6000_builtin_decl
>>     rs6000: Miscellaneous uses of rs6000_builtin_decls_x
>>     rs6000: Debug support
>>     rs6000: Update altivec.h for automated interfaces
>>     rs6000: Test case adjustments
>>     rs6000: Enable the new builtin support
>>
>>    gcc/Makefile.in                               |    5 +-
>>    gcc/config.gcc                                |    2 +
>>    gcc/config/rs6000/altivec.h                   |  522 +-
>>    gcc/config/rs6000/darwin.h                    |    8 +-
>>    gcc/config/rs6000/rbtree.c                    |  242 +
>>    gcc/config/rs6000/rbtree.h                    |   52 +
>>    gcc/config/rs6000/rs6000-builtin-new.def      | 3998 +++++++++++
>>    gcc/config/rs6000/rs6000-c.c                  | 1083 +++
>>    gcc/config/rs6000/rs6000-call.c               | 3399 ++++++++-
>>    gcc/config/rs6000/rs6000-gen-builtins.c       | 2984 ++++++++
>>    gcc/config/rs6000/rs6000-overload.def         | 6186 +++++++++++++++++
>>    gcc/config/rs6000/rs6000.c                    |  219 +-
>>    gcc/config/rs6000/rs6000.h                    |   84 +
>>    gcc/config/rs6000/t-rs6000                    |   45 +-
>>    gcc/gengtype-state.c                          |   32 +-
>>    gcc/gengtype.c                                |   22 +-
>>    gcc/gengtype.h                                |    5 +
>>    .../powerpc/bfp/scalar-extract-exp-2.c        |    2 +-
>>    .../powerpc/bfp/scalar-extract-sig-2.c        |    2 +-
>>    .../powerpc/bfp/scalar-insert-exp-2.c         |    2 +-
>>    .../powerpc/bfp/scalar-insert-exp-5.c         |    2 +-
>>    .../powerpc/bfp/scalar-insert-exp-8.c         |    2 +-
>>    .../powerpc/bfp/scalar-test-neg-2.c           |    2 +-
>>    .../powerpc/bfp/scalar-test-neg-3.c           |    2 +-
>>    .../powerpc/bfp/scalar-test-neg-5.c           |    2 +-
>>    .../gcc.target/powerpc/byte-in-set-2.c        |    2 +-
>>    gcc/testsuite/gcc.target/powerpc/cmpb-2.c     |    2 +-
>>    gcc/testsuite/gcc.target/powerpc/cmpb32-2.c   |    2 +-
>>    .../gcc.target/powerpc/crypto-builtin-2.c     |   14 +-
>>    .../powerpc/fold-vec-splat-floatdouble.c      |    4 +-
>>    .../powerpc/fold-vec-splat-longlong.c         |   10 +-
>>    .../powerpc/fold-vec-splat-misc-invalid.c     |    8 +-
>>    .../gcc.target/powerpc/int_128bit-runnable.c  |    6 +-
>>    .../gcc.target/powerpc/p8vector-builtin-8.c   |    1 +
>>    gcc/testsuite/gcc.target/powerpc/pr80315-1.c  |    2 +-
>>    gcc/testsuite/gcc.target/powerpc/pr80315-2.c  |    2 +-
>>    gcc/testsuite/gcc.target/powerpc/pr80315-3.c  |    2 +-
>>    gcc/testsuite/gcc.target/powerpc/pr80315-4.c  |    2 +-
>>    gcc/testsuite/gcc.target/powerpc/pr88100.c    |   12 +-
>>    .../gcc.target/powerpc/pragma_misc9.c         |    2 +-
>>    .../gcc.target/powerpc/pragma_power8.c        |    2 +
>>    .../gcc.target/powerpc/pragma_power9.c        |    3 +
>>    .../powerpc/test_fpscr_drn_builtin_error.c    |    4 +-
>>    .../powerpc/test_fpscr_rn_builtin_error.c     |   12 +-
>>    gcc/testsuite/gcc.target/powerpc/test_mffsl.c |    3 +-
>>    gcc/testsuite/gcc.target/powerpc/vec-gnb-2.c  |    2 +-
>>    .../gcc.target/powerpc/vsu/vec-all-nez-7.c    |    2 +-
>>    .../gcc.target/powerpc/vsu/vec-any-eqz-7.c    |    2 +-
>>    .../gcc.target/powerpc/vsu/vec-cmpnez-7.c     |    2 +-
>>    .../gcc.target/powerpc/vsu/vec-cntlz-lsbb-2.c |    2 +-
>>    .../gcc.target/powerpc/vsu/vec-cnttz-lsbb-2.c |    2 +-
>>    .../gcc.target/powerpc/vsu/vec-xl-len-13.c    |    2 +-
>>    .../gcc.target/powerpc/vsu/vec-xst-len-12.c   |    2 +-
>>    53 files changed, 18183 insertions(+), 832 deletions(-)
>>    create mode 100644 gcc/config/rs6000/rbtree.c
>>    create mode 100644 gcc/config/rs6000/rbtree.h
>>    create mode 100644 gcc/config/rs6000/rs6000-builtin-new.def
>>    create mode 100644 gcc/config/rs6000/rs6000-gen-builtins.c
>>    create mode 100644 gcc/config/rs6000/rs6000-overload.def
>>


More information about the Gcc-patches mailing list