Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- this is the the bytecode i generate
- ```
- for ( ;; )
- if ( foo() )
- return bar();
- main:
- code:
- block_0:
- br block_1
- block_1:
- br block_2
- block_2:
- r0 = call_cmethod com.meduzik.Main.foo this
- r1 = to_bool r0
- condbr r1 block_3 block_4
- block_3:
- r2 = call_cmethod com.meduzik.Main.bar this
- ret r2
- block_4:
- br block_1
- for ( ; cond(); )
- if ( foo() )
- return bar();
- main:
- code:
- block_0:
- br block_1
- block_1:
- r0 = call_cmethod com.meduzik.Main.cond this
- r1 = to_bool r0
- condbr r1 block_2 block_3
- block_2:
- r2 = call_cmethod com.meduzik.Main.foo this
- r3 = to_bool r2
- condbr r3 block_4 block_5
- block_3:
- ret 0.000000 // this return is inserted by the "finalizeBody" method, generating error in the process
- block_4:
- r4 = call_cmethod com.meduzik.Main.bar this
- ret r4
- block_5:
- br block_1
- ```
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement