[llvm-bugs] [Bug 36553] New: 6.0 regression: LLVM ERROR: Cannot select: 0x582f0b00: f32 = X86ISD::FNMSUB 0x582f8740, 0x583805f0, 0x582fde50

via llvm-bugs llvm-bugs at lists.llvm.org
Wed Feb 28 15:22:06 PST 2018


https://bugs.llvm.org/show_bug.cgi?id=36553

            Bug ID: 36553
           Summary: 6.0 regression:  LLVM ERROR: Cannot select:
                    0x582f0b00: f32 = X86ISD::FNMSUB 0x582f8740,
                    0x583805f0, 0x582fde50
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Backend: X86
          Assignee: unassignedbugs at nondot.org
          Reporter: sylvestre at debian.org
                CC: llvm-bugs at lists.llvm.org
            Blocks: 35804

Created attachment 19975
  --> https://bugs.llvm.org/attachment.cgi?id=19975&action=edit
bc5

Reported here:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=891802

this is a regression from llvm-5.0 to llvm-6.0 on i386.

I'm attaching two .bc files from a pocl selftest, one generated with
llvm-5.0, one with llvm-6.0. 

llc-5.0 successfully compiles both, llc-6.0 fails to compile both:

$ llc-5.0 -O2 -mcpu=i686  pocl.trig.llvm5.bc

$ llc-5.0 -O2 -mcpu=i686  pocl.trig.llvm6.bc


$ llc-6.0 -O2 -mcpu=i686  pocl.trig.llvm5.bc
LLVM ERROR: Cannot select: 0x582f0b00: f32 = X86ISD::FNMSUB 0x582f8740,
0x583805f0, 0x582fde50
  0x582f8740: f32 = fsub 0x58314d20, 0x58329d00
    0x58314d20: f32,ch = load<LD4[FixedStack0(align=16)+12](align=4)>
0x583150e0, 0x58322db0, undef:i32
      0x58322db0: i32 = or FrameIndex:i32<0>, Constant:i32<12>
        0x5837f620: i32 = FrameIndex<0>
        0x582c0e40: i32 = Constant<12>
      0x58326f60: i32 = undef
    0x58329d00: f32,ch = load<LD4[FixedStack1]> 0x58329c80, FrameIndex:i32<1>,
undef:i32
      0x582f8180: i32 = FrameIndex<1>
      0x58326f60: i32 = undef
  0x583805f0: f32,ch = load<LD4[ConstantPool]> 0x58223a80, 0x58318150,
undef:i32
    0x58318150: i32 = X86ISD::Wrapper TargetConstantPool:i32<float
0x3C23100000000000> 0
      0x582bbbe0: i32 = TargetConstantPool<float 0x3C23100000000000> 0
    0x58326f60: i32 = undef
  0x582fde50: f32,ch,glue = CopyFromReg 0x5831d6a0, Register:f32 %fp0,
0x5831d6a0:1
    0x58309fe0: f32 = Register %fp0
    0x5831d6a0: ch,glue = callseq_end 0x58320a90, TargetConstant:i32<12>,
TargetConstant:i32<0>, 0x58320a90:1
      0x58315ef0: i32 = TargetConstant<12>
      0x5837f5e0: i32 = TargetConstant<0>
      0x58320a90: ch,glue = X86ISD::CALL 0x583189d0,
TargetExternalSymbol:i32'fmaf', RegisterMask:Untyped
        0x582eff80: i32 = TargetExternalSymbol'fmaf'
        0x58327420: Untyped = RegisterMask
In function: _Z20__pocl_argReductionSPDv4_fS0_S_

$ llc-6.0 -O2 -mcpu=i686  pocl.trig.llvm6.bc
LLVM ERROR: Cannot select: 0x575fb6e0: f32 = X86ISD::FNMSUB 0x575c98d0,
0x575aad80, 0x575c82f0
  0x575c98d0: f32 = fsub 0x575aa740, 0x575754a0
    0x575aa740: f32,ch = load<LD4[FixedStack0(align=16)+12](align=4)>
0x575a8b60, 0x5753a900, undef:i32
      0x5753a900: i32 = or FrameIndex:i32<0>, Constant:i32<12>
        0x575a89e0: i32 = FrameIndex<0>
        0x575b58b0: i32 = Constant<12>
      0x575aa280: i32 = undef
    0x575754a0: f32,ch = load<LD4[FixedStack1]> 0x575a8620, FrameIndex:i32<1>,
undef:i32
      0x575b2d00: i32 = FrameIndex<1>
      0x575aa280: i32 = undef
  0x575aad80: f32,ch = load<LD4[ConstantPool]> 0x574a1260, 0x57588590,
undef:i32
    0x57588590: i32 = X86ISD::Wrapper TargetConstantPool:i32<float
0x3C23100000000000> 0
      0x575ca110: i32 = TargetConstantPool<float 0x3C23100000000000> 0
    0x575aa280: i32 = undef
  0x575c82f0: f32,ch,glue = CopyFromReg 0x575aa100, Register:f32 %fp0,
0x575aa100:1
    0x575a3c20: f32 = Register %fp0
    0x575aa100: ch,glue = callseq_end 0x57580000, TargetConstant:i32<12>,
TargetConstant:i32<0>, 0x57580000:1
      0x5758fdd0: i32 = TargetConstant<12>
      0x575a17f0: i32 = TargetConstant<0>
      0x57580000: ch,glue = X86ISD::CALL 0x575b2030,
TargetExternalSymbol:i32'fmaf', RegisterMask:Untyped
        0x575a8460: i32 = TargetExternalSymbol'fmaf'
        0x575c7cf0: Untyped = RegisterMask
In function: _Z20__pocl_argReductionSPU9CLprivateDv4_fS1_S_


Referenced Bugs:

https://bugs.llvm.org/show_bug.cgi?id=35804
[Bug 35804] [meta] 6.0.0 Release Blockers
-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20180228/1e893b66/attachment.html>


More information about the llvm-bugs mailing list