Displaying 10 results from an estimated 10 matches for "ptr32".
Did you mean:
ptr2
2009 May 24
3
[LLVMdev] mixing static/dynamic code
...d at runtime
(the snipped was also printed at runtime)
define i32 @myfunc(i32 %pi) {
entry:
%pi_addr = alloca i32 ; <i32*> [#uses=3]
%retval = alloca i32 ; <i32*> [#uses=2]
%tmp = alloca i32 ; <i32*> [#uses=2]
> %ptr32 = alloca i32 ; <i32*> [#uses=2]
%"alloca point" = bitcast i32 0 to i32 ; <i32> [#uses=0]
> store i32 %pi, i32* %ptr32
> %ptr8 = bitcast i32* %ptr32 to i8* ; <i8*> [#uses=1]
> call void @roc( i8* %ptr8...
2009 May 24
2
[LLVMdev] mixing static/dynamic code
...> define i32 @myfunc(i32 %pi) {
> > entry:
> > %pi_addr = alloca i32 ; <i32*> [#uses=3]
> > %retval = alloca i32 ; <i32*> [#uses=2]
> > %tmp = alloca i32 ; <i32*> [#uses=2]
> > > %ptr32 = alloca i32 ; <i32*> [#uses=2]
> > %"alloca point" = bitcast i32 0 to i32 ; <i32> [#uses=0]
> >
> > > store i32 %pi, i32* %ptr32
> > > %ptr8 = bitcast i32* %ptr32 to i8* ; <i8*>
> [...
2009 May 24
0
[LLVMdev] mixing static/dynamic code
...rinted at runtime)
>
> define i32 @myfunc(i32 %pi) {
> entry:
> %pi_addr = alloca i32 ; <i32*> [#uses=3]
> %retval = alloca i32 ; <i32*> [#uses=2]
> %tmp = alloca i32 ; <i32*> [#uses=2]
> > %ptr32 = alloca i32 ; <i32*> [#uses=2]
> %"alloca point" = bitcast i32 0 to i32 ; <i32> [#uses=0]
>
> > store i32 %pi, i32* %ptr32
> > %ptr8 = bitcast i32* %ptr32 to i8* ; <i8*> [#uses=1]
> >...
2009 May 24
0
[LLVMdev] mixing static/dynamic code
...different addresses for the
> static/dynamic code - as far I see this is what it's happening but I
> have no clue why.
If you look at the LLVM IR you can see two distinct alloca instructions,
the one your static code had named "%pi_addr" and the one you created
named "%ptr32".
It sounds like what you want to do is instead of creating your own stack
spot to store %pi into, you should look at the first user of %pi which
should be a store of %pi into its stack space, as generated by the
static compilation, and pull the stack slot out of there. Something like
thi...
2009 May 24
1
[LLVMdev] mixing static/dynamic code
...he
> > static/dynamic code - as far I see this is what it's happening but I
> > have no clue why.
>
> If you look at the LLVM IR you can see two distinct alloca instructions,
> the one your static code had named "%pi_addr" and the one you created
> named "%ptr32".
>
> It sounds like what you want to do is instead of creating your own stack
> spot to store %pi into, you should look at the first user of %pi which
> should be a store of %pi into its stack space, as generated by the
> static compilation, and pull the stack slot out of there...
2015 Jun 28
3
[LLVMdev] Legalizing SelectionDAGs with illegal pointer type
...here, unfortunately.
If it would help, one of the changes that we’ve made is to add separate PTRADD, INTTOPTR and PTRTOINT nodes to SelectionDAG, which makes it possible to keep pointer types distinct. We currently have an iFATPTR type, which is not ideal - we’d like to replace this with a set of PTR32 to PTR256 types. I’d be happy to prioritise extracting these patches for upstreaming if that would be useful to others.
David
2007 Jan 10
2
[DTrace] using C preprocessor in dtrace scripts
...it ints */
428 int32_t i32;
429 uint32_t ui32;
430 struct {
431 union {
432 char *ptr; /* NULL-term string */
433 #if defined(_KERNEL) && defined(_MULTI_DATAMODEL)
434 caddr32_t ptr32;
435 #endif
436 char __pad[8]; /* 64-bit padding */
437 } addr;
438 uint32_t len; /* # bytes for strlen + ''\0'' */
439 } string;
What seems to be happening is that DTrace is getting confused with thi...
2015 Jun 27
3
[LLVMdev] Legalizing SelectionDAGs with illegal pointer type
Hi,
I recently started helping with the LLVM AVR backend [1]. The AVR is an 8 bit core with pointer type i16. That makes pointers illegal in the SelectionDAG. As far as I understand it, it is the backends job to legalize these nodes by using the ReplaceNodeResults/LowerOperation callbacks. Is that about right?
I have the feeling that the symbolic nodes carrying pointers, like FrameIndex are
2007 Oct 24
16
PATCH 0/10: Merge PV framebuffer & console into QEMU
The following series of 10 patches is a merge of the xenfb and xenconsoled
functionality into the qemu-dm code. The general approach taken is to have
qemu-dm provide two machine types - one for xen paravirt, the other for
fullyvirt. For compatability the later is the default. The goals overall
are to kill LibVNCServer, remove alot of code duplication and/or parallel
impls of the same concepts, and
2015 Aug 12
4
Splitting 'expand' into 'split' and `expand`.
Hello all,
I would like to propose a large change to LLVM that I would be happy to
implement.
The instruction selection legalizer knows of three different ways to
legalize an action (ignoring an already legal action).
- Expansion
- Promotion
- Custom
Expanding a node will lead to one of two things - the operation will be
split into several equivalent smaller operations (i.e. 64-bit