Displaying 20 results from an estimated 10000 matches similar to: "[LLVMdev] Promote constant expressions to registers"
2016 Apr 27
3
ArrayBoundChecks in SafeCode-llvm37
Hi,
I am wondering if anyone could run ArrayBoundChecks located in
SafeCode-llvm37 (https://github.com/jtcriswell/safecode-llvm37) on
llvm-3.8?
Thanks.
Syed
--
Rafi
2011 Aug 28
0
[LLVMdev] How to break/iterate over nested instructions.
Dear Manish,
First, in answer to your original question: yes, there is a pass that
will convert constant expression GEPs used within LLVM instructions into
GEP instructions. SAFECode has a pass called BreakConstantGEPs in
safecode/trunk/lib/ArrayBoundChecks/BreakConstantGEPs.cpp
(http://llvm.org/viewvc/llvm-project/safecode/trunk/lib/ArrayBoundChecks/BreakConstantGEPs.cpp?view=log).
It
2011 Aug 27
4
[LLVMdev] How to break/iterate over nested instructions.
Hi Duncan,
Why to break?
I wish to analyse all the operands of getelemetptr instructions. For which I
iterate over the code and get the instruction of interest by
getopcode == getelementptr. But the getelementptrs in this form as in my
last mail are getting away from my pass. So i wish to break it. I have a
work around if breaking is not possible, but I think it may be a common
requirement by
2015 Oct 16
3
Break nested instructions?
Is there any pass that breaks an expression out of an instruction's
operand into its own instruction, so that such nested instructions
become explicit and are thus easier to work with in?
e.g Following|call|instruction contains a|GEP|instruction as its first
operand. Is there any pass which allows me to break up this:
| %call = call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([4
2011 Aug 19
1
[LLVMdev] Break operands into multiple instructions
Hi All,
I am creating an instrumentation pass using LLVM libraries. I am using clang++ (version 2.9) to compile cpp code into LLVM bit code. When I generate the llvm bit code using clang++ using -O3, I get many instances of instructions that look like the following.
br i1 icmp ne (i8* bitcast (i32 (i32)* @pthread_cancel to i8*), i8* null), label %bb23, label %bb25
Here three LLVM instructions
2015 Jun 22
2
[LLVMdev] How to Obtain a DataLayout Reference Given a Function & F
I’ve been debugging SAFECode source code files, and line 170 in ArrayBoundCheckLocal.cpp has been causing the following compilation error:
In file included from /Users/peterfinn/Desktop/llvm_trunk_2/projects/safecode/lib/ArrayBoundChecks/ArrayBoundCheckLocal.cpp:18:
In file included from
2011 Jan 22
2
[LLVMdev] Pointers in Load and Store
John,
I have looked at the SAFECode and thought following sould work
if (isa<Constant>(I.getOperand(0)))
{ Out << "*** operand 0 is a constant ******";
if (Instruction *operandI = dyn_cast<Instruction>(I.getOperand(0)))
{ Out << "********operand is an instruction ****";
if (GetElementPtrInst *gepI =
2011 Jan 23
1
[LLVMdev] Pointers in Load and Store
John,
I have looked at the real code (instead of the obsolete one) and it
appears to be easy to find if an operand is a getelementptr
instruction.
if (ConstantExpr * CE = dyn_cast<ConstantExpr>(I.getOperand(0)))
{ Out<< "*** operand 0 is a constant Expr******";
if (CE->getOpcode() == Instruction::GetElementPtr)
{ Out<< "*** operand 0 is
2015 Jul 22
2
[LLVMdev] (no subject)
Hello,
I have tried a lot fix this error but am not able to can you please
find me a solution am trying to compile the SAFECode in Cygwin Environment
to work for windows.
used make -j4 command to make the files in cygwin i have got this error
make[5]: Leaving directory
'/home/uidr7475/Work/LLVM_OBJ/projects/safecode/tools/clang/include'
/usr/bin/cp: cannot stat
2011 Jan 22
0
[LLVMdev] Pointers in Load and Store
On 1/21/2011 10:46 PM, Surinder wrote:
> John,
>
> I have looked at the SAFECode and thought following sould work
>
> if (isa<Constant>(I.getOperand(0)))
> { Out<< "*** operand 0 is a constant ******";
> if (Instruction *operandI = dyn_cast<Instruction>(I.getOperand(0)))
> { Out<<
2007 Dec 03
1
[LLVMdev] Using Function Passes from Module Passes
Dear All,
I'm having some problems using a function pass from a Module pass. My
code is as follows:
DominatorTree & domTree;
...
Function &F = *I; // I is an interator from using Module::begin()
...
domTree = getAnalysis<DominatorTree>(F);
When I compile this code, I get the following error:
/home/vadve/criswell/src/llvm22/include/llvm/Pass.h: In member function
2012 Nov 12
2
[LLVMdev] Project Release Branches
Dear Pawel and All,
Pawel (and other release managers), can you ask the project maintainers
for each project whether they want a release branch before creating it
next time? Alternatively, can you leave branch creation up to the
project maintainers as in the past?
Pawel, you created a release_32 branch of SAFECode last night without my
consultation. That commit itself is fine since we just
2015 Jan 30
2
[LLVMdev] How to install poolalloc?
Hi, all
I want to use the alias analysises in project poolalloc, but I encounter
some problem during installing it. I install poolalloc as follow:
1) cd llvm/projects
svn co http://llvm.org/svn/llvm-project/poolalloc/branches/release_32
poolalloc
3) cd LLVM-object-directory
make tools-only
cd projects/poolalloc
make
When I carried out "make", I get the next error
2015 Jan 30
2
[LLVMdev] How to install poolalloc?
Thank you. But now I am using LLVM 2.9, so which version of poolalloc I
should use ?
--------------------------------------------
Qiuping Yi
Institute Of Software
Chinese Academy of Sciences
On Fri, Jan 30, 2015 at 11:12 PM, John Criswell <jtcriswel at gmail.com> wrote:
> Dear Qiuping,
>
> If you use the release_32 branch of poolalloc, then you need to use LLVM
> 3.2.
>
2012 Nov 12
0
[LLVMdev] Project Release Branches
John,
> Dear Pawel and All,
>
> Pawel (and other release managers), can you ask the project maintainers
> for each project whether they want a release branch before creating it
> next time? Alternatively, can you leave branch creation up to the
> project maintainers as in the past?
I think asking project maintainers for a go/no-go for branch creation
is a very good idea that
2015 Jan 31
4
[LLVMdev] How to install poolalloc?
Hi, John Criswell
Thank you very much.
I am installing LLVM-3.2, but I encounter the next error when carrying out
"make":
llvm[3]: Compiling ClangASTNodesEmitter.cpp for Release+Asserts build
ClangASTNodesEmitter.cpp: In member function ‘std::pair<llvm::Record*,
llvm::Record*><unnamed>::ClangASTNodesEmitter::EmitNode(const
std::multimap<llvm::Record*, llvm::Record*,
2015 Jan 30
2
[LLVMdev] How to install poolalloc?
I am just not upgrade my LLVM. So I must use some higer LLVM version, right?
--------------------------------------------
Qiuping Yi
Institute Of Software
Chinese Academy of Sciences
On Fri, Jan 30, 2015 at 11:21 PM, John Criswell <jtcriswel at gmail.com> wrote:
> On 1/30/15 10:17 AM, Qiuping Yi wrote:
>
> Thank you. But now I am using LLVM 2.9, so which version of poolalloc I
2015 Jan 30
0
[LLVMdev] How to install poolalloc?
Dear Qiuping,
If you use the release_32 branch of poolalloc, then you need to use LLVM
3.2.
For directions on compiling poolalloc with LLVM 3.2, please the SAFECode
build directions at http://safecode.cs.illinois.edu/docs/Install.html.
You can just skip the steps in the directions that compile SAFECode.
Regards,
John Criswell
On 1/30/15 10:05 AM, Qiuping Yi wrote:
> Hi, all
>
> I
2012 Sep 24
2
[LLVMdev] [cfe-dev] SPIR provisional specification is now available in the Khronos website
>
> For the record, I just workarounded it in pocl by borrowing the
> BreakConstantGEPs code from SAFECode. But for SPIR specs, IMHO, this should
> be reconsidered.
Yes, I agree.
On 24 September 2012 15:08, Pekka Jääskeläinen <pekka.jaaskelainen at tut.fi>wrote:
> Well,
>
> To be honest I'm not very comfortable with the whole constant GEP
> idea. It's a
2015 Feb 27
2
[LLVMdev] Walking thru CallGraph bottom up
Hi Simon,
> From: Simone Atzeni <simone.at at gmail.com>
> To: John Criswell <jtcriswel at gmail.com>
> Cc: llvmdev at cs.uiuc.edu
> Subject: Re: [LLVMdev] Walking thru CallGraph bottom up
> Message-ID: <318EBA41-2040-4EFE-B330-5813C817C2A2 at gmail.com>
> Content-Type: text/plain; charset="windows-1252"
>
> I think I got it and the example is