Skip to content

[x86/AVX CodeGen] Cannot select v8f32 = bitcast #10872

@llvmbot

Description

@llvmbot
Bugzilla Link 10500
Resolution INVALID
Resolved on Jul 26, 2011 20:33
Version trunk
OS Linux
Reporter LLVM Bugzilla Contributor
CC @bcardosolopes

Extended Description

Revision: 136074

Following .ll for x86/AVX target produce these error:

LLVM ERROR: Cannot select: 0x3beca00: v8f32 = bitcast 0x3bec900 [ORD=1] [ID=9]
0x3bec900: v8i32,ch = CopyFromReg 0x3bc37a8, 0x3bec800 [ORD=1] [ID=7]
0x3bec800: v8i32 = Register %vreg1 [ORD=1] [ID=1]

; ModuleID = 'bugpoint-reduced-simplified.bc'
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
target triple = "x86_64-unknown-linux-gnu"

declare <8 x float> @​llvm.x86.avx.blendv.ps.256(<8 x float>, <8 x float>, <8 x float>) nounwind readnone

define void @"ao_scanlines___UiUiUiUiUiREFUf[]"(<8 x i32> %__mask) nounwind {
allocas:
%floatmask.i = bitcast <8 x i32> %__mask to <8 x float>
br i1 undef, label %cif_test_all, label %__gather_base_offsets_i32.exit30803

cif_test_all: ; preds = %allocas
unreachable

__gather_base_offsets_i32.exit30803: ; preds = %allocas
%blend.i31259 = call <8 x float> @​llvm.x86.avx.blendv.ps.256(<8 x float> undef, <8 x float> undef, <8 x float> %floatmask.i) nounwind
unreachable
}

FYI, original input code is grabbed from ispc's aobench example(http://ispc.github.com/)

Metadata

Metadata

Assignees

No one assigned

    Labels

    backend:X86bugzillaIssues migrated from bugzillainvalidResolved as invalid, i.e. not a bug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions