Displaying 20 results from an estimated 1100 matches similar to: "[LLVMdev] Crash with llc and vector code"
2010 Oct 22
1
[LLVMdev] Crash with llc and vector code
Hi,
Compiling the simple following function with llv (LLVM 2.8) :
define <4 x i32> @foo(<4 x i32> %a, <4 x i32> %b) {
%res = select <4 x i1> <i1 true, i1 false, i1 true, i1 true>, <4 x i32> %a, <4 x i32> %b ;
ret <4 x i32> %res
}
gives :
UNREACHABLE executed!
0 llc 0x0000000100927422 std::_Rb_tree<llvm::sys::Path,
2011 Feb 11
0
[LLVMdev] Compiler error when self-hosting
I've hit this weird compiler error when building llvm/clang
$ clang --version
clang version 2.9 (trunk 125254)
Target: x86_64-apple-darwin10
Thread model: posix
Source rev is 125326
$ make
llvm[1]: Compiling APFloat.cpp for Release build
llvm[1]: Compiling APInt.cpp for Release build
llvm[1]: Compiling APSInt.cpp for Release build
llvm[1]: Compiling Allocator.cpp for Release build
llvm[1]:
2013 Aug 09
2
[LLVMdev] [global-isel] ABI lowering clarifications
[snip]
> The ABI boundary lowering requires types to be broken down further into
> 'legal types' that can be mapped to registers. The secondary breakdown is
> currently handled by TargetLowering::LowerCallTo() calling
> getRegisterType() and getNumRegisters(). Most ABIs are defined in terms
> of C types, not LLVM IR types, so there is a close connection between the C
>
2006 May 30
3
[LLVMdev] Adding an object to llc (analysis pass)
Hi
> One would expect this, its a facility of the C++ language. The anonymous
> namespace is, essentially, the same as declaring everything in it
> static. That is, the symbols are not exported and not available for
> linking.
Yes, it was pretty clear after finding out that this isn't a linking error
which i suspected...
> > So for all those trying to add an analysis path:
2010 Mar 18
0
[LLVMdev] How to link LLVMCore.a into a custom pass that is fed to opt
Hey all,
I need to use C bindings in a pass that I am authoring (specifically, I want
to use the OCaml bindings that are tied to the C bindings to author the
pass). However, this requires that I link in LLVMCore to provide said
bindings to my library. From what I've read, there is a known issue with
linking LLVMCore into a module that is fed to opt. Namely, you get the
following assertion:
2008 Jul 17
0
[LLVMdev] Pass Added as Required fails assert
We have discovered the issue with our code. It seems that when the first
call to doInitilization utilized one of the specified analyses, that
analysis had never been properly added as required. Using gdb, we can see
that addRequired is getting called (seen below) but when doInitalization is
finally called, it still responds as if the analysis was not required.
Is this a bug or is
2008 Jul 17
2
[LLVMdev] Pass Added as Required fails assert
Hey all,
We have been working on a pass that uses another pass to count loads and
stores prior to performing its own instrumentation. The second pass adds
the first as required via the usual getAnalysisUsage function. On one
machine, it has been tested and proven to function correctly. On another
machine, whenever the second pass is run, it consistently fails the
assertion:
opt:
2006 May 31
2
[LLVMdev] Adding an object to llc (analysis pass)
Hi
Am Dienstag, 30. Mai 2006 19:21 schrieb Chris Lattner:
> On Tue, 30 May 2006, Silken Tiger wrote:
> > Everthing now compiles fine, but when running llc with invoking my own
> > backend derived from the cbackend i get the following error:
> > namespace llvm {
> > class MParSchedule : public BasicBlockPass {
> > public:
> >
> >
2006 Jun 01
2
[LLVMdev] Adding an object to llc (analysis pass)
Hi
> Right it does. However, does something *else* require MParSchedule? If
> so, what?
Ok, i am writing on a different backend based on the cbackend.
The test usage of this pass looks like this:
void getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequired<LoopInfo>();
AU.addRequired<MParSchedule>();
AU.setPreservesAll();
}
and then in the
2011 Mar 22
2
[LLVMdev] LLVM optimization passes crash when running on second thread
Hello,
I am trying to modify my LLVM-based compiler to perform an initial, no-optimization compilation synchronously on startup and then perform an asynchronous, optimized recompilation in the background, and I am getting in one of the optimization passes.
- I am using the official release of LLVM 2.8
- I have compiled LLVM with threading enabled; I am running llvm::llvm_start_multithreaded() on
2011 Aug 29
0
[LLVMdev] PTX target for LLVM!
Hi everyone,
I downloaded the latest version of LLVM PTX backend from
http://www.prog.uni-saarland.de/projects/anysl
and made the required changes to all the files mentioned in the README. But
I get the following error when I compile it.
llvm[3]: Compiling PTXBackend.cpp for Release build
In file included from PTXBackend.h:70:0,
from PTXBackend.cpp:36:
PTXPasses.h: In constructor
2006 May 31
0
[LLVMdev] Adding an object to llc (analysis pass)
On Wed, 31 May 2006, Silken Tiger wrote:
>> that requires a BasicBlockPass, it will fail the same was as when a
>> ModulePass requires a FunctionPass.
> void MParSchedule::getAnalysisUsage(AnalysisUsage &AU) const {
> AU.setPreservesAll();
> }
>
> MParSchedule requires nothing and changes nothing. So hopefully the above code
> represents this fact?
Right
2006 May 09
1
[LLVMdev] Memory leaks in LLVM
Hi,
Probably some of the leaks Valgrind reports are spurious, but the numbers
seem to be significant enough to demand some attention:
==10132== LEAK SUMMARY:
==10132== definitely lost: 15,624 bytes in 558 blocks.
==10132== indirectly lost: 44,548 bytes in 1,591 blocks.
==10132== possibly lost: 37,576 bytes in 98 blocks.
==10132== still reachable: 1,336,876 bytes in 1,364 blocks.
2012 Apr 04
0
[LLVMdev] [Review Request][PATCH] Add the function "vectorizeBasicBlock"
Ether,
Sounds great! Please keep in mind that, eventually, we'll also want to
configure those options from TLI (or something similar). The patch
looks good to me.
-Hal
On Wed, 4 Apr 2012 23:54:18 +0800
Hongbin Zheng <etherzhhb at gmail.com> wrote:
> Hi Hal,
>
> I add a function named "vectorizeBasicBlock" which allow users to
> perform basic block
2012 Apr 04
2
[LLVMdev] Fwd: [Review Request][PATCH] Add the function "vectorizeBasicBlock"
Hi Hal,
I add a function named "vectorizeBasicBlock" which allow users to
perform basic block vectoirzation inside their pass. But i am not sure
whether i missed something as no one use the function right now (But
it will be used by Polly sometimes later[1]).
In addition, we (tobi and me) also want to make the vectorizer being
configured command line flags. To achieve this, we are
2010 Apr 19
2
[LLVMdev] The "scope" of passes
ether zhhb wrote:
> hi John,
>
> sorry for reply so late.
>
> On Tue, Apr 13, 2010 at 10:38 PM, John Criswell <criswell at uiuc.edu
> <mailto:criswell at uiuc.edu>> wrote:
>
> Devang Patel wrote:
>
> On Mon, Apr 12, 2010 at 6:41 PM, ether zhhb
> <etherzhhb at gmail.com <mailto:etherzhhb at gmail.com>> wrote:
>
>
2018 May 07
0
Preservation of CallGraph (by BasicBlockPass, FunctionPass)
I'm not sure about the old pass manager, but I think the new pass
manager solves this issue. See
llvm::updateCGAndAnalysisManagerForFunctionPass where it updates the
call graph to be in sync with edges deleted by function passes. So I
suspect the right fix is to use the new pass manager.
-- Sanjoy
On Mon, May 7, 2018 at 7:32 AM, Björn Pettersson A via llvm-dev
<llvm-dev at
2018 May 08
0
Preservation of CallGraph (by BasicBlockPass, FunctionPass)
Hi Björn,
1) The pass pipeline syntax is documented here:
https://github.com/llvm-project/llvm/blob/master/include/llvm/Passes/PassBuilder.h#L378
-die is not implemented, since the new pass manager does not support
BasicBlock passes. But you can use dce instead: "-passes=dce"
2) I don't have a qualified answer here, but if I recall correctly, the
trouble to correctly update the
2010 Apr 20
0
[LLVMdev] The "scope" of passes
hi John,
On Mon, Apr 19, 2010 at 10:27 PM, John Criswell <criswell at uiuc.edu> wrote:
> ether zhhb wrote:
>
>> hi John,
>>
>> sorry for reply so late.
>>
>> On Tue, Apr 13, 2010 at 10:38 PM, John Criswell <criswell at uiuc.edu<mailto:
>> criswell at uiuc.edu>> wrote:
>>
>> Devang Patel wrote:
>>
>> On
2018 May 07
2
Preservation of CallGraph (by BasicBlockPass, FunctionPass)
If I run:
opt -globals-aa -die -inline -debug-pass=Details foo.ll -S
then I will get this pass structure:
Target Library Information
Target Transform Information
Target Pass Configuration
Assumption Cache Tracker
Profile summary info
ModulePass Manager
CallGraph Construction
Globals Alias Analysis
FunctionPass Manager
BasicBlockPass Manager
Dead Instruction