[all-commits] [llvm/llvm-project] 22d7be: [PPCISelLowering] Avoid emitting calls to __multi3...
Martin Storsjö via All-commits
all-commits at lists.llvm.org
Tue Apr 5 21:45:20 PDT 2022
Branch: refs/heads/release/14.x
Home: https://github.com/llvm/llvm-project
Commit: 22d7bee01a5af14e16e3ecc610e8e50e072385bc
https://github.com/llvm/llvm-project/commit/22d7bee01a5af14e16e3ecc610e8e50e072385bc
Author: Aaron Puchert <aaronpuchert at alice-dsl.net>
Date: 2022-04-05 (Tue, 05 Apr 2022)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/test/CodeGen/PowerPC/overflow-intrinsic-optimizations.ll
M llvm/test/CodeGen/PowerPC/umulo-128-legalisation-lowering.ll
M llvm/test/CodeGen/PowerPC/urem-seteq-illegal-types.ll
Log Message:
-----------
[PPCISelLowering] Avoid emitting calls to __multi3, __muloti4
After D108936, @llvm.smul.with.overflow.i64 was lowered to __multi3
instead of __mulodi4, which also doesn't exist on PowerPC 32-bit, not
even with compiler-rt. Block it as well so that we get inline code.
Because libgcc doesn't have __muloti4, we block that as well.
Fixes #54460.
Reviewed By: craig.topper
Differential Revision: https://reviews.llvm.org/D122090
Commit: db07d9f098b3c8f180c1f3d2d21b509bc6e94113
https://github.com/llvm/llvm-project/commit/db07d9f098b3c8f180c1f3d2d21b509bc6e94113
Author: Fangrui Song <i at maskray.me>
Date: 2022-04-05 (Tue, 05 Apr 2022)
Changed paths:
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/test/MC/ELF/gnu-unique.s
Log Message:
-----------
[MC] Fix llvm_unreachable when a STB_GNU_UNIQUE symbol needs a relocation
STB_GNU_UNIQUE should be treated in a way similar to STB_GLOBAL.
This fixes an "Invalid Binding" failure in an LLVM_ENABLE_ASSERTIONS=on build
for source files like glibc elf/tst-unique1mod1.c .
This bug has been benign so far because (a) Clang does not produce
%gnu_unique_object by itself (b) a non-assertion build likely picks the
STB_GLOBAL code path anyway.
(cherry picked from commit 6bdad85b26fbfd064772f2b382b27fbbf0b0afce)
Commit: a4681df0202cd4967ee499c6ee640b0d09263971
https://github.com/llvm/llvm-project/commit/a4681df0202cd4967ee499c6ee640b0d09263971
Author: Martin Storsjö <martin at martin.st>
Date: 2022-04-05 (Tue, 05 Apr 2022)
Changed paths:
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.inserters.arithmetic/pointer.volatile.pass.cpp
Log Message:
-----------
[libcxx] [test] Avoid spurious test breakage in clang-cl-dll configs with newer CMake
The pointer.volatile.pass.cpp test was already marked as XFAIL for
mingw-dll (for reasons explained in the comment above it).
The same issue also appears in clang-cl-dll when built with newer
CMake versions. (It didn't appear with older versions of CMake, as
CMake built the library with the clang-cl flag `-std:c++latest` when
we've requested C++ 20 - which practically built it in c++2b mode with
current clang versions. With current versions of CMake, it passes
`-std:c++20` instead.)
As it succeeds/fails dependent on factors we don't
directly control, mark it as UNSUPPORTED instead of XFAIL.
Differential Revision: https://reviews.llvm.org/D122718
(cherry picked from commit b048397db8027fedf9380e7cf9213239d558fa29)
Compare: https://github.com/llvm/llvm-project/compare/23d08271a4b2...a4681df0202c
More information about the All-commits
mailing list