Displaying 20 results from an estimated 100000 matches similar to: "address aliasing in llvm pass"
2018 Feb 19
0
address aliasing in llvm pass
Hello Everyone,
I have written a llvm pass which will instrument load and store of annotated variables. Now I am looking to add address aliasing in my pass. Suppose if there are two variables and only of the them is annotated accessing the same memory then I want to instrument load and store for both variables instead of instrumenting only the annotated one.
I am not sure where should I start,
2018 Jan 13
0
Integrating llvm pass with pass manager
Do you pull clang under llvm/tools and compile it as well? In theory, if
`opt` recognize the option, so does `clang -mllvm`.
2018-01-12 8:47 GMT+08:00 sangeeta chowdhary <sangitachowdhary at gmail.com>:
> Hello,
>
> I have tried giving this option like this
>
> clang -c -emit-llvm -mllvm -rdetector hello.c -c -o hello.bc
> but I am getting error " Unknown command
2018 Jan 04
0
writing llvm pass to instrument read and write
Hello All,
I am trying to write llvm pass to instrument function in external library. I am using clang to automatically load my pass. I have test.cpp which calls functions in library testlib.so. I have written llvm pass to instrument all reads and writes in test.cpp and call function(recordRW) in testlib.so.
this is how my pass looks like -
for (auto &BB : F) {
for (auto &I : BB)
2018 Jan 08
5
Integrating llvm pass with pass manager
Hello,
I have followed steps given in - https://stackoverflow.com/questions/29910051/integrating-llvm-passes/48142693#48142693 <https://stackoverflow.com/questions/29910051/integrating-llvm-passes/48142693#48142693>, to integrate my pass with pass manager and run it with clang. I am able to run my pass with opt - opt -mypass but when I try to run it with clang, I always get an error -
2018 Jan 13
2
Integrating llvm pass with pass manager
Clang doesn’t support adding passes from the command line the way opt does.
Opt has special parsing in opt.cpp for this that clang doesn’t have.
I’m not sure what the correct way to do this is. I think your plugin needs
to do something to tell clang/llvm when to run the pass. I’ll try to look
later when I’m back at a computer.
On Fri, Jan 12, 2018 at 7:00 PM 陳韋任 via llvm-dev <llvm-dev at
2018 Jan 04
0
writing llvm pass for external library
Hello All,
I am trying to write llvm pass to instrument function in external library. I am using clang to automatically load my pass. I have test.cpp which calls functions in library testlib.so. I have written llvm pass to instrument all reads and writes in test.cpp and call function(recordRW) in testlib.so.
this is how my pass looks like -
for (auto &BB : F) {
for (auto &I : BB)
2018 Jan 11
0
Integrating llvm pass with pass manager
`-mypass` should be only recognize by the backend part (i.e. llvm). You
should add `-mllvm` to tell clang the following argument have to be passed
to the backend part.
2018-01-08 8:02 GMT+08:00 sangeeta chowdhary via llvm-dev <
llvm-dev at lists.llvm.org>:
> Hello,
>
> I have followed steps given in - https://stackoverflow.com/
>
2018 Jan 15
0
Integrating llvm pass with pass manager
On 14 Jan 2018, at 00:14, sangeeta chowdhary <sangitachowdhary at gmail.com> wrote:
>
> I have taken SimplePass and added in Transform directory, “libLLVMSimplePass.a” is built but I can not see this pass in opt —help. I don’t even see the name of pass while registering it in the example.
The SimplePass example is intended to be built out of tree, so I’ve no idea what happens if you
2020 Jun 24
2
Function name demangling in llvm ir
(though, usual caveat: you /usually/ shouldn't be doing that - instead
relying only on whatever semantics the IR actually carries, rather
than implying extra semantics based on the demangled name)
On Wed, Jun 24, 2020 at 12:48 PM Johannes Doerfert via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
>
> I have not tried it but maybe
>
> `std::string llvm::demangle(const
2018 Aug 11
2
Need help in understanding llvm optimization
I am sorry to not make my question clear. My question is how this value is
calculated without having fadd and fsub in IR?
On Sat, Aug 11, 2018 at 4:06 PM, Craig Topper <craig.topper at gmail.com>
wrote:
> Neither 1e16 or 1e16+1 can be accurately represented in a double. The
> largest integer than be accurately represented is 2^53. As the number gets
> larger floating sacrifices
2020 Jun 24
2
Function name demangling in llvm ir
Hello,
I am doing some program analysis with C++ programs. I need to check if some
particular function is called in the program, for that I need the name of
the function being called in the call instruction. Since C++ mangles the
name of the function, I need a way to demangle the function name in llvm
IR. Is there any way to achieve that in llvm pass?
Regards,
Sangeeta
-------------- next part
2018 Aug 11
4
Need help in understanding llvm optimization
Hi,
I have below code in C -
int main() {
double x,y;
x = 1e16;
y = (x + 1) - x;
printf("y:%e\n", y);
return 0;
}
llvm bitcode looks like this for this function -
; Function Attrs: nounwind uwtable
define dso_local i32 @main() local_unnamed_addr #0 {
entry:
%call = tail call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x
i8], [4 x i8]* @.str, i64 0, i64
2018 Jan 03
0
instrumenting read and write
Hello Everyone,
I am trying to do what has been done for tsan. So, there is a run time library “tsan" to detect races. There is a llvm pass to instrument read and write in c program and call functions in run time library. I have all three things with me, but I don’t know how should I link all these three together.
Basically I want to know how to implement same functionality as given below
2018 Jan 14
2
Integrating llvm pass with pass manager
I have taken SimplePass and added in Transform directory, “libLLVMSimplePass.a” is built but I can not see this pass in opt —help. I don’t even see the name of pass while registering it in the example.
> On Jan 13, 2018, at 7:35 AM, David Chisnall <David.Chisnall at cl.cam.ac.uk> wrote:
>
> On 13 Jan 2018, at 03:45, Craig Topper via llvm-dev <llvm-dev at lists.llvm.org>
2018 Aug 30
2
Instruction does not dominate all uses!
Hello All,
I am instrumenting IR to pass addres of the function to runtime but I am
getting error - Instruction does not dominate all uses. I used M.dump() to
get below dump, not able to figure out what I am doing wrong. Any help
would be much appreciated.
define dso_local double @mysqrt(double %val1) local_unnamed_addr #0 {
entry:
%0 = bitcast double (double)* @mysqrt to i8*
%1 = call
2020 Feb 29
2
Preserving the type of structure
Hello,
LLVM IR flattens out the structure with one integer element to i32. Is
there any way to disable this? I want to preserve the type information of
the structure. I tried compiling the program with O0, it maintains the type
for most of the instructions but for all.
Regards,
Sangeeta
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
2009 Nov 04
0
[LLVMdev] Determine branch coverage information
Hi Ahmed!
Adventure wrote:
> Hello everybody, I am a beginner in LLVM and need to know how to use
> LLVM to instrument a C program and execute this instrumented program
> with different test cases to determine the branch coverage information
> for each test case. Any suggestion or help is more than welcomed. Thanks
> in advance. Ahmed Raafat.
(In the following instructions you
2018 Aug 21
4
different output with fast-math flag
This is of course not homework. I am trying to understand how fast math
optimizations work in llvm. When I compared IR for both the programs, the
only thing I have noticed is that fdiv and fmul are replaced with fdiv fast
and fmul fast. Not sure what happens in fdiv fast and fmul fast.
I feel that its because d/max is really small number and fast-math does not
care about small numbers and consider
2010 Oct 28
2
[LLVMdev] strict aliasing and LLVM
Thanks. Just built clang and saw the meta data and annotations on the memory
accesses -- is any opt pass consuming the information?
By the way the build instruction in this page
http://clang.llvm.org/get_started.html needs to be updated -- it recommends
config (with default settings) and build llvm in the source dir -- it leaves
some 'sticky' generated files in the source dir leading to
2010 Oct 30
1
[LLVMdev] strict aliasing and LLVM
On Sat, Oct 30, 2010 at 1:44 AM, Nick Lewycky <nicholas at mxc.ca> wrote:
> Xinliang David Li wrote:
>
>>
>>
>> On Fri, Oct 29, 2010 at 12:26 AM, Nick Lewycky <nicholas at mxc.ca
>> <mailto:nicholas at mxc.ca>> wrote:
>>
>> Xinliang David Li wrote:
>>
>> As simple as
>>
>> void foo (int n, double