Displaying 17 results from an estimated 17 matches for "getsrcvalu".
Did you mean:
getsrcvalue
2009 Dec 04
0
[LLVMdev] "SrcValue is not a pointer?" assertion in SelectionDAG::getSrcValue
...sses.
--Sam
----- Original Message ----
> From: ether zhhb <etherzhhb at gmail.com>
> To: LLVM Developers Mailing List <llvmdev at cs.uiuc.edu>
> Sent: Thu, December 3, 2009 7:45:42 PM
> Subject: [LLVMdev] "SrcValue is not a pointer?" assertion in SelectionDAG::getSrcValue
>
> hi,
>
> i am building selectionDAG by my own code, but got a assertion fail
> said "SrcValue is not a pointer?".
>
> but since the comment above the SrcValueSDNode said: "SrcValueSDNode -
> An SDNode that holds an arbitrary LLVM IR Value." why the...
2009 Dec 04
2
[LLVMdev] "SrcValue is not a pointer?" assertion in SelectionDAG::getSrcValue
hi,
i am building selectionDAG by my own code, but got a assertion fail
said "SrcValue is not a pointer?".
but since the comment above the SrcValueSDNode said: "SrcValueSDNode -
An SDNode that holds an arbitrary LLVM IR Value." why the llvm value
of SrcValueSDNode must be with PointerType? is that assertion
necessary? thanks a lots.
regards
--ether
2011 Aug 24
1
[LLVMdev] proposal: add macro expansion of for-loop to TableGen
...can make it much more readable.
(defining memory space patterns in PTXInstrInfo.td for each memory space)
----------------------------------------
def load_global : PatFrag<(ops node:$ptr), (load node:$ptr), [{
const Value *Src;
const PointerType *PT;
if ((Src = cast<LoadSDNode>(N)->getSrcValue()) &&
(PT = dyn_cast<PointerType>(Src->getType())))
return PT->getAddressSpace() == PTX::GLOBAL;
return false;
}]>;
def load_constant : PatFrag<(ops node:$ptr), (load node:$ptr), [{
const Value *Src;
const PointerType *PT;
if ((Src = cast<LoadSDNode>(N)-...
2007 Nov 22
2
[LLVMdev] Getting the pointer type from a Load/Store SDNode
I'm digging into this, but I'd like to know if it's feasible to get
to the pointer type from a Load/Store SDNode? This would relieve me
from having to put the address space information into those SDNodes.
Is Load/StoreSDNode->getSrcValue()->getType() going to do what I
want? If not, I can't see another way of getting to the pointer type.
--
Christopher Lamb
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20071121/aaee0354/attachme...
2008 Sep 18
2
[LLVMdev] store addrspace qualifier
Mon Ping,
Thanks for the tip, but I can't for the life of me seem to get the
Value from a StoreSDNode. From looking at the SelectionDAGNodes header
file, the only class that has the getValue function call is
SrcValueSDNode that returns a Value type. The only class that has
getType is a ConstantPoolSDNode. I don't think that ConstantPoolSDNode
is what I want and when I try to cast the
2006 Sep 20
1
[LLVMdev] using the constant pool during select
...etTypeForValueType(MVT::i32);
Constant *C = ConstantUInt::get(OpNTy, t);
int alignment = 2;
SDOperand Addr = CurDAG->getTargetConstantPool(C, MVT::i32, alignment);
Arg = CurDAG->getLoad(MVT::i32, CurDAG->getEntryNode(), Addr,
CurDAG->getSrcValue(NULL));
----------------------------------------------------------------------------------------
This fails with the assert "This target-independent node should have
been selected". It is illegal to create a load during select?
Should I write a lowering function to do this before the s...
2007 Nov 22
0
[LLVMdev] Getting the pointer type from a Load/Store SDNode
...v 2007, Christopher Lamb wrote:
> I'm digging into this, but I'd like to know if it's feasible to get to the
> pointer type from a Load/Store SDNode? This would relieve me from having to
> put the address space information into those SDNodes.
>
> Is Load/StoreSDNode->getSrcValue()->getType() going to do what I want?
> If not, I can't see another way of getting to the pointer type.
Hrm, the codegen has a couple of interesting crazy issues. For example,
it thinks there is a current PointerTy() that is always valid.
I see a couple ways to handle this. One is...
2006 Dec 19
3
[LLVMdev] alias-aware scheduling
...DOperand &Ptr, int64_t &Size,
+ const Value *&SrcValue, int &SrcValueOffset) {
+ if (LoadSDNode *LD = dyn_cast<LoadSDNode>(N)) {
+ Ptr = LD->getBasePtr();
+ Size = MVT::getSizeInBits(LD->getLoadedVT()) >> 3;
+ SrcValue = LD->getSrcValue();
+ SrcValueOffset = LD->getSrcValueOffset();
+ return true;
+ } else if (StoreSDNode *ST = dyn_cast<StoreSDNode>(N)) {
+ Ptr = ST->getBasePtr();
+ Size = MVT::getSizeInBits(ST->getStoredVT()) >> 3;
+ SrcValue = ST->getSrcValue();
+ SrcValu...
2009 Feb 19
3
[LLVMdev] Possible DAGCombiner or TargetData Bug
...ent(SVT.getTypeForMVT());
if (Align <= OrigAlign &&
((!LegalOperations && !ST->isVolatile()) ||
TLI.isOperationLegalOrCustom(ISD::STORE, SVT)))
return DAG.getStore(Chain, N->getDebugLoc(), Value.getOperand(0),
Ptr, ST->getSrcValue(),
ST->getSrcValueOffset(), ST->isVolatile(),
OrigAlign);
}
Uhh...this doesn't seem legal to me. How can we just willy-nilly create a
store with a greater alignment? In this case Align is 8 and OrigAlign is 16
because SVT.getTypeForMVT() is Type::VectorT...
2011 Aug 25
0
[LLVMdev] [RFC] Splitting init.trampoline into init.trampoline and adjust.trampoline
...gcc is deprecated I think
that it is OK.
> --- a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
> +++ b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
> @@ -4947,12 +4947,16 @@ SelectionDAGBuilder::visitIntrinsicCall(const CallInst &I, unsigned Intrinsic) {
> Ops[4] = DAG.getSrcValue(I.getArgOperand(0));
> Ops[5] = DAG.getSrcValue(F);
>
> - Res = DAG.getNode(ISD::TRAMPOLINE, dl,
> - DAG.getVTList(TLI.getPointerTy(), MVT::Other),
> - Ops, 6);
> + Res = DAG.getNode(ISD::INIT_TRAMPOLINE, dl, MVT::Other, Ops, 6...
2011 Aug 23
2
[LLVMdev] [RFC] Splitting init.trampoline into init.trampoline and adjust.trampoline
Hi!
Attached set of patches splits llvm.init.trampoline into an "init"
phase and an "adjust" phase, as discussed on the "Go on dragonegg"
thread.
Thanks!
--
Sanjoy Das
http://playingwithpointers.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Split-intrinsics-and-DAG-nodes.patch
Type: text/x-diff
Size: 8808 bytes
Desc:
2007 Nov 25
1
[LLVMdev] Getting the pointer type from a Load/Store SDNode
...I'm digging into this, but I'd like to know if it's feasible to
>> get to the
>> pointer type from a Load/Store SDNode? This would relieve me from
>> having to
>> put the address space information into those SDNodes.
>>
>> Is Load/StoreSDNode->getSrcValue()->getType() going to do what I
>> want?
>> If not, I can't see another way of getting to the pointer type.
>
> Hrm, the codegen has a couple of interesting crazy issues. For
> example,
> it thinks there is a current PointerTy() that is always valid.
>
> I...
2009 Feb 19
0
[LLVMdev] Possible DAGCombiner or TargetData Bug
...> if (Align <= OrigAlign &&
> ((!LegalOperations && !ST->isVolatile()) ||
> TLI.isOperationLegalOrCustom(ISD::STORE, SVT)))
> return DAG.getStore(Chain, N->getDebugLoc(), Value.getOperand(0),
> Ptr, ST->getSrcValue(),
> ST->getSrcValueOffset(), ST->isVolatile(),
> OrigAlign);
> }
>
> Uhh...this doesn't seem legal to me. How can we just willy-nilly create a
> store with a greater alignment? In this case Align is 8 and OrigAlign is
> 16
> because...
2009 May 21
0
[LLVMdev] [PATCH] Add new phase to legalization to handle vector operations
On Wed, May 20, 2009 at 4:55 PM, Dan Gohman <gohman at apple.com> wrote:
> Can you explain why you chose the approach of using a new pass?
> I pictured removing LegalizeDAG's type legalization code would
> mostly consist of finding all the places that use TLI.getTypeAction
> and just deleting code for handling its Expand and Promote. Are you
> anticipating something more
2009 May 20
2
[LLVMdev] [PATCH] Add new phase to legalization to handle vector operations
On May 20, 2009, at 1:34 PM, Eli Friedman wrote:
> On Wed, May 20, 2009 at 1:19 PM, Eli Friedman
> <eli.friedman at gmail.com> wrote:
>
>> Per subject, this patch adding an additional pass to handle vector
>>
>> operations; the idea is that this allows removing the code from
>>
>> LegalizeDAG that handles illegal types, which should be a significant
2009 May 21
2
[LLVMdev] [PATCH] Add new phase to legalization to handle vector operations
...@@ -2653,111 +2235,8 @@
}
break;
}
- case Promote:
- if (!ST->getMemoryVT().isVector()) {
- // Truncate the value and store the result.
- Tmp3 = PromoteOp(ST->getValue());
- Result = DAG.getTruncStore(Tmp1, dl, Tmp3, Tmp2, ST->getSrcValue(),
- SVOffset, ST->getMemoryVT(),
- isVolatile, Alignment);
- break;
- }
- // Fall thru to expand for vector
- case Expand: {
- unsigned IncrementSize = 0;
- SDValue Lo, Hi;
-
-...
2007 Aug 06
1
[LLVMdev] Problem compiling LLVM under Cygwin/Mingw
Hello, Alain.
> I'm starting to play with LLVM today and I've trouble compiling it.
> I'm
> working under Windows Vista, with the gcc from Cygwin:
Oh, this seems to be killer mix :) GCC (at least native mingw32 port)
has known problems being running on Vista.
> Is LLVM supposed to work with this version of GCC (probably using the
> -mno-cygwin option to get a