[llvm-commits] [llvm] r114577 - /llvm/trunk/lib/Target/X86/X86ISelDAGToDAG.cpp
Chris Lattner
clattner at apple.com
Wed Sep 22 14:50:45 PDT 2010
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?
-Chris
>
> Modified:
> llvm/trunk/lib/Target/X86/X86ISelDAGToDAG.cpp
>
> Modified: llvm/trunk/lib/Target/X86/X86ISelDAGToDAG.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelDAGToDAG.cpp?rev=114577&r1=114576&r2=114577&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Target/X86/X86ISelDAGToDAG.cpp (original)
> +++ llvm/trunk/lib/Target/X86/X86ISelDAGToDAG.cpp Wed Sep 22 15:42:08 2010
> @@ -1149,7 +1149,8 @@
> // that are not a MemSDNode, and thus don't have proper addrspace info.
> Parent->getOpcode() != ISD::PREFETCH &&
> Parent->getOpcode() != ISD::INTRINSIC_W_CHAIN && // unaligned loads, fixme
> - Parent->getOpcode() != ISD::INTRINSIC_VOID) { // nontemporal stores.
> + Parent->getOpcode() != ISD::INTRINSIC_VOID && // nontemporal stores
> + Parent->getOpcode() != X86ISD::TLSCALL) { // Fixme
> unsigned AddrSpace =
> cast<MemSDNode>(Parent)->getPointerInfo().getAddrSpace();
> // AddrSpace 256 -> GS, 257 -> FS.
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list