similar to: How jump-table representated in DAG

Displaying 20 results from an estimated 300 matches similar to: "How jump-table representated in DAG"

2018 Apr 10
1
How to get the case value from Machine Instruction
Thanks for your help. Is there possible I can get the realily case value form the MI? For the case in https://bugs.llvm.org/show_bug.cgi?id=34902. as follows. ############################# * GCC v7.1 generated assembly ############################# ** Options: -Os -marm -march=armv7-a foo: @ args = 0, pretend = 0, frame = 0 @ frame_needed = 0, uses_anonymous_args = 0 sub
2018 Apr 09
2
How to get the case value from Machine Instruction
Hi, guys I am interesting about how to get the switch case value form the Machine Instruction. I know the switch will be converted to jump-table in the Machine Instruction. And in the phase CodeGen , the case-value of SwitchInst can get esasly. but it seems no case -value in Machine Instruction. The MI as follows: Frame Objects: fi#0: size=1, align=0, at location [SP] fi#1: size=4,
2018 Apr 09
0
How to get the case value from Machine Instruction
Some glitch in the emailer? I have received this message 3 times in a row!? I think that by the time it gets as far as MI-level there is no reversible method of determining the 'case' label at all. The reason I say this, is that I have often seen optimisations that coalesce groups of values into interesting logical tests and jump-tables are completely avoided. For example, a simple
2020 Jun 19
2
How to inhibit jump table range check
I am working on a back end for an architecture whose jump via table instruction includes the range check. Therefore I don't need the range check generated (in SelectionDAGBuilder ?). There appears to be a struct JumpTableHeader which contains a field OmitRangeCheck which, when true, does what I want. However, there doesn't appear to be a mechanism for a back end to set it. Anyone
2018 Apr 09
0
How to get the case value from Machine Instruction
Hi, guys I am interesting about how to get the switch case value form the Machine Instruction. I know the switch will be converted to jump-table in the Machine Instruction. And in the phase CodeGen , the case-value of SwitchInst can get esasly. but it seems no case -value in Machine Instruction. The MI as follows: Frame Objects: fi#0: size=1, align=0, at location [SP] fi#1: size=4,
2013 May 06
2
[LLVMdev] convert switch stmts to If statements
Hi All, Is there a pass in llvm that converts switch statements to if statements? George -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130506/f06741c4/attachment.html>
2013 May 06
2
[LLVMdev] convert switch stmts to If statements
I mean an llvm Pass that transforms switch statements into if statements. For example, if I have code with switch statements then running the pass will convert all switches to ifs in the bytecode. George On Mon, May 6, 2013 at 4:20 PM, Hal Finkel <hfinkel at anl.gov> wrote: > ----- Original Message ----- > > From: "George Baah" <georgebaah at gmail.com> > >
2014 Oct 27
4
[LLVMdev] Switch instruction lowering
Hi, I'm interested in any information about implementations of switch instruction and its runtime cost. If it's very target dependent, I'm mostly care about X86. Pointing some LLVM code is also good. - Paweł -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20141027/285f02e5/attachment.html>
2012 Feb 27
3
[LLVMdev] SwitchInst handling in backend
Hi, if I want to know how switch instructions are handled in the backend, where do I have to look first? I'm not familiar with the backend framework and I couldn't figure out the interface between the LLVM instruction 'SwitchInst' and whatever there is in the backend. I would be very happy about every hint where I have to look to find the entry point of switch instructions in the
2013 Mar 28
1
[LLVMdev] How can a pass obtain the path of input file?
Hi all I write a pass, which will link two module together, Is there some method that I can obtain the path of the input file? If so, I can get the module by the path of the input. Or Is there some method that I can obtain the two modules of the input file by opt? Thanks, yaoxiao -------------- next part -------------- An HTML attachment was scrubbed... URL:
2012 Feb 27
0
[LLVMdev] SwitchInst handling in backend
On Mon, Feb 27, 2012 at 12:52 PM, Nico <listiges at arcor.de> wrote: > Hi, > > if I want to know how switch instructions are handled in the backend, where do I have to look first? > I'm not familiar with the backend framework and I couldn't figure out the interface between the LLVM instruction 'SwitchInst' and whatever there is in the backend. > > I would be
2012 Feb 27
2
[LLVMdev] SwitchInst handling in backend
Hi Eli, Thank you for the quick reply. On Feb 27, 2012, at 10:03 PM, Eli Friedman wrote: > SelectionDAGBuilder::visitSwitch is the general switch lowering... I understand this lowering is target independent and there is no additional target dependent handling of switch instructions - right? Only branches and jump tables are left after this lowering? Kind regards, Nico
2013 May 06
0
[LLVMdev] convert switch stmts to If statements
----- Original Message ----- > From: "George Baah" <georgebaah at gmail.com> > To: "LLVM Developers Mailing List" <llvmdev at cs.uiuc.edu> > Sent: Monday, May 6, 2013 3:09:33 PM > Subject: [LLVMdev] convert switch stmts to If statements > > > > > Hi All, Is there a pass in llvm that converts switch statements to if > statements?
2013 May 06
0
[LLVMdev] convert switch stmts to If statements
There is also the LowerSwitch pass that converts switch instructions to a sequence of branches. On May 6, 2013, at 1:24 PM, George Baah <georgebaah at gmail.com> wrote: > I mean an llvm Pass that transforms switch statements into if statements. For example, if I have code with switch statements then running the pass will convert all switches to ifs in the bytecode. > > George
2018 May 29
0
LLVM Social - Beijing: May 19th, 2018
Hope live broadcast ! <br/><br/>Thanks,<br/>yaoxiao 在 2018-05-29 15:02:30,"Leslie Zhai via llvm-dev" <llvm-dev at lists.llvm.org> 写道: > > >在 2018年05月29日 14:58, mayuyu.io 写道: >> Any hint on the date of LLVM Social ShangHai? >Wu Wei scheduled July 1th http://hellollvm.org/ > > >> >> Zhang >> >>> 在
2013 Apr 07
1
[LLVMdev] How to get the Instruction where one function use the global variable.
Hi, all I try to get the Instructions where one function use the global variable. for (llvm::Module::global_iterator gvar_iter = M.global_begin(); gvar_iter != M.global_end(); gvar_iter++) { llvm::GlobalVariable *gvar = &*gvar_iter; llvm::errs() << "const global var: " << gvar->getName() << "\n"; for (
2019 Aug 31
3
Usage of the jumptable attribute
Hello everyone, I'm new to LLVM (which is a really great project by the way) and I hope this is the right place for my question. In the LLVM Language Reference Manual I found the "jumptable" function attribute, which seems to be exactly what I need for my project (where I want to add one level of indirection to every function call), but I have trouble figuring out, how to use
2014 Apr 04
2
[LLVMdev] [RFC] Simple control-flow integrity
On Wed, Apr 02, 2014 at 05:28:04PM -0700, Tom Roeder wrote: > On Fri, Mar 21, 2014 at 1:46 PM, Peter Collingbourne <peter at pcc.me.uk>wrote: > > > On Fri, Mar 21, 2014 at 12:54:07PM -0700, Tom Roeder wrote: > > > On Fri, Mar 21, 2014 at 12:15 PM, Peter Collingbourne <peter at pcc.me.uk> > > wrote: > > > >> The way I've implemented it (see
2014 Oct 05
2
[LLVMdev] Question about jumptable and indirect function call.
Hi all, I'm a beginner in LLVM. I read a paper recently, and I'm trying to use LLVM jumptable in 3.5. When I compile the .bc file into .s file, I tried to use the different jumptable type: all, single, ... e.g. clang -c -emit-llvm test.c llc test.bc -jump-table-type=full -o test-full.s llc test.bc -jump-table-type=single -o test-single.s The tested C source code is like: void foo() {
2017 May 16
2
[RFC] CFI for indirect calls with ThinLTO
Hi, this is a proposal for the implementation of CFI-icall [1] with ThinLTO. Jumptables are generated in the merged module. To generate a jumptable, we need a list of functions with !type annotations, including (in non-cross-dso mode) external functions. Unfortunately, LLVM IR does not preserve unused function declarations, and we don’t want to copy the actual function bodies to the merged