similar to: Parse LLVM IR

Displaying 20 results from an estimated 500 matches similar to: "Parse LLVM IR"

2018 Feb 02
2
Debug info error on bitcode inline modification
Hi, I'm trying to inline function defined in another bitcode module via bitcode modification. I'm linking multiple bitcode modules, setting inline related attributes, applying -always-inline pass, but then debug info error occurs. It seems debug info metadata isn't properly updated on inlining. How can I fix it? I'm using LLVM 3.8.1 on OS X (On below example target is Android but
2007 May 17
1
[PATCH] ocfs: use list_for_each_entry where benefical
Signed-off-by: Christoph Hellwig <hch@lst.de> Index: linux-2.6/fs/ocfs2/cluster/tcp.c =================================================================== --- linux-2.6.orig/fs/ocfs2/cluster/tcp.c 2007-05-06 13:51:17.000000000 +0200 +++ linux-2.6/fs/ocfs2/cluster/tcp.c 2007-05-17 15:00:14.000000000 +0200 @@ -261,14 +261,12 @@ out: static void o2net_complete_nodes_nsw(struct o2net_node
2018 Feb 02
0
Debug info error on bitcode inline modification
Every inlinable call in a function that has debug info (F->getSubprogram() returns non-null) must have a DebugLoc associated with it that has a scope chain that ends in that same DISubprogram. https://llvm.org/docs/SourceLevelDebugging.html discusses some of the debug info IR metadata in LLVM. On Fri, Feb 2, 2018 at 1:03 AM Ku Nanashi via llvm-dev < llvm-dev at lists.llvm.org> wrote:
2018 Feb 05
1
Debug info error on bitcode inline modification
> Every inlinable call in a function that has debug info (F->getSubprogram() returns non-null) must have a DebugLoc associated with it that has a scope chain that ends in that same DISubprogram. Thank you for the comment! I don't know if this is a proper way to fix, but after I add DebugLoc same as inserting position instruction, no error occurs.
2007 Sep 07
0
[LLVMdev] [PATCH]: Add SparseBitmap implementation
On Tue, 4 Sep 2007, Daniel Berlin wrote: >> insert/push_back without making copies. Either of these approaches would >> also fix what looks like a leak in operator&=, where elements are erased >> from the list without being deleted. > > I seriously considered not using indirection, but it made a lot of the > functions more annoying, and it didn't seem worth the
2012 Jun 15
3
doveadm backup panic
using latest auto build didn't help. this happens only with a specific account. # doveadm -o imapc_user=----- at domain.com -o imapc_password=---- backup -u =----- at domain.com -R imapc: dsync(---- at domain.com): Panic: pool_data_stack_realloc(): stack frame changed dsync(---- at domain.com): Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(+0x4209a) [0xb762b09a] ->
2015 Feb 13
2
[LLVMdev] module functions
Hi. I would like to move first function of module to end. To do this, I remove function from module, then I insert it with getOrInsertFunction() method. It worked. But there is a problem: I can't see body of function (basic blocks). In other words, function basic blocks don't move. To solve, I store function basic blocks before remove it. and after function insertion, I want to insert
2009 Jun 25
0
[LLVMdev] Replacing instruction in LLVM IR by an intrinsics
On Thu, Jun 25, 2009 at 12:32 AM, ihusar<ihusar at fit.vutbr.cz> wrote: >                //now i need to create an instruction that represents a call to a intrinsic >                Function* FIntr = Intrinsic::getDeclaration(&M, Intrinsic::regread_i32); > >                // here it fails: void llvm::CallInst::init(llvm::Value*): >                //Assertion
2017 Apr 29
5
[PATCH v2] nv50/ir: optimize shl(a, 0) to a
helps two alien isolation shaders shader-db: total instructions in shared programs : 4251497 -> 4251494 (-0.00%) total gprs used in shared programs : 513962 -> 513962 (0.00%) total local used in shared programs : 29797 -> 29797 (0.00%) total bytes used in shared programs : 38960264 -> 38960232 (-0.00%) local gpr inst bytes helped
2016 Mar 01
2
Insert CallInst within a function passing same parameters of the calling function.
Hi, supposing I have a function “foo” like the following: int foo(int a, int b) { ... ... } I want to insert int the LLVM IR a call instructions to a function “bar” that requires the same parameters of foo. So my function foo will become: int foo(int a, int b) { bar(a,b); … ... } I am using the following code: bool ThreadSanitizer::runOnFunction(Function &F) {
2017 Apr 29
3
[PATCH] nv50/ir: optimmize shl(a, 0) to a
helps two alien isolation shaders shader-db: total instructions in shared programs : 4251497 -> 4251494 (-0.00%) total gprs used in shared programs : 513962 -> 513962 (0.00%) total local used in shared programs : 29797 -> 29797 (0.00%) total bytes used in shared programs : 38960264 -> 38960232 (-0.00%) local gpr inst bytes helped
2014 Jun 03
8
[PATCH v2 0/4] Constant folding of new Instructions
And another try for constant folding of Instructions for nvc0. Please Review this! Thanks, Tobias Klausmann Tobias Klausmann (4): nvc0/ir: clear subop when folding constant expressions nvc0/ir: Handle reverse subop for OP_EXTBF when folding constant expressions nvc0/ir: Handle OP_BFIND when folding constant expressions nvc0/ir: Handle OP_POPCNT when folding constant expressions
2009 Jun 24
3
[LLVMdev] Replacing instruction in LLVM IR by an intrinsics
Hi everyone, I am trying to write a pass, that finds some instructions and replaces them with my intrinsics, but I am having problem understanding, how this should be done. Let's say I have this instruction: %tmp14 = load i32* getelementptr ([32 x i32]* @gpregs, i32 0, i64 28) and i need to read the load's operands and replace it by let's say: %tmp14 = call i32
2014 May 18
1
[PATCH 1/2] nv50/ir: fix s32 x s32 -> high s32 multiply logic
Retrieving the high 32 bits of a signed multiply is rather annoying. It appears that the simplest way to do this is to compute the absolute value of the arguments, and perform a u32 x u32 -> u64 operation. If the arguments' signs differ, then negate the result. Since there is no u64 support in the cvt instruction, we have the perform the 2's complement negation "by hand".
2007 Sep 04
6
[LLVMdev] [PATCH]: Add SparseBitmap implementation
On 9/4/07, Dan Gohman <djg at cray.com> wrote: > On Tue, Sep 04, 2007 at 10:35:10AM -0400, Daniel Berlin wrote: > > On 9/4/07, Dan Gohman <djg at cray.com> wrote: > > > On Fri, Aug 31, 2007 at 08:10:33PM -0400, Daniel Berlin wrote: > > > > + template <int ElementSize> > > > > + class SparseBitmap { > > > > > > Do you
2015 May 19
2
[LLVMdev] Removing AvailableExternal values in GlobalDCE (was Re: RFC: ThinLTO Impementation Plan)
On Fri, May 15, 2015 at 11:20 PM, Teresa Johnson <tejohnson at google.com> wrote: > On Fri, May 15, 2015 at 2:52 PM, David Blaikie <dblaikie at gmail.com> wrote: >> >> >> On Fri, May 15, 2015 at 1:15 PM, Teresa Johnson <tejohnson at google.com> >> wrote: >>> >>> On Fri, May 15, 2015 at 10:04 AM, David Blaikie <dblaikie at
2016 Sep 30
2
[PATCH v2] nv50/ir: constant fold OP_SPLIT
Split the source immediate value into two new values and create OP_MOV instructions the two newly created values. V2: get rid of special cases Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann at mni.thm.de> --- src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git
2015 Jan 11
2
[PATCH] nv50/ir: Handle OP_CVT when folding constant expressions
On Sun, Jan 11, 2015 at 4:40 PM, Tobias Klausmann <tobias.johannes.klausmann at mni.thm.de> wrote: > Folding for conversions: F32->(U{16/32}, S{16/32}) and (U{16/32}, {S16/32})->F32 > > Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann at mni.thm.de> > --- > V2: Split out F64 parts > V3: remove handling of saturate for (U/S)32, > >
2016 Sep 27
2
[PATCH] nv50/ir: constant fold OP_SPLIT
Split the source immediate value into two new values and create OP_MOV instructions the two newly created values. Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann at mni.thm.de> --- .../drivers/nouveau/codegen/nv50_ir_peephole.cpp | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
2016 Sep 30
2
[PATCH] nv50/ir: constant fold OP_SPLIT
On 28.09.2016 02:01, Ilia Mirkin wrote: > On Tue, Sep 27, 2016 at 7:25 PM, Tobias Klausmann > <tobias.johannes.klausmann at mni.thm.de> wrote: >> Split the source immediate value into two new values and create OP_MOV >> instructions the two newly created values. >> >> Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann at mni.thm.de> >> ---