Currently, the following items are supported:

        __attribute__ ((target ("{no-}strict-align")))
        __attribute__ ((target ("cmodel=")))
        __attribute__ ((target ("arch=")))
        __attribute__ ((target ("tune=")))
        __attribute__ ((target ("{no-}lsx")))
        __attribute__ ((target ("{no-}lasx")))



Lulu Cheng (2):
  LoongArch: Implement target attribute.
  LoongArch: Implement target pragma.

 gcc/attr-urls.def                             |   6 +
 gcc/config.gcc                                |   2 +-
 gcc/config/loongarch/loongarch-protos.h       |   5 +
 gcc/config/loongarch/loongarch-target-attr.cc | 472 ++++++++++++++++++
 gcc/config/loongarch/loongarch.cc             |  41 +-
 gcc/config/loongarch/loongarch.h              |   2 +
 gcc/config/loongarch/t-loongarch              |   6 +
 gcc/doc/extend.texi                           |  62 +++
 .../gcc.target/loongarch/arch-func-attr-1.c   |  20 +
 .../gcc.target/loongarch/arch-pragma-attr-1.c |   7 +
 .../loongarch/attr-check-error-message.c      |  30 ++
 .../gcc.target/loongarch/cmodel-func-attr-1.c |  21 +
 .../loongarch/cmodel-pragma-attr-1.c          |   7 +
 .../gcc.target/loongarch/lasx-func-attr-1.c   |  19 +
 .../gcc.target/loongarch/lasx-func-attr-2.c   |  12 +
 .../gcc.target/loongarch/lasx-pragma-attr-1.c |   7 +
 .../gcc.target/loongarch/lasx-pragma-attr-2.c |  12 +
 .../gcc.target/loongarch/lsx-func-attr-1.c    |  19 +
 .../gcc.target/loongarch/lsx-func-attr-2.c    |  12 +
 .../gcc.target/loongarch/lsx-pragma-attr-1.c  |   7 +
 .../gcc.target/loongarch/lsx-pragma-attr-2.c  |  12 +
 .../gcc.target/loongarch/pragma-push-pop.c    |  22 +
 .../loongarch/strict_align-func-attr-1.c      |  21 +
 .../loongarch/strict_align-func-attr-2.c      |  21 +
 .../loongarch/strict_align-pragma-attr-1.c    |   7 +
 .../loongarch/strict_align-pragma-attr-2.c    |   7 +
 .../gcc.target/loongarch/vector-func-attr-1.c |  19 +
 .../loongarch/vector-pragma-attr-1.c          |   7 +
 28 files changed, 875 insertions(+), 10 deletions(-)
 create mode 100644 gcc/config/loongarch/loongarch-target-attr.cc
 create mode 100644 gcc/testsuite/gcc.target/loongarch/arch-func-attr-1.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/arch-pragma-attr-1.c
 create mode 100644 
gcc/testsuite/gcc.target/loongarch/attr-check-error-message.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/cmodel-func-attr-1.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/cmodel-pragma-attr-1.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/lasx-func-attr-1.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/lasx-func-attr-2.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/lasx-pragma-attr-1.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/lasx-pragma-attr-2.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/lsx-func-attr-1.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/lsx-func-attr-2.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/lsx-pragma-attr-1.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/lsx-pragma-attr-2.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/pragma-push-pop.c
 create mode 100644 
gcc/testsuite/gcc.target/loongarch/strict_align-func-attr-1.c
 create mode 100644 
gcc/testsuite/gcc.target/loongarch/strict_align-func-attr-2.c
 create mode 100644 
gcc/testsuite/gcc.target/loongarch/strict_align-pragma-attr-1.c
 create mode 100644 
gcc/testsuite/gcc.target/loongarch/strict_align-pragma-attr-2.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/vector-func-attr-1.c
 create mode 100644 gcc/testsuite/gcc.target/loongarch/vector-pragma-attr-1.c

-- 
2.34.1

Reply via email to