Message ID | 20230831124810.20058-1-yangyujie@loongson.cn |
---|---|
Headers | show |
Series | LoongArch: target configuration interface update | expand |
Pushed to r14-3665. 在 2023/8/31 下午8:48, Yang Yujie 写道: > This is an update of > https://gcc.gnu.org/pipermail/gcc-patches/2023-August/628772.html > > Changes since the last patchset: > > 1. Fix texinfo format of the install.texi document. > 2. Add documentation for --with-strict-align-lib. > > v1 -> v2: > 1. Add new configure option --with-strict-align-lib to control > whether -mstrict-align should be used when building libraries. > This facilitates building toolchains targeting both LA264 > (Loongson 2k1000la) and non-LA264 cores. > > 2. Define preprocessing macros __loongarch_sx / __loongarch_asx > / __loongarch_simd_width that indicates the enabled SIMD > extensions. > > 3. Keep the current non-symmetric multidir layout, but do not build > duplicate multilib variants with the same ABI option. Make > --with-abi= obsolete to ensure a consistent directory layout. > (ABI type of the "toplevel" libraries can be inferred from the > target triplet) > > 4. Using "-mno-lasx" do not cause a fallback to "-msimd=none" as > long as the -march= architecture or the default --with-simd= > setting has LSX support. > > Yang Yujie (4): > LoongArch: improved target configuration interface > LoongArch: define preprocessing macros "__loongarch_{arch,tune}" > LoongArch: add new configure option --with-strict-align-lib > LoongArch: support loongarch*-elf target > > config-ml.in | 10 + > gcc/config.gcc | 408 ++++++++++-------- > gcc/config/loongarch/elf.h | 52 +++ > .../loongarch/genopts/loongarch-strings | 8 +- > gcc/config/loongarch/genopts/loongarch.opt.in | 62 ++- > gcc/config/loongarch/la464.md | 32 +- > gcc/config/loongarch/loongarch-c.cc | 22 +- > gcc/config/loongarch/loongarch-cpu.cc | 263 ++++++----- > gcc/config/loongarch/loongarch-cpu.h | 3 +- > gcc/config/loongarch/loongarch-def.c | 67 +-- > gcc/config/loongarch/loongarch-def.h | 57 +-- > gcc/config/loongarch/loongarch-driver.cc | 208 +++++---- > gcc/config/loongarch/loongarch-driver.h | 40 +- > gcc/config/loongarch/loongarch-opts.cc | 372 +++++++++++----- > gcc/config/loongarch/loongarch-opts.h | 59 +-- > gcc/config/loongarch/loongarch-str.h | 7 +- > gcc/config/loongarch/loongarch.cc | 87 ++-- > gcc/config/loongarch/loongarch.opt | 60 ++- > gcc/config/loongarch/t-linux | 32 +- > gcc/doc/install.texi | 56 ++- > gcc/doc/invoke.texi | 32 +- > libgcc/config.host | 9 +- > 22 files changed, 1261 insertions(+), 685 deletions(-) > create mode 100644 gcc/config/loongarch/elf.h >