MCPcopy Create free account
hub / github.com/GoSSIP-SJTU/Armariris / scalarizeMaskedLoad

Function scalarizeMaskedLoad

lib/CodeGen/CodeGenPrepare.cpp:1178–1294  ·  view source on GitHub ↗

Translate a masked load intrinsic like <16 x i32 > @llvm.masked.load( <16 x i32>* %addr, i32 align, <16 x i1> %mask, <16 x i32> %passthru) to a chain of basic blocks, with loading element one-by-one if the appropriate mask bit is set %1 = bitcast i8* %addr to i32 %2 = extractelement <16 x i1> %mask, i32 0 %3 = icmp eq i1 %2, true br i1 %3, label %cond.load, label %else cond.load:

Source from the content-addressed store, hash-verified

source not stored for this graph (policy: none)

Callers 1

optimizeCallInstMethod · 0.85

Calls 15

getPointerToMethod · 0.80
getInt32Method · 0.80
assertFunction · 0.50
minFunction · 0.50
getFunction · 0.50
getArgOperandMethod · 0.45
getZExtValueMethod · 0.45
getTypeMethod · 0.45
getVectorElementTypeMethod · 0.45
getContextMethod · 0.45
getParentMethod · 0.45
SetInsertPointMethod · 0.45

Tested by

no test coverage detected