Displaying 4 results from an estimated 4 matches for "label_bb4".
Did you mean:
label_bb5
2010 Jun 24
2
[LLVMdev] How to prevent an instruction to be executed more than once?
...t to mark the beginning of BB4 and then to patch the
jumps, because I want to temporarily change the flow at runtime and then to
restore the previous version.
In order to patch, I need to know the exact structure of the generated code.
So, I might have a BasicBlock like:
BB4:
call void asm "label_BB4:\0A", ""()
call void asm "jmp label_BB5\0A", ""()
br label %BB5
and in the generated code the br label %BB5 will actually never be reached.
But I introduce the jmp in inline asm in hexa code with .byte in order to
control if it is a long or a short jump and to...
2010 Jun 24
0
[LLVMdev] How to prevent an instruction to be executed more than once?
Hello-
Doing control-flow (jumps and/or labels) in inline asm is a really bad idea. What are you trying to achieve?
Alistair
On 24 Jun 2010, at 12:54, Xinfinity wrote:
>
> Hi LLVM-devs,
>
> I am looking for a way to prevent an instruction to be executed more than
> once, or duplicated .. I know that by default everything can be duplicated,
> but is there a work-around?
>
2010 Jun 24
0
[LLVMdev] How to prevent an instruction to be executed more than once?
...e
> jumps, because I want to temporarily change the flow at runtime and
> then to
> restore the previous version.
>
> In order to patch, I need to know the exact structure of the
> generated code.
> So, I might have a BasicBlock like:
>
> BB4:
> call void asm "label_BB4:\0A", ""()
> call void asm "jmp label_BB5\0A", ""()
> br label %BB5
You can't prevent various optimizations from making multiple copies of
asm's. Also, branches from one asm to another, or into or out of an
asm, do not work, in general. All o...
2010 Jun 24
2
[LLVMdev] How to prevent an instruction to be executed more than once?
Hi LLVM-devs,
I am looking for a way to prevent an instruction to be executed more than
once, or duplicated .. I know that by default everything can be duplicated,
but is there a work-around?
The structure of the code is
BB1 BB2
| |
| |
| |
|----------|
|
v
BB3
where the first instruction in BB3 is inserting an inline assembly