Displaying 4 results from an estimated 4 matches for "ret_true".
Did you mean:
ret_tree
2006 Mar 16
2
[LLVMdev] Stupid '-load-vn -licm' question (LLVM 1.6)
...yte* %end, int -1 ;
<ubyte*> [#uses=1]
br label %loop_test
regex6: ; preds = %loop_test
%c8 = load ubyte* %iter ; <ubyte> [#uses=1]
%matches9 = seteq ubyte %c8, 97 ; <bool> [#uses=1]
br bool %matches9, label %ret_true, label %regex2
regex2: ; preds = %regex6
%c = load ubyte* %iter ; <ubyte> [#uses=1]
%matches = seteq ubyte %c, 98 ; <bool> [#uses=1]
br bool %matches, label %ret_true, label %loop_step
loop_step: ; preds = %regex2...
2006 Mar 17
3
[LLVMdev] Stupid '-load-vn -licm' question (LLVM 1.6)
...are actually reduced to a switch
statement using '-anders-aa -load-vn -gcse -simplifycfg -instcombine':
regex6: ; preds = %loop_test
%c8 = load ubyte* %iter ; <ubyte> [#uses=1]
switch ubyte %c8, label %loop_step [
ubyte 97, label %ret_true
ubyte 98, label %ret_true
]
Unfortunately, this generates really weird code on the LLVM 1.6
PowerPC backend:
LBB_matches_1: ; regex6
lbz r4, 0(r3)
LBB_matches_2: ; NodeBlock
rlwinm r5, r4, 0, 24, 31
cmplwi cr0, r5, 98
blt cr0, LBB...
2006 Mar 17
0
[LLVMdev] Stupid '-load-vn -licm' question (LLVM 1.6)
...; <ubyte*>
> [#uses=1]
> br label %loop_test
>
> regex6: ; preds = %loop_test
> %c8 = load ubyte* %iter ; <ubyte> [#uses=1]
> %matches9 = seteq ubyte %c8, 97 ; <bool> [#uses=1]
> br bool %matches9, label %ret_true, label %regex2
>
> regex2: ; preds = %regex6
> %c = load ubyte* %iter ; <ubyte> [#uses=1]
> %matches = seteq ubyte %c, 98 ; <bool> [#uses=1]
> br bool %matches, label %ret_true, label %loop_step
>
> loop_step:...
2006 Mar 17
0
[LLVMdev] Stupid '-load-vn -licm' question (LLVM 1.6)
...0(r3)
> LBB_matches_2: ; NodeBlock
> rlwinm r5, r4, 0, 24, 31
> cmplwi cr0, r5, 98
> blt cr0, LBB_matches_4 ; LeafBlock
> LBB_matches_3: ; LeafBlock1
> rlwinm r4, r4, 0, 24, 31
> cmpwi cr0, r4, 98
> beq cr0, LBB_matches_8 ; ret_true
> b LBB_matches_5 ; NewDefault
> LBB_matches_4: ; LeafBlock
> rlwinm r4, r4, 0, 24, 31
> cmpwi cr0, r4, 97
> beq cr0, LBB_matches_8 ; ret_true
> LBB_matches_5: ; NewDefault
> LBB_matches_6: ; loop_step
>
> I'm particularly confused...