Displaying 2 results from an estimated 2 matches for "matchoperationaddr".
2014 May 21
5
[LLVMdev] [CodeGenPrepare] Sinking incoming values of a PHI Node
...1, %if.else ]
%w1 = load float* %r1
ret void
}
CGP is unable to sink %p1 any more, because, given %p1 is used multiple
times, CGP checks whether %p1 can be folded into every memory uses (in this
case, %u1 = load %p1 and %w1 = load %r1) with the same addressing mode. It
does that by dry-running MatchOperationAddr on both loads, however
MatchOperationAddr bails out on PHI nodes.
The second complication is the incoming values of a PHI node may have
different base registers. For example, we slightly modify the original
example by changing %q1's base to %b.
define void @foo(i1 %cond, float* %a, float* %b)...
2011 May 06
0
[LLVMdev] Question about linking llvm-mc when porting a new backend
...)in libLLVMAnalysis.a(ScalarEvolution.cpp.o)
llvm::FastISel::SelectGetElementPtr(llvm::User const*)in
libLLVMSelectionDAG.a(FastISel.cpp.o)
computeArraySize(llvm::CallInst const*, llvm::TargetData const*,
bool)in libLLVMAnalysis.a(MemoryBuiltins.cpp.o)
llvm::AddressingModeMatcher::MatchOperationAddr(llvm::User*, unsigned
int, unsigned int)in libLLVMTransformUtils.a(AddrModeMatcher.cpp.o)
llvm::ComputeMaskedBits(llvm::Value*, llvm::APInt const&,
llvm::APInt&, llvm::APInt&, llvm::TargetData const*, unsigned int)in
libLLVMAnalysis.a(ValueTracking.cpp.o)
llvm::SCEVExpander:...