Skip to content

[i686] Cannot select llvm.{min,max}imum.{f32,f64} #64204

@Urgau

Description

@Urgau

It seems that none of these intrinsics are currently implemented for non-x86_64 (with the x86 backend):

  • llvm.minimum.f32
  • llvm.minimum.f64
  • llvm.maximum.f32
  • llvm.maximum.f64

Error output [godbolt]:

LLVM ERROR: Cannot select: 0x7217400: f32 = fmaximum 0x72172b0, 0x7217390
  0x72172b0: f32,ch = load<(load (s32) from %fixed-stack.1, align 16)> 0x719cd80, FrameIndex:i32<-1>, undef:i32
    0x72171d0: i32 = FrameIndex<-1>
    0x7217240: i32 = undef
  0x7217390: f32,ch = load<(load (s32) from %fixed-stack.0)> 0x719cd80, FrameIndex:i32<-2>, undef:i32
    0x7217320: i32 = FrameIndex<-2>
    0x7217240: i32 = undef
In function: _ZN1a4test17hb60f9f6975710eeaE
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.	Program arguments: /opt/compiler-explorer/clang-trunk/bin/llc -o /app/output.s -x86-asm-syntax=intel <source>
1.	Running pass 'Function Pass Manager' on module '<source>'.
2.	Running pass 'X86 DAG->DAG Instruction Selection' on function '@_ZN1a4test17hb60f9f6975710eeaE'

Similar to #53353 which was for x86_64

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions