[llvm] [X86][NFC] Moved/Updated FNEG testcases (PR #162269)
Evgenii Kudriashov via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 9 06:48:50 PDT 2025
================
@@ -0,0 +1,208 @@
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 6
+; RUN: llc < %s -mtriple=i686-linux-gnu -fast-isel | FileCheck %s --check-prefixes=X86,FASTISEL-X86
+; RUN: llc < %s -mtriple=i686-linux-gnu -global-isel=0 -fast-isel=0 | FileCheck %s --check-prefixes=X86,SDAG-X86
+; DISABLED: llc < %s -mtriple=i686-linux-gnu -global-isel=1 -global-isel-abort=2 | FileCheck %s --check-prefixes=X86,GISEL-X86
----------------
e-kud wrote:
If an opcode is not mentioned in the legalizer, GlobalISel tries to `lower()` by default. We end up with the situation when floats and doubles are handled on GPRs but the result need to be returned using X87 stack, so we get `fp0 = COPY eax`. IIRC FPStackifier is not happy with it. Once we legalize using X87 stack, we don have this problem. So it is a mix of the default lowering and GlobalISel generating such copies between register classes.
https://github.com/llvm/llvm-project/pull/162269
More information about the llvm-commits
mailing list