Skip to content

[M68k] Use ISD::getSetCCInverse instead of ISD::GlobalISel::getSetCCInverse. NFCI - #216871

Open
topperc wants to merge 1 commit into
llvm:mainfrom
topperc:pr/setccinverse
Open

[M68k] Use ISD::getSetCCInverse instead of ISD::GlobalISel::getSetCCInverse. NFCI#216871
topperc wants to merge 1 commit into
llvm:mainfrom
topperc:pr/setccinverse

Conversation

@topperc

@topperc topperc commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

It's odd to use a GlobalISel named function in SelectionDAG code. This code path isn't exercised by lit, but I think this should be equivalent.

…nverse. NFCI

It's odd to use a GlobalISel named function in SelectionDAG code.
This code path isn't exercised by lit, but I think this should be
equivalent.
@llvmorg-github-actions

Copy link
Copy Markdown

@llvm/pr-subscribers-backend-m68k

Author: Craig Topper (topperc)

Changes

It's odd to use a GlobalISel named function in SelectionDAG code. This code path isn't exercised by lit, but I think this should be equivalent.


Full diff: https://github.com/llvm/llvm-project/pull/216871.diff

1 Files Affected:

  • (modified) llvm/lib/Target/M68k/M68kISelLowering.cpp (+1-1)
diff --git a/llvm/lib/Target/M68k/M68kISelLowering.cpp b/llvm/lib/Target/M68k/M68kISelLowering.cpp
index 18e974e6f7383..465c4dfb8fbc0 100644
--- a/llvm/lib/Target/M68k/M68kISelLowering.cpp
+++ b/llvm/lib/Target/M68k/M68kISelLowering.cpp
@@ -2207,7 +2207,7 @@ SDValue M68kTargetLowering::LowerSETCC(SDValue Op, SelectionDAG &DAG) const {
   }
   if (Op0.getValueType() == MVT::i1 && (CC == ISD::SETEQ || CC == ISD::SETNE)) {
     if (isOneConstant(Op1)) {
-      ISD::CondCode NewCC = ISD::GlobalISel::getSetCCInverse(CC, true);
+      ISD::CondCode NewCC = ISD::getSetCCInverse(CC, Op0.getValueType());
       return DAG.getSetCC(DL, VT, Op0, DAG.getConstant(0, DL, MVT::i1), NewCC);
     }
     if (!isNullConstant(Op1)) {

@github-actions

Copy link
Copy Markdown

🪟 Windows x64 Test Results

  • 139939 tests passed
  • 3715 tests skipped
  • 1 test failed

Failed Tests

(click on a test name to see its output)

lld

lld.ELF/lto/thinlto.ll
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 4
rm -rf C:\_work\llvm-project\llvm-project\build\tools\lld\test\ELF\lto\Output\thinlto.ll.tmp && mkdir C:\_work\llvm-project\llvm-project\build\tools\lld\test\ELF\lto\Output\thinlto.ll.tmp && cd C:\_work\llvm-project\llvm-project\build\tools\lld\test\ELF\lto\Output\thinlto.ll.tmp
# executed command: rm -rf 'C:\_work\llvm-project\llvm-project\build\tools\lld\test\ELF\lto\Output\thinlto.ll.tmp'
# note: command had no output on stdout or stderr
# executed command: mkdir 'C:\_work\llvm-project\llvm-project\build\tools\lld\test\ELF\lto\Output\thinlto.ll.tmp'
# note: command had no output on stdout or stderr
# executed command: cd 'C:\_work\llvm-project\llvm-project\build\tools\lld\test\ELF\lto\Output\thinlto.ll.tmp'
# note: command had no output on stdout or stderr
# RUN: at line 5
mkdir d e
# executed command: mkdir d e
# note: command had no output on stdout or stderr
# RUN: at line 6
c:\_work\llvm-project\llvm-project\build\bin\opt.exe -module-summary C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll -o a.o
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\opt.exe' -module-summary 'C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll' -o a.o
# note: command had no output on stdout or stderr
# RUN: at line 7
c:\_work\llvm-project\llvm-project\build\bin\opt.exe -module-summary C:\_work\llvm-project\llvm-project\lld\test\ELF\lto/Inputs/thinlto.ll -o d/b.o
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\opt.exe' -module-summary 'C:\_work\llvm-project\llvm-project\lld\test\ELF\lto/Inputs/thinlto.ll' -o d/b.o
# note: command had no output on stdout or stderr
# RUN: at line 10
rm -f out.lto.a.o d/out.lto.b.o
# executed command: rm -f out.lto.a.o d/out.lto.b.o
# note: command had no output on stdout or stderr
# RUN: at line 11
c:\_work\llvm-project\llvm-project\build\bin\ld.lld.exe -save-temps --thinlto-jobs=1 -shared a.o d/b.o -o e/out
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\ld.lld.exe' -save-temps --thinlto-jobs=1 -shared a.o d/b.o -o e/out
# note: command had no output on stdout or stderr
# RUN: at line 12
c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe out.lto.a.o | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll --check-prefix=NM1
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe' out.lto.a.o
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll' --check-prefix=NM1
# note: command had no output on stdout or stderr
# RUN: at line 13
c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe d/out.lto.b.o | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll --check-prefix=NM2
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe' d/out.lto.b.o
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll' --check-prefix=NM2
# note: command had no output on stdout or stderr
# RUN: at line 16
rm -f out.lto.a.o d/out.lto.b.o
# executed command: rm -f out.lto.a.o d/out.lto.b.o
# note: command had no output on stdout or stderr
# RUN: at line 17
c:\_work\llvm-project\llvm-project\build\bin\ld.lld.exe -save-temps --thinlto-jobs=2 -shared a.o d/b.o -o e/out
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\ld.lld.exe' -save-temps --thinlto-jobs=2 -shared a.o d/b.o -o e/out
# note: command had no output on stdout or stderr
# RUN: at line 18
c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe out.lto.a.o | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll --check-prefix=NM1
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe' out.lto.a.o
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll' --check-prefix=NM1
# note: command had no output on stdout or stderr
# RUN: at line 19
c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe d/out.lto.b.o | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll --check-prefix=NM2
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe' d/out.lto.b.o
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll' --check-prefix=NM2
# note: command had no output on stdout or stderr
# RUN: at line 22
rm -f out.lto.a.o d/out.lto.b.o
# executed command: rm -f out.lto.a.o d/out.lto.b.o
# note: command had no output on stdout or stderr
# RUN: at line 23
c:\_work\llvm-project\llvm-project\build\bin\ld.lld.exe -save-temps --plugin-opt=jobs=2 -shared a.o d/b.o -o e/out
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\ld.lld.exe' -save-temps --plugin-opt=jobs=2 -shared a.o d/b.o -o e/out
# note: command had no output on stdout or stderr
# RUN: at line 24
c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe out.lto.a.o | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll --check-prefix=NM1
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe' out.lto.a.o
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll' --check-prefix=NM1
# note: command had no output on stdout or stderr
# RUN: at line 25
c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe d/out.lto.b.o | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll --check-prefix=NM2
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe' d/out.lto.b.o
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll' --check-prefix=NM2
# note: command had no output on stdout or stderr
# RUN: at line 28
rm -f out.lto.a.o d/out.lto.b.o
# executed command: rm -f out.lto.a.o d/out.lto.b.o
# note: command had no output on stdout or stderr
# RUN: at line 29
c:\_work\llvm-project\llvm-project\build\bin\ld.lld.exe -save-temps --threads=2 -shared a.o d/b.o -o e/out
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\ld.lld.exe' -save-temps --threads=2 -shared a.o d/b.o -o e/out
# note: command had no output on stdout or stderr
# RUN: at line 30
c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe out.lto.a.o | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll --check-prefix=NM1
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe' out.lto.a.o
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll' --check-prefix=NM1
# note: command had no output on stdout or stderr
# RUN: at line 31
c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe d/out.lto.b.o | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll --check-prefix=NM2
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llvm-nm.exe' d/out.lto.b.o
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\lld\test\ELF\lto\thinlto.ll' --check-prefix=NM2
# note: command had no output on stdout or stderr
# RUN: at line 34
rm -f out.lto.a.o d/out.lto.b.o
# executed command: rm -f out.lto.a.o d/out.lto.b.o
# note: command had no output on stdout or stderr
# RUN: at line 35
c:\_work\llvm-project\llvm-project\build\bin\ld.lld.exe -save-temps --threads=1 --plugin-opt=jobs=2 -shared a.o d/b.o -o e/out
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\ld.lld.exe' -save-temps --threads=1 --plugin-opt=jobs=2 -shared a.o d/b.o -o e/out
# .---command stderr------------
# | failed to open a.o.0.preopt.bc: invalid argument
# `-----------------------------
# error: command failed with exit status: 1

--

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the infrastructure label.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant