[all-commits] [llvm/llvm-project] 969281: [update_(llc_)test_checks.py] Support pre-processi...

Alexander Richardson via All-commits all-commits at lists.llvm.org
Wed Apr 28 04:23:47 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9692811b264600b7fcb52a1f4fcf938d198567cb
      https://github.com/llvm/llvm-project/commit/9692811b264600b7fcb52a1f4fcf938d198567cb
  Author: Alex Richardson <Alexander.Richardson at cl.cam.ac.uk>
  Date:   2021-04-28 (Wed, 28 Apr 2021)

  Changed paths:
    A llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/pre-process.ll
    A llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/pre-process.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_llc_test_checks/pre-process.test
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/pre-process.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/pre-process.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/pre-process.test
    M llvm/utils/UpdateTestChecks/common.py
    M llvm/utils/update_llc_test_checks.py
    M llvm/utils/update_test_checks.py

  Log Message:
  -----------
  [update_(llc_)test_checks.py] Support pre-processing commands

This has been rather useful in our downstream CHERI target where we want
to run tests both with addrspace(0) and addrspace(200) pointers.
With this patch we can prefix the opt command with
`sed -e 's/addrspace(200)/addrspace(0)/g' -e 's/-A200-P200-G200//g'` to
test both cases using the same IR input.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D95137


  Commit: 777ca513c864fa02292ac255185ea1b0589fc288
      https://github.com/llvm/llvm-project/commit/777ca513c864fa02292ac255185ea1b0589fc288
  Author: Alex Richardson <Alexander.Richardson at cl.cam.ac.uk>
  Date:   2021-04-28 (Wed, 28 Apr 2021)

  Changed paths:
    M compiler-rt/lib/builtins/comparedf2.c
    M compiler-rt/lib/builtins/comparesf2.c
    M compiler-rt/lib/builtins/comparetf2.c
    A compiler-rt/lib/builtins/fp_compare_impl.inc

  Log Message:
  -----------
  [builtins] Fix ABI-incompatibility with GCC for floating-point compare

While implementing support for the float128 routines on x86_64, I noticed
that __builtin_isinf() was returning true for 128-bit floating point
values that are not infinite when compiling with GCC and using the
compiler-rt implementation of the soft-float comparison functions.
After stepping through the assembly, I discovered that this was caused by
GCC assuming a sign-extended 64-bit -1 result, but our implementation
returns an enum (which then has zeroes in the upper bits) and therefore
causes the comparison with -1 to fail.

Fix this by using a CMP_RESULT typedef and add a static_assert that it
matches the GCC soft-float comparison return type when compiling with GCC
(GCC has a __libgcc_cmp_return__ mode that can be used for this purpose).

Also move the 3 copies of the same code to a shared .inc file.

Reviewed By: compnerd

Differential Revision: https://reviews.llvm.org/D98205


  Commit: aed66d278768098a81cd15a4fa6baae18f8ee836
      https://github.com/llvm/llvm-project/commit/aed66d278768098a81cd15a4fa6baae18f8ee836
  Author: Alex Richardson <Alexander.Richardson at cl.cam.ac.uk>
  Date:   2021-04-28 (Wed, 28 Apr 2021)

  Changed paths:
    M lld/ELF/SyntheticSections.cpp

  Log Message:
  -----------
  [ELF] Update URL for MIPS TLS wiki page

The original page no longer works, so use a web.archive.org link instead.

Reviewed By: atanasyan

Differential Revision: https://reviews.llvm.org/D100949


  Commit: 79030a22cc0fce072ec411b167baf154ffee4e0e
      https://github.com/llvm/llvm-project/commit/79030a22cc0fce072ec411b167baf154ffee4e0e
  Author: Alex Richardson <Alexander.Richardson at cl.cam.ac.uk>
  Date:   2021-04-28 (Wed, 28 Apr 2021)

  Changed paths:
    A llvm/test/tools/llvm-objdump/X86/elf-dynamic-relocs-rel.test
    M llvm/test/tools/llvm-objdump/X86/elf-dynamic-relocs.test
    M llvm/tools/llvm-objdump/ELFDump.cpp

  Log Message:
  -----------
  [llvm-objdump] Fix dumping dynamic relative relocations for SHT_REL

Previously printing R_386_RELATIVE relocations would trigger
`error: can't read an entry at 0x40: it goes past the end of the section (0x40)`
I found this while writing a test case for LLD (D100490).
This also includes some minor cleanup in the elf-dynamic-relcos.test
llvm-objdump test based on the newly added test.

Reviewed By: jhenderson, MaskRay

Differential Revision: https://reviews.llvm.org/D100489


Compare: https://github.com/llvm/llvm-project/compare/d0c521da3f0c...79030a22cc0f


More information about the All-commits mailing list