Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] constantexpr problem"
2011 Oct 26
3
[LLVMdev] Use still stuck around after Def is destroyed:
I made a GlobalVariable that is of type ConstantArray. For one of it's
elements I assigned it the ConstantExpr::getBitCast of another
GlobalVariable(the "shadow pointer" mentioned). This gives me:
While deleting: i32 (i32)** %Shadow Variable for ptr1
Use still stuck around after Def is destroyed:i8* bitcast (i32
(i32)** @"Shadow Variable for ptr1" to i8*)
2011 Oct 26
0
[LLVMdev] Use still stuck around after Def is destroyed:
On Oct 26, 2011, at 12:18 PM, ret val wrote:
> I made a GlobalVariable that is of type ConstantArray. For one of it's
> elements I assigned it the ConstantExpr::getBitCast of another
> GlobalVariable(the "shadow pointer" mentioned). This gives me:
>
> While deleting: i32 (i32)** %Shadow Variable for ptr1
> Use still stuck around after Def is
2008 Jun 24
2
[LLVMdev] Removal of ConstantExprs
Hi All,
I'm having a bit of trouble with ConstantExprs currently. In particular, a
global variable A is bitcasted and used in the initializer of another global
variable B (as a struct element).
B is unused, so it gets whacked and its initializer gets set to NULL. This
succesfully reduces the usecount of the bitcast to 0, but the bitcast itself
does not get removed then. This means that
2020 Jun 17
2
InstCombine doesn't delete instructions with token
Hello David,
I am having an issue with some custom intrinsics that return a token value:
InstCombine deletes the users of the token but not the instruction that
creates the token itself. The IR is still valid but it's wasted.
The source of the issue is coming from an old patch of yours:
commit 7204cff0a121ebc770cf81f7f94679ae7324daae
Author: David Majnemer <david.majnemer at
2012 Aug 18
1
[LLVMdev] GlobalVariable initializer using from beyond the grave
For LLDB I'm writing a dumb module pass that removes all global variables, by running the following code:
bool erased = true;
while (erased)
{
erased = false;
for (Module::global_iterator gi = llvm_module.global_begin(), ge = llvm_module.global_end();
gi != ge;
++gi)
{
GlobalVariable *global_var =
2008 Jun 24
0
[LLVMdev] Removal of ConstantExprs
On Tue, 24 Jun 2008, Matthijs Kooijman wrote:
> I'm having a bit of trouble with ConstantExprs currently. In particular, a
> global variable A is bitcasted and used in the initializer of another global
> variable B (as a struct element).
>
> B is unused, so it gets whacked and its initializer gets set to NULL. This
> succesfully reduces the usecount of the bitcast to 0, but
2020 Jun 17
2
InstCombine doesn't delete instructions with token
Yes, it's still respected in this case, as the only instructions that will
be deleted have been RAUW with undef.
Originally, all instructions where RAUW but only non-EHPad were deleted
(that means EHPad were RAUW but not deleted).
Then it was later patched by not RAUW token instructions and now not
deleting EHPad nor token instructions.
My assumption is that the instructions we wanted to
2012 Mar 08
1
[LLVMdev] fix a "does not name a type" bug in VASTContext.h
Hi all,
I find a bug in the VASTContext.h of the latest clang. I fixed it and
commit a patch for it. As follows:
>From 447d31176b513a03b253eb25ef314c2a3c0e428a Mon Sep 17 00:00:00 2001
From: Tsingray <tsingray at buildbot-slave-desktop.(none)>
Date: Thu, 8 Mar 2012 22:11:54 +0800
Subject: [PATCH] fix a 'does not name a type' bug in VASTContext.h
---
2011 Oct 27
1
[LLVMdev] Use still stuck around after Def is destroyed:
No, I am not trying to delete anything.
I wanted to created a GlobalVariable that is of Type ConstantArray,
where one of the elements its a BitCast of a GlobalVariable. I have
that, but I get those errors after my pass is done. I dont know why,
my code seems sane enough, and I dont know another way I can go about
this.
On Wed, Oct 26, 2011 at 4:42 PM, Tanya Lattner <lattner at apple.com>
2020 Jun 17
2
InstCombine doesn't delete instructions with token
I did not observe any assertion. In addition, the documentation (
https://llvm.org/docs/LangRef.html#undefined-values) says:
The string ‘undef’ can be used anywhere a constant is expected, and
indicates that the user of the value may receive an unspecified
bit-pattern. Undefined values may be of any type (other than ‘label’ or ‘
void’) and be used anywhere a constant is permitted.
Either way,
2008 Jun 24
1
[LLVMdev] Removal of ConstantExprs
> We can't "garbage collect" ConstantExprs at arbitrary points: they may
> exist in maps, in local variables etc. There is no good way to know they
> are dead.
Ah, makes sense.
> > Also, in this case I'm using a bitcast of A, but what if this was a bitcast of
> > a gep of a A? In this case, removeDeadConstantUsers on A would not remove
> > anything,
2014 Aug 09
3
[LLVMdev] difference between replaceAllUsesWith and replaceUsesOfWith?
On Sat, Aug 9, 2014 at 6:06 AM, Tim Northover <t.p.northover at gmail.com>
wrote:
> Hi Rob,
>
> On 9 August 2014 02:03, Rob Jansen <jansen at cs.umn.edu> wrote:
> > Why is the first for loop not equivalent to the second?
>
> In the second loop, "*ui" is an llvm::Use object. It's owned by a
> User, but isn't a subclass of one. To match the
2013 Mar 27
2
[LLVMdev] cyclical use between caller and callee
Hi,
I have two functions in a module, X.foo, which is the callee, and
Y.foo2, which calls X.foo.
If i either try to run llvm::Function::eraseFromParent() on any one of
the functions, i'll
get this assertion error:
F is used in instruction:
%"calling function" = call i32 @X.foo(i32 %read)
F is used in instruction:
%"calling function" = call i32 @X.foo(i32 %read)
While
2014 Sep 19
2
[LLVMdev] More careful treatment of floating point exceptions
Hi Sanjay,
Thanks, I saw this flag and it's definitely should be considered, but
it appeared to me to be static characteristic of target platform. I'm
not sure how appropriate it would be to change its value from a front-end.
It says "Has", while optional flag would rather say "Uses" meaning that
implementation cares about floating point exceptions.
Regards,
Sergey
2012 Dec 18
0
[LLVMdev] target specific ways to extend ConstantExpr
On Mon, Dec 17, 2012 at 5:10 PM, Yuan Lin <yulin at nvidia.com> wrote:
> We cannot use bitcast because bitcast is a value preserving operation, but
> the address space conversion operation we have is a bit-changing operation.
>
>
>
> Where will the bulk of work be? Can we make a ConstantExpr which has a new
> Opcode (or reuse call) and a list of operands? The first
2012 Dec 18
2
[LLVMdev] target specific ways to extend ConstantExpr
We cannot use bitcast because bitcast is a value preserving operation, but the address space conversion operation we have is a bit-changing operation.
Where will the bulk of work be? Can we make a ConstantExpr which has a new Opcode (or reuse call) and a list of operands? The first operand is a string.
From: Chris Lattner [mailto:clattner at apple.com]
Sent: Monday, December 17, 2012 4:39 PM
To:
2009 Apr 03
6
[LLVMdev] Patch: MSIL backend global pointers initialization
Anton Korobeynikov wrote:
> Hi, Artur
>
>
>> I'm working on that backend now, so probably I'll send some more patches
>> soon. I'd be grateful if you could give me some suggestions how to add
>> some test for that backend to the test-suite. On Linux the output code
>> could be run on Mono and compared with outputs for other backends but
>>
2011 Oct 27
2
[LLVMdev] ConstantExpr Evaluation
Hi,
What I'm currently working on is a translation from LLVM IR to a
register transfer list format used in VPO.
If my understanding of ConstantExpr is correct, that they can be
evaluated at compile-time, how can I simply have them be evaluated but
have the code still remain in IR format?
For example, in:
store i32 1, i32* getelementptr [6 x i32]* @arr, i32 0, i32 0
the getelementptr
2012 Dec 18
1
[LLVMdev] target specific ways to extend ConstantExpr
That's an interesting idea. What are the essential differences between the new subclass and ConstantExpr? Will it end up like ConstantExpr? Or you want it to be ConstantExpr 'done right'?
Thanks.
Yuan
-----Original Message-----
From: Eli Friedman [mailto:eli.friedman at gmail.com]
Sent: Monday, December 17, 2012 5:40 PM
To: Yuan Lin
Cc: Chris Lattner; llvmdev at cs.uiuc.edu
2017 Aug 17
2
Inst->replaceAllUsesWith and uses in ConstantExpr
Whoops, sorry, I meant "value->replaceAllUsesWith".
Should I create a new post with an updated title?
Thanks
Siddharth
On Thu 17 Aug, 2017, 01:05 Tim Northover <t.p.northover at gmail.com> wrote:
> On 16 August 2017 at 15:39, (IIIT) Siddharth Bhat via llvm-dev
> <llvm-dev at lists.llvm.org> wrote:
> > From what I have observed, using