[llvm-commits] [llvm] r114577 - /llvm/trunk/lib/Target/X86/X86ISelDAGToDAG.cpp

Eric Christopher echristo at apple.com
Sun Sep 26 22:55:34 PDT 2010


On Sep 22, 2010, at 2:50 PM, Chris Lattner wrote:

> 
> On Sep 22, 2010, at 1:42 PM, Eric Christopher wrote:
> 
>> Author: echristo
>> Date: Wed Sep 22 15:42:08 2010
>> New Revision: 114577
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=114577&view=rev
>> Log:
>> Temporarily work around new address lowering while I figure out what
>> needs to happen for darwin.
> 
> This happens when an instruction is matched with a pattern that uses "addr:$ptr" to represent a memory location.  The assert fires when it doesn't derive from MemSDNode, so it doesn't have memory location.  Is "TLSCALL" doing a memory access? If so, what kind?

It is, it's loading a thunk from the location in memory that has the tls variable that we'll then call through.

The code is happening in LowerGlobalTLSAddress in X86ISelLowering and then lowered again via a custom lower later.  It's easily possible I'm doing something hacky in the first code.

-eric



More information about the llvm-commits mailing list