Displaying 2 results from an estimated 2 matches for "addresstranslator".
2015 May 04
2
[LLVMdev] Semantics of an Inbounds GetElementPtr
..., and this is address space 0, we know the pointer is
// not null.
if (GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(I))
if (GEP->isInBounds() && GEP->getAddressSpace() == 0) {
for (auto Use : GEP->getPointerOperand->uses())
{
PHITransAddr AddressTranslator(...)
if (!AddressTranslator.PHITranslateValue(GEP->getPointerOperand,
predecessor))
for (auto User : AddressTranslator.getAddr())
// If this is an icmp eq against null, declare victory and
replace the result with false.
}
This is easier in NewGVN (and not N^2 like...
2015 May 04
2
[LLVMdev] Semantics of an Inbounds GetElementPtr
On Mon, May 4, 2015 at 9:40 AM, Nicholas White <n.j.white at gmail.com> wrote:
> Thanks - that makes sense. It's interesting that at -O3 the optimizer
> can't reduce the below though - I'll dig into it a bit and see if I
> can make a patch that fixes it:
I'm unsure what you expect to happen below. It's not quite the same testcase.
GVN will PRE the loads, so you