Skip to content

Explicit mask vs splat bitcast in masked load for _mm_load_sbh #1767

@RiverDave

Description

@RiverDave

In CIR lowering, we currently emit the mask operand for: _mm_load_sbh (which calls llvm.masked.load) as an explicit vector:

    <8 x i1> <true, false, false, false, false, false, false, false>

whereas the traditional LLVM IR lowering emits:

    <8 x i1> bitcast (<1 x i8> splat (i8 1) to <8 x i1>)

Both are semantically equivalent but should be unified eventually for parity with OG.

related: #1763

Metadata

Metadata

Assignees

No one assigned

    Labels

    IR differenceA difference in ClangIR-generated LLVM IR that could complicate reusing original CodeGen tests

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions