similar to: [LLVMdev] building a jump table in LLVM IR

Displaying 20 results from an estimated 10000 matches similar to: "[LLVMdev] building a jump table in LLVM IR"

2013 Jan 04
2
[LLVMdev] building a jump table in LLVM IR
Thanks for the followup. If I understand the suggestion correctly, this doesn't solve the problem of building a jump table to call into other functions, since, as you note, indirectbr can only call into blocks in the same function. Is the conclusion then that there is no way to do this in LLVM IR? It looks like these kind of restrictions (no branching between functions and no instructions
2013 Jan 03
0
[LLVMdev] building a jump table in LLVM IR
On 1/2/2013 11:05 AM, Tom Roeder wrote: > Hi, > > I'm currently writing an opt module for fast indirect call checks > using a table of allowed indirect call targets. The code replaces > function pointers with offsets into the table then masks the offset > for the table size and restores the function pointer before the call. > I have some ways of dealing with some kinds of
2013 Jan 07
1
[LLVMdev] building a jump table in LLVM IR
AFAIK, this won't work: the way I want to use a jump table requires me to get a pointer into the table that I can use as a function pointer to call the original function in a normal call instruction. If I just add a new basic block in some containing function with a call instruction and somehow get a pointer to that instruction, then this does satisfy the goal of putting the new instructions
2013 Jan 07
0
[LLVMdev] building a jump table in LLVM IR
On Fri, Jan 4, 2013 at 2:49 PM, Tom Roeder <tmroeder at google.com> wrote: > Thanks for the followup. > > If I understand the suggestion correctly, this doesn't solve the > problem of building a jump table to call into other functions, since, > as you note, indirectbr can only call into blocks in the same > function. Is the conclusion then that there is no way to do
2013 Feb 06
3
[LLVMdev] LLVM Coverage GCDA Flush API
Ah, my mistake. So this already works. I guess that bug is out of date, since this feature works already. -- John Harrison On Wed, Feb 6, 2013 at 10:00 AM, Joshua Cranmer <pidgeot18 at gmail.com> wrote: > On 2/6/2013 11:43 AM, John Harrison wrote: > >> The way `-ftest-coverage -fprofile-arcs` works at the moment it only >> flushes via `atexit()`. This patch allows you
2012 Sep 17
2
[LLVMdev] Label address (taken with blockaddress) not exported to .s
Hi all, I recently updated my LLVM tree and I have a strange issue with the use of blockaddress. The LLVM file that I try to compile is [1]. I do: > llvm-as test_ba.ll > opt -O2 test_ba.bc -o test_ba_opt.bc > llc test_ba_opt.bc In r159116 (committed in 24/06/2012) I get (in the end of the .s file): .type table_closures, at object # @table_closures .section .rodata,"a",
2013 Feb 06
0
[LLVMdev] LLVM Coverage GCDA Flush API
Why does __gcov_flush only flush the current compilation unit? For gcc __gcov_flush flushes all of the loaded files. Is there a way to have __gcov_flush flush everything? -- John Harrison On Wed, Feb 6, 2013 at 10:24 AM, John Harrison <ash.gti at gmail.com> wrote: > Ah, my mistake. So this already works. I guess that bug is out of date, > since this feature works already. >
2012 Aug 21
2
[LLVMdev] issues registering passes in osx 10.8
Thank you. The edit made no difference. I did a clean install and the same error is reported. Any other suggestions? regards, Ashwin On Aug 21, 2012, at 2:59 PM, Joshua Cranmer <pidgeot18 at gmail.com> wrote: > On 8/21/2012 3:52 PM, Ashwin kumar wrote: >> Hi everyone, >> >> This is Ashwin. I have a mac running osx 10.8. I am new to LLVM and have the version 3.1
2013 Feb 06
2
[LLVMdev] LLVM Coverage GCDA Flush API
The way `-ftest-coverage -fprofile-arcs` works at the moment it only flushes via `atexit()`. This patch allows you to flush the coverage at any point by calling `__llvm_gcov_flush` the same way `__gcov_flush` works for gcc. If there is another way of doing this, I might of missed it but I was looking for `__gcov_flush` and I did not find the equivalent in llvm at the moment. -- John Harrison
2013 Nov 23
0
[LLVMdev] "Mapping High-Level Constructs to LLVM IR"
On 11/23/2013 12:18 AM, Mikael Lyngvig wrote: > Thanks, you have a lot of valid points there. I have myself long ago > abandoned the path of using C as a backend language due to the very > factors you mention. > > However, as I said, the document was put together in 30 minutes. Not > exactly ready for prime time :-) > > I do agree that all of the things you mention
2012 Aug 21
2
[LLVMdev] issues registering passes in osx 10.8
Hi everyone, This is Ashwin. I have a mac running osx 10.8. I am new to LLVM and have the version 3.1 installed. I am trying to get some LLVM transform passes running on my machine. After having compiled the LLVM source without making changes to the configuration files I am able to run the LLVM gcc and clang. But I am having some trouble using the passes. I tried loading the hello pass inside the
2012 Jun 16
2
[LLVMdev] Windows development and "virus" in LLVM test suite
> > Not having an AV or swithching it off at times is not a sign of > stupidity. The best antivirus is a mindful, knowledgeable user. And the > antivirus doesn't really protect you in case of risky behavior. > I couldn't have said it better myself. I've had three viruses in 29 years and only one of them was my own fault. I've spent hours trying to explain people
2012 Apr 09
1
[LLVMdev] Loop strip-mining pass in LLVM
Does anyone know of any loop strip-mining passes implemented in LLVM? -- Joshua Cranmer News submodule owner DXR coauthor
2013 Feb 06
0
[LLVMdev] LLVM Coverage GCDA Flush API
On 2/6/2013 11:43 AM, John Harrison wrote: > The way `-ftest-coverage -fprofile-arcs` works at the moment it only > flushes via `atexit()`. This patch allows you to flush the coverage at > any point by calling `__llvm_gcov_flush` the same way `__gcov_flush` > works for gcc. > > If there is another way of doing this, I might of missed it but I was > looking for
2012 Aug 21
0
[LLVMdev] issues registering passes in osx 10.8
On 8/21/2012 3:52 PM, Ashwin kumar wrote: > Hi everyone, > > This is Ashwin. I have a mac running osx 10.8. I am new to LLVM and > have the version 3.1 installed. I am trying to get some LLVM transform > passes running on my machine. After having compiled the LLVM source > without making changes to the configuration files I am able to run the > LLVM gcc and clang. But I am
2012 Oct 30
1
[LLVMdev] help writing an IR targeting backend
I've got a newbie question and am looking for some pointers. I want to implement a backend that targets another compiler IR format. Looking through the backend documentation, the infrastructure is stated to be flexible enough to do this (and refers to a hypothetical GCC IR backend). However, all of the documentation I've run across addresses actual ISA targets. Is there any
2012 Oct 24
0
[LLVMdev] How to Find Instruction Encoding for a MachineInstr
On 10/23/2012 1:58 PM, John Criswell wrote: > Dear All, > > I'm enhancing a MachineFunctionPass that enforces control-flow > integrity. One of the things I want to do is to set the alignment of > an instruction (by adding NOPs before it in the MachineBasicBlock or > by emitting an alignment directive to the assembler) if it causes a > specific sequence of bytes to be
2013 Feb 07
1
[LLVMdev] LLVM Coverage GCDA Flush API
Yikes! It only flushes the counts for the current compilation unit? That sounds like a terrible bug. Can you file a bugzilla report, please? On Feb 6, 2013, at 12:05 PM, John Harrison <ash.gti at gmail.com> wrote: > Why does __gcov_flush only flush the current compilation unit? For gcc __gcov_flush flushes all of the loaded files. > > Is there a way to have __gcov_flush flush
2012 Jun 16
0
[LLVMdev] Windows development and "virus" in LLVM test suite
On 6/15/2012 8:12 PM, Mikael Lyngvig wrote: > > Not having an AV or swithching it off at times is not a sign of > stupidity. The best antivirus is a mindful, knowledgeable user. > And the > antivirus doesn't really protect you in case of risky behavior. > > > I couldn't have said it better myself. I've had three viruses in 29 > years and
2012 Oct 23
4
[LLVMdev] How to Find Instruction Encoding for a MachineInstr
Dear All, I'm enhancing a MachineFunctionPass that enforces control-flow integrity. One of the things I want to do is to set the alignment of an instruction (by adding NOPs before it in the MachineBasicBlock or by emitting an alignment directive to the assembler) if it causes a specific sequence of bytes to be generated at a specific alignment. The goal is to ensure that sequences of