mirror of
https://github.com/github/codeql.git
synced 2026-04-26 09:15:12 +02:00
767 lines
38 KiB
Plaintext
767 lines
38 KiB
Plaintext
test.cpp:
|
|
# 1| int test00(int, int)
|
|
# 1| Block 0
|
|
# 1| v0_0(void) = EnterFunction :
|
|
# 1| m0_1(unknown) = AliasedDefinition :
|
|
# 1| valnum = unique
|
|
# 1| mu0_2(unknown) = UnmodeledDefinition :
|
|
# 1| valnum = unique
|
|
# 1| r0_3(glval<int>) = VariableAddress[p0] :
|
|
# 1| valnum = r0_3
|
|
# 1| m0_4(int) = InitializeParameter[p0] : &:r0_3
|
|
# 1| valnum = m0_4
|
|
# 1| r0_5(glval<int>) = VariableAddress[p1] :
|
|
# 1| valnum = r0_5
|
|
# 1| m0_6(int) = InitializeParameter[p1] : &:r0_5
|
|
# 1| valnum = m0_6
|
|
# 2| r0_7(glval<int>) = VariableAddress[x] :
|
|
# 2| valnum = r0_7
|
|
# 2| m0_8(int) = Uninitialized[x] : &:r0_7
|
|
# 2| valnum = unique
|
|
# 2| r0_9(glval<int>) = VariableAddress[y] :
|
|
# 2| valnum = r0_9
|
|
# 2| m0_10(int) = Uninitialized[y] : &:r0_9
|
|
# 2| valnum = unique
|
|
# 3| r0_11(glval<unsigned char>) = VariableAddress[b] :
|
|
# 3| valnum = unique
|
|
# 3| m0_12(unsigned char) = Uninitialized[b] : &:r0_11
|
|
# 3| valnum = unique
|
|
# 5| r0_13(glval<int>) = VariableAddress[p0] :
|
|
# 5| valnum = r0_3
|
|
# 5| r0_14(int) = Load : &:r0_13, m0_4
|
|
# 5| valnum = m0_4
|
|
# 5| r0_15(glval<int>) = VariableAddress[p1] :
|
|
# 5| valnum = r0_5
|
|
# 5| r0_16(int) = Load : &:r0_15, m0_6
|
|
# 5| valnum = m0_6
|
|
# 5| r0_17(int) = Add : r0_14, r0_16
|
|
# 5| valnum = r0_17
|
|
# 5| r0_18(glval<int>) = VariableAddress[x] :
|
|
# 5| valnum = r0_7
|
|
# 5| m0_19(int) = Store : &:r0_18, r0_17
|
|
# 5| valnum = r0_17
|
|
# 6| r0_20(glval<int>) = VariableAddress[p0] :
|
|
# 6| valnum = r0_3
|
|
# 6| r0_21(int) = Load : &:r0_20, m0_4
|
|
# 6| valnum = m0_4
|
|
# 6| r0_22(glval<int>) = VariableAddress[p1] :
|
|
# 6| valnum = r0_5
|
|
# 6| r0_23(int) = Load : &:r0_22, m0_6
|
|
# 6| valnum = m0_6
|
|
# 6| r0_24(int) = Add : r0_21, r0_23
|
|
# 6| valnum = r0_17
|
|
# 6| r0_25(glval<int>) = VariableAddress[x] :
|
|
# 6| valnum = r0_7
|
|
# 6| m0_26(int) = Store : &:r0_25, r0_24
|
|
# 6| valnum = r0_17
|
|
# 7| r0_27(glval<int>) = VariableAddress[x] :
|
|
# 7| valnum = r0_7
|
|
# 7| r0_28(int) = Load : &:r0_27, m0_26
|
|
# 7| valnum = r0_17
|
|
# 7| r0_29(glval<int>) = VariableAddress[y] :
|
|
# 7| valnum = r0_9
|
|
# 7| m0_30(int) = Store : &:r0_29, r0_28
|
|
# 7| valnum = r0_17
|
|
# 8| v0_31(void) = NoOp :
|
|
# 1| r0_32(glval<int>) = VariableAddress[#return] :
|
|
# 1| valnum = unique
|
|
# 1| v0_33(void) = ReturnValue : &:r0_32
|
|
# 1| v0_34(void) = UnmodeledUse : mu*
|
|
# 1| v0_35(void) = ExitFunction :
|
|
|
|
# 12| int test01(int, int)
|
|
# 12| Block 0
|
|
# 12| v0_0(void) = EnterFunction :
|
|
# 12| m0_1(unknown) = AliasedDefinition :
|
|
# 12| valnum = unique
|
|
# 12| mu0_2(unknown) = UnmodeledDefinition :
|
|
# 12| valnum = unique
|
|
# 12| r0_3(glval<int>) = VariableAddress[p0] :
|
|
# 12| valnum = r0_3
|
|
# 12| m0_4(int) = InitializeParameter[p0] : &:r0_3
|
|
# 12| valnum = m0_4
|
|
# 12| r0_5(glval<int>) = VariableAddress[p1] :
|
|
# 12| valnum = r0_5
|
|
# 12| m0_6(int) = InitializeParameter[p1] : &:r0_5
|
|
# 12| valnum = m0_6
|
|
# 13| r0_7(glval<int>) = VariableAddress[x] :
|
|
# 13| valnum = r0_7
|
|
# 13| m0_8(int) = Uninitialized[x] : &:r0_7
|
|
# 13| valnum = unique
|
|
# 13| r0_9(glval<int>) = VariableAddress[y] :
|
|
# 13| valnum = r0_9
|
|
# 13| m0_10(int) = Uninitialized[y] : &:r0_9
|
|
# 13| valnum = unique
|
|
# 14| r0_11(glval<unsigned char>) = VariableAddress[b] :
|
|
# 14| valnum = unique
|
|
# 14| m0_12(unsigned char) = Uninitialized[b] : &:r0_11
|
|
# 14| valnum = unique
|
|
# 16| r0_13(glval<int>) = VariableAddress[p0] :
|
|
# 16| valnum = r0_3
|
|
# 16| r0_14(int) = Load : &:r0_13, m0_4
|
|
# 16| valnum = m0_4
|
|
# 16| r0_15(glval<int>) = VariableAddress[p1] :
|
|
# 16| valnum = r0_5
|
|
# 16| r0_16(int) = Load : &:r0_15, m0_6
|
|
# 16| valnum = m0_6
|
|
# 16| r0_17(int) = Add : r0_14, r0_16
|
|
# 16| valnum = r0_17
|
|
# 16| r0_18(glval<int>) = VariableAddress[global01] :
|
|
# 16| valnum = r0_18
|
|
# 16| r0_19(int) = Load : &:r0_18, ~m0_1
|
|
# 16| valnum = unique
|
|
# 16| r0_20(int) = Add : r0_17, r0_19
|
|
# 16| valnum = r0_20
|
|
# 16| r0_21(glval<int>) = VariableAddress[x] :
|
|
# 16| valnum = r0_7
|
|
# 16| m0_22(int) = Store : &:r0_21, r0_20
|
|
# 16| valnum = r0_20
|
|
# 17| r0_23(glval<int>) = VariableAddress[p0] :
|
|
# 17| valnum = r0_3
|
|
# 17| r0_24(int) = Load : &:r0_23, m0_4
|
|
# 17| valnum = m0_4
|
|
# 17| r0_25(glval<int>) = VariableAddress[p1] :
|
|
# 17| valnum = r0_5
|
|
# 17| r0_26(int) = Load : &:r0_25, m0_6
|
|
# 17| valnum = m0_6
|
|
# 17| r0_27(int) = Add : r0_24, r0_26
|
|
# 17| valnum = r0_17
|
|
# 17| r0_28(glval<int>) = VariableAddress[global01] :
|
|
# 17| valnum = r0_18
|
|
# 17| r0_29(int) = Load : &:r0_28, ~m0_1
|
|
# 17| valnum = unique
|
|
# 17| r0_30(int) = Add : r0_27, r0_29
|
|
# 17| valnum = r0_30
|
|
# 17| r0_31(glval<int>) = VariableAddress[x] :
|
|
# 17| valnum = r0_7
|
|
# 17| m0_32(int) = Store : &:r0_31, r0_30
|
|
# 17| valnum = r0_30
|
|
# 18| r0_33(glval<int>) = VariableAddress[x] :
|
|
# 18| valnum = r0_7
|
|
# 18| r0_34(int) = Load : &:r0_33, m0_32
|
|
# 18| valnum = r0_30
|
|
# 18| r0_35(glval<int>) = VariableAddress[y] :
|
|
# 18| valnum = r0_9
|
|
# 18| m0_36(int) = Store : &:r0_35, r0_34
|
|
# 18| valnum = r0_30
|
|
# 19| v0_37(void) = NoOp :
|
|
# 12| r0_38(glval<int>) = VariableAddress[#return] :
|
|
# 12| valnum = unique
|
|
# 12| v0_39(void) = ReturnValue : &:r0_38
|
|
# 12| v0_40(void) = UnmodeledUse : mu*
|
|
# 12| v0_41(void) = ExitFunction :
|
|
|
|
# 25| int test02(int, int)
|
|
# 25| Block 0
|
|
# 25| v0_0(void) = EnterFunction :
|
|
# 25| m0_1(unknown) = AliasedDefinition :
|
|
# 25| valnum = unique
|
|
# 25| mu0_2(unknown) = UnmodeledDefinition :
|
|
# 25| valnum = unique
|
|
# 25| r0_3(glval<int>) = VariableAddress[p0] :
|
|
# 25| valnum = r0_3
|
|
# 25| m0_4(int) = InitializeParameter[p0] : &:r0_3
|
|
# 25| valnum = m0_4
|
|
# 25| r0_5(glval<int>) = VariableAddress[p1] :
|
|
# 25| valnum = r0_5
|
|
# 25| m0_6(int) = InitializeParameter[p1] : &:r0_5
|
|
# 25| valnum = m0_6
|
|
# 26| r0_7(glval<int>) = VariableAddress[x] :
|
|
# 26| valnum = r0_7
|
|
# 26| m0_8(int) = Uninitialized[x] : &:r0_7
|
|
# 26| valnum = unique
|
|
# 26| r0_9(glval<int>) = VariableAddress[y] :
|
|
# 26| valnum = r0_9
|
|
# 26| m0_10(int) = Uninitialized[y] : &:r0_9
|
|
# 26| valnum = unique
|
|
# 27| r0_11(glval<unsigned char>) = VariableAddress[b] :
|
|
# 27| valnum = unique
|
|
# 27| m0_12(unsigned char) = Uninitialized[b] : &:r0_11
|
|
# 27| valnum = unique
|
|
# 29| r0_13(glval<int>) = VariableAddress[p0] :
|
|
# 29| valnum = r0_3
|
|
# 29| r0_14(int) = Load : &:r0_13, m0_4
|
|
# 29| valnum = m0_4
|
|
# 29| r0_15(glval<int>) = VariableAddress[p1] :
|
|
# 29| valnum = r0_5
|
|
# 29| r0_16(int) = Load : &:r0_15, m0_6
|
|
# 29| valnum = m0_6
|
|
# 29| r0_17(int) = Add : r0_14, r0_16
|
|
# 29| valnum = r0_17
|
|
# 29| r0_18(glval<int>) = VariableAddress[global02] :
|
|
# 29| valnum = r0_18
|
|
# 29| r0_19(int) = Load : &:r0_18, ~m0_1
|
|
# 29| valnum = unique
|
|
# 29| r0_20(int) = Add : r0_17, r0_19
|
|
# 29| valnum = r0_20
|
|
# 29| r0_21(glval<int>) = VariableAddress[x] :
|
|
# 29| valnum = r0_7
|
|
# 29| m0_22(int) = Store : &:r0_21, r0_20
|
|
# 29| valnum = r0_20
|
|
# 30| r0_23(glval<unknown>) = FunctionAddress[change_global02] :
|
|
# 30| valnum = unique
|
|
# 30| v0_24(void) = Call : func:r0_23
|
|
# 30| m0_25(unknown) = ^CallSideEffect : ~m0_1
|
|
# 30| valnum = unique
|
|
# 30| m0_26(unknown) = Chi : total:m0_1, partial:m0_25
|
|
# 30| valnum = unique
|
|
# 31| r0_27(glval<int>) = VariableAddress[p0] :
|
|
# 31| valnum = r0_3
|
|
# 31| r0_28(int) = Load : &:r0_27, m0_4
|
|
# 31| valnum = m0_4
|
|
# 31| r0_29(glval<int>) = VariableAddress[p1] :
|
|
# 31| valnum = r0_5
|
|
# 31| r0_30(int) = Load : &:r0_29, m0_6
|
|
# 31| valnum = m0_6
|
|
# 31| r0_31(int) = Add : r0_28, r0_30
|
|
# 31| valnum = r0_17
|
|
# 31| r0_32(glval<int>) = VariableAddress[global02] :
|
|
# 31| valnum = r0_18
|
|
# 31| r0_33(int) = Load : &:r0_32, ~m0_26
|
|
# 31| valnum = unique
|
|
# 31| r0_34(int) = Add : r0_31, r0_33
|
|
# 31| valnum = r0_34
|
|
# 31| r0_35(glval<int>) = VariableAddress[x] :
|
|
# 31| valnum = r0_7
|
|
# 31| m0_36(int) = Store : &:r0_35, r0_34
|
|
# 31| valnum = r0_34
|
|
# 32| r0_37(glval<int>) = VariableAddress[x] :
|
|
# 32| valnum = r0_7
|
|
# 32| r0_38(int) = Load : &:r0_37, m0_36
|
|
# 32| valnum = r0_34
|
|
# 32| r0_39(glval<int>) = VariableAddress[y] :
|
|
# 32| valnum = r0_9
|
|
# 32| m0_40(int) = Store : &:r0_39, r0_38
|
|
# 32| valnum = r0_34
|
|
# 33| v0_41(void) = NoOp :
|
|
# 25| r0_42(glval<int>) = VariableAddress[#return] :
|
|
# 25| valnum = unique
|
|
# 25| v0_43(void) = ReturnValue : &:r0_42
|
|
# 25| v0_44(void) = UnmodeledUse : mu*
|
|
# 25| v0_45(void) = ExitFunction :
|
|
|
|
# 39| int test03(int, int, int*)
|
|
# 39| Block 0
|
|
# 39| v0_0(void) = EnterFunction :
|
|
# 39| m0_1(unknown) = AliasedDefinition :
|
|
# 39| valnum = unique
|
|
# 39| mu0_2(unknown) = UnmodeledDefinition :
|
|
# 39| valnum = unique
|
|
# 39| r0_3(glval<int>) = VariableAddress[p0] :
|
|
# 39| valnum = r0_3
|
|
# 39| m0_4(int) = InitializeParameter[p0] : &:r0_3
|
|
# 39| valnum = m0_4
|
|
# 39| r0_5(glval<int>) = VariableAddress[p1] :
|
|
# 39| valnum = r0_5
|
|
# 39| m0_6(int) = InitializeParameter[p1] : &:r0_5
|
|
# 39| valnum = m0_6
|
|
# 39| r0_7(glval<int *>) = VariableAddress[p2] :
|
|
# 39| valnum = r0_7
|
|
# 39| m0_8(int *) = InitializeParameter[p2] : &:r0_7
|
|
# 39| valnum = m0_8
|
|
# 40| r0_9(glval<int>) = VariableAddress[x] :
|
|
# 40| valnum = r0_9
|
|
# 40| m0_10(int) = Uninitialized[x] : &:r0_9
|
|
# 40| valnum = unique
|
|
# 40| r0_11(glval<int>) = VariableAddress[y] :
|
|
# 40| valnum = r0_11
|
|
# 40| m0_12(int) = Uninitialized[y] : &:r0_11
|
|
# 40| valnum = unique
|
|
# 41| r0_13(glval<unsigned char>) = VariableAddress[b] :
|
|
# 41| valnum = unique
|
|
# 41| m0_14(unsigned char) = Uninitialized[b] : &:r0_13
|
|
# 41| valnum = unique
|
|
# 43| r0_15(glval<int>) = VariableAddress[p0] :
|
|
# 43| valnum = r0_3
|
|
# 43| r0_16(int) = Load : &:r0_15, m0_4
|
|
# 43| valnum = m0_4
|
|
# 43| r0_17(glval<int>) = VariableAddress[p1] :
|
|
# 43| valnum = r0_5
|
|
# 43| r0_18(int) = Load : &:r0_17, m0_6
|
|
# 43| valnum = m0_6
|
|
# 43| r0_19(int) = Add : r0_16, r0_18
|
|
# 43| valnum = r0_19
|
|
# 43| r0_20(glval<int>) = VariableAddress[global03] :
|
|
# 43| valnum = r0_20
|
|
# 43| r0_21(int) = Load : &:r0_20, ~m0_1
|
|
# 43| valnum = unique
|
|
# 43| r0_22(int) = Add : r0_19, r0_21
|
|
# 43| valnum = r0_22
|
|
# 43| r0_23(glval<int>) = VariableAddress[x] :
|
|
# 43| valnum = r0_9
|
|
# 43| m0_24(int) = Store : &:r0_23, r0_22
|
|
# 43| valnum = r0_22
|
|
# 44| r0_25(int) = Constant[0] :
|
|
# 44| valnum = r0_25
|
|
# 44| r0_26(glval<int *>) = VariableAddress[p2] :
|
|
# 44| valnum = r0_7
|
|
# 44| r0_27(int *) = Load : &:r0_26, m0_8
|
|
# 44| valnum = m0_8
|
|
# 44| m0_28(int) = Store : &:r0_27, r0_25
|
|
# 44| valnum = r0_25
|
|
# 44| m0_29(unknown) = Chi : total:m0_1, partial:m0_28
|
|
# 44| valnum = unique
|
|
# 45| r0_30(glval<int>) = VariableAddress[p0] :
|
|
# 45| valnum = r0_3
|
|
# 45| r0_31(int) = Load : &:r0_30, m0_4
|
|
# 45| valnum = m0_4
|
|
# 45| r0_32(glval<int>) = VariableAddress[p1] :
|
|
# 45| valnum = r0_5
|
|
# 45| r0_33(int) = Load : &:r0_32, m0_6
|
|
# 45| valnum = m0_6
|
|
# 45| r0_34(int) = Add : r0_31, r0_33
|
|
# 45| valnum = r0_19
|
|
# 45| r0_35(glval<int>) = VariableAddress[global03] :
|
|
# 45| valnum = r0_20
|
|
# 45| r0_36(int) = Load : &:r0_35, ~m0_29
|
|
# 45| valnum = unique
|
|
# 45| r0_37(int) = Add : r0_34, r0_36
|
|
# 45| valnum = r0_37
|
|
# 45| r0_38(glval<int>) = VariableAddress[x] :
|
|
# 45| valnum = r0_9
|
|
# 45| m0_39(int) = Store : &:r0_38, r0_37
|
|
# 45| valnum = r0_37
|
|
# 46| r0_40(glval<int>) = VariableAddress[x] :
|
|
# 46| valnum = r0_9
|
|
# 46| r0_41(int) = Load : &:r0_40, m0_39
|
|
# 46| valnum = r0_37
|
|
# 46| r0_42(glval<int>) = VariableAddress[y] :
|
|
# 46| valnum = r0_11
|
|
# 46| m0_43(int) = Store : &:r0_42, r0_41
|
|
# 46| valnum = r0_37
|
|
# 47| v0_44(void) = NoOp :
|
|
# 39| r0_45(glval<int>) = VariableAddress[#return] :
|
|
# 39| valnum = unique
|
|
# 39| v0_46(void) = ReturnValue : &:r0_45
|
|
# 39| v0_47(void) = UnmodeledUse : mu*
|
|
# 39| v0_48(void) = ExitFunction :
|
|
|
|
# 49| unsigned int my_strspn(char const*, char const*)
|
|
# 49| Block 0
|
|
# 49| v0_0(void) = EnterFunction :
|
|
# 49| m0_1(unknown) = AliasedDefinition :
|
|
# 49| valnum = unique
|
|
# 49| mu0_2(unknown) = UnmodeledDefinition :
|
|
# 49| valnum = unique
|
|
# 49| r0_3(glval<char *>) = VariableAddress[str] :
|
|
# 49| valnum = r0_3
|
|
# 49| m0_4(char *) = InitializeParameter[str] : &:r0_3
|
|
# 49| valnum = m0_4
|
|
# 49| r0_5(glval<char *>) = VariableAddress[chars] :
|
|
# 49| valnum = r0_5
|
|
# 49| m0_6(char *) = InitializeParameter[chars] : &:r0_5
|
|
# 49| valnum = m0_6
|
|
# 50| r0_7(glval<char *>) = VariableAddress[ptr] :
|
|
# 50| valnum = r0_7
|
|
# 50| m0_8(char *) = Uninitialized[ptr] : &:r0_7
|
|
# 50| valnum = unique
|
|
# 51| r0_9(glval<unsigned int>) = VariableAddress[result] :
|
|
# 51| valnum = r0_9
|
|
# 51| r0_10(unsigned int) = Constant[0] :
|
|
# 51| valnum = r0_10
|
|
# 51| m0_11(unsigned int) = Store : &:r0_9, r0_10
|
|
# 51| valnum = r0_10
|
|
#-----| Goto -> Block 1
|
|
|
|
# 53| Block 1
|
|
# 53| m1_0(unsigned int) = Phi : from 0:m0_11, from 8:m8_4
|
|
# 53| valnum = m1_0
|
|
# 53| r1_1(glval<char *>) = VariableAddress[str] :
|
|
# 53| valnum = r0_3
|
|
# 53| r1_2(char *) = Load : &:r1_1, m0_4
|
|
# 53| valnum = m0_4
|
|
# 53| r1_3(char) = Load : &:r1_2, ~m0_1
|
|
# 53| valnum = unique
|
|
# 53| r1_4(int) = Convert : r1_3
|
|
# 53| valnum = unique
|
|
# 53| r1_5(int) = Constant[0] :
|
|
# 53| valnum = r1_5
|
|
# 53| r1_6(bool) = CompareNE : r1_4, r1_5
|
|
# 53| valnum = unique
|
|
# 53| v1_7(void) = ConditionalBranch : r1_6
|
|
#-----| False -> Block 9
|
|
#-----| True -> Block 2
|
|
|
|
# 55| Block 2
|
|
# 55| r2_0(glval<char *>) = VariableAddress[chars] :
|
|
# 55| valnum = r0_5
|
|
# 55| r2_1(char *) = Load : &:r2_0, m0_6
|
|
# 55| valnum = m0_6
|
|
# 55| r2_2(glval<char *>) = VariableAddress[ptr] :
|
|
# 55| valnum = r0_7
|
|
# 55| m2_3(char *) = Store : &:r2_2, r2_1
|
|
# 55| valnum = m0_6
|
|
#-----| Goto -> Block 3
|
|
|
|
# 56| Block 3
|
|
# 56| m3_0(char *) = Phi : from 2:m2_3, from 5:m5_4
|
|
# 56| valnum = m3_0
|
|
# 56| r3_1(glval<char *>) = VariableAddress[ptr] :
|
|
# 56| valnum = r0_7
|
|
# 56| r3_2(char *) = Load : &:r3_1, m3_0
|
|
# 56| valnum = m3_0
|
|
# 56| r3_3(char) = Load : &:r3_2, ~m0_1
|
|
# 56| valnum = unique
|
|
# 56| r3_4(int) = Convert : r3_3
|
|
# 56| valnum = unique
|
|
# 56| r3_5(glval<char *>) = VariableAddress[str] :
|
|
# 56| valnum = r0_3
|
|
# 56| r3_6(char *) = Load : &:r3_5, m0_4
|
|
# 56| valnum = m0_4
|
|
# 56| r3_7(char) = Load : &:r3_6, ~m0_1
|
|
# 56| valnum = unique
|
|
# 56| r3_8(int) = Convert : r3_7
|
|
# 56| valnum = unique
|
|
# 56| r3_9(bool) = CompareNE : r3_4, r3_8
|
|
# 56| valnum = unique
|
|
# 56| v3_10(void) = ConditionalBranch : r3_9
|
|
#-----| False -> Block 6
|
|
#-----| True -> Block 4
|
|
|
|
# 56| Block 4
|
|
# 56| r4_0(glval<char *>) = VariableAddress[ptr] :
|
|
# 56| valnum = r0_7
|
|
# 56| r4_1(char *) = Load : &:r4_0, m3_0
|
|
# 56| valnum = m3_0
|
|
# 56| r4_2(char) = Load : &:r4_1, ~m0_1
|
|
# 56| valnum = unique
|
|
# 56| r4_3(int) = Convert : r4_2
|
|
# 56| valnum = unique
|
|
# 56| r4_4(int) = Constant[0] :
|
|
# 56| valnum = r1_5
|
|
# 56| r4_5(bool) = CompareNE : r4_3, r4_4
|
|
# 56| valnum = unique
|
|
# 56| v4_6(void) = ConditionalBranch : r4_5
|
|
#-----| False -> Block 6
|
|
#-----| True -> Block 5
|
|
|
|
# 56| Block 5
|
|
# 56| r5_0(glval<char *>) = VariableAddress[ptr] :
|
|
# 56| valnum = r0_7
|
|
# 56| r5_1(char *) = Load : &:r5_0, m3_0
|
|
# 56| valnum = m3_0
|
|
# 56| r5_2(int) = Constant[1] :
|
|
# 56| valnum = unique
|
|
# 56| r5_3(char *) = PointerAdd[1] : r5_1, r5_2
|
|
# 56| valnum = r5_3
|
|
# 56| m5_4(char *) = Store : &:r5_0, r5_3
|
|
# 56| valnum = r5_3
|
|
#-----| Goto (back edge) -> Block 3
|
|
|
|
# 59| Block 6
|
|
# 59| r6_0(glval<char *>) = VariableAddress[ptr] :
|
|
# 59| valnum = r0_7
|
|
# 59| r6_1(char *) = Load : &:r6_0, m3_0
|
|
# 59| valnum = m3_0
|
|
# 59| r6_2(char) = Load : &:r6_1, ~m0_1
|
|
# 59| valnum = unique
|
|
# 59| r6_3(int) = Convert : r6_2
|
|
# 59| valnum = unique
|
|
# 59| r6_4(int) = Constant[0] :
|
|
# 59| valnum = r1_5
|
|
# 59| r6_5(bool) = CompareEQ : r6_3, r6_4
|
|
# 59| valnum = unique
|
|
# 59| v6_6(void) = ConditionalBranch : r6_5
|
|
#-----| False -> Block 8
|
|
#-----| True -> Block 7
|
|
|
|
# 60| Block 7
|
|
# 60| v7_0(void) = NoOp :
|
|
#-----| Goto -> Block 9
|
|
|
|
# 62| Block 8
|
|
# 62| r8_0(glval<unsigned int>) = VariableAddress[result] :
|
|
# 62| valnum = r0_9
|
|
# 62| r8_1(unsigned int) = Load : &:r8_0, m1_0
|
|
# 62| valnum = m1_0
|
|
# 62| r8_2(unsigned int) = Constant[1] :
|
|
# 62| valnum = unique
|
|
# 62| r8_3(unsigned int) = Add : r8_1, r8_2
|
|
# 62| valnum = r8_3
|
|
# 62| m8_4(unsigned int) = Store : &:r8_0, r8_3
|
|
# 62| valnum = r8_3
|
|
#-----| Goto (back edge) -> Block 1
|
|
|
|
# 63| Block 9
|
|
# 63| v9_0(void) = NoOp :
|
|
# 65| r9_1(glval<unsigned int>) = VariableAddress[#return] :
|
|
# 65| valnum = r9_1
|
|
# 65| r9_2(glval<unsigned int>) = VariableAddress[result] :
|
|
# 65| valnum = r0_9
|
|
# 65| r9_3(unsigned int) = Load : &:r9_2, m1_0
|
|
# 65| valnum = m1_0
|
|
# 65| m9_4(unsigned int) = Store : &:r9_1, r9_3
|
|
# 65| valnum = m1_0
|
|
# 49| r9_5(glval<unsigned int>) = VariableAddress[#return] :
|
|
# 49| valnum = r9_1
|
|
# 49| v9_6(void) = ReturnValue : &:r9_5, m9_4
|
|
# 49| v9_7(void) = UnmodeledUse : mu*
|
|
# 49| v9_8(void) = ExitFunction :
|
|
|
|
# 75| void test04(two_values*)
|
|
# 75| Block 0
|
|
# 75| v0_0(void) = EnterFunction :
|
|
# 75| m0_1(unknown) = AliasedDefinition :
|
|
# 75| valnum = unique
|
|
# 75| mu0_2(unknown) = UnmodeledDefinition :
|
|
# 75| valnum = unique
|
|
# 75| r0_3(glval<two_values *>) = VariableAddress[vals] :
|
|
# 75| valnum = r0_3
|
|
# 75| m0_4(two_values *) = InitializeParameter[vals] : &:r0_3
|
|
# 75| valnum = m0_4
|
|
# 77| r0_5(glval<signed short>) = VariableAddress[v] :
|
|
# 77| valnum = r0_5
|
|
# 77| r0_6(glval<unknown>) = FunctionAddress[getAValue] :
|
|
# 77| valnum = unique
|
|
# 77| r0_7(int) = Call : func:r0_6
|
|
# 77| valnum = unique
|
|
# 77| m0_8(unknown) = ^CallSideEffect : ~m0_1
|
|
# 77| valnum = unique
|
|
# 77| m0_9(unknown) = Chi : total:m0_1, partial:m0_8
|
|
# 77| valnum = unique
|
|
# 77| r0_10(signed short) = Convert : r0_7
|
|
# 77| valnum = r0_10
|
|
# 77| m0_11(signed short) = Store : &:r0_5, r0_10
|
|
# 77| valnum = r0_10
|
|
# 79| r0_12(glval<signed short>) = VariableAddress[v] :
|
|
# 79| valnum = r0_5
|
|
# 79| r0_13(signed short) = Load : &:r0_12, m0_11
|
|
# 79| valnum = r0_10
|
|
# 79| r0_14(int) = Convert : r0_13
|
|
# 79| valnum = unique
|
|
# 79| r0_15(glval<two_values *>) = VariableAddress[vals] :
|
|
# 79| valnum = r0_3
|
|
# 79| r0_16(two_values *) = Load : &:r0_15, m0_4
|
|
# 79| valnum = m0_4
|
|
# 79| r0_17(glval<signed short>) = FieldAddress[val1] : r0_16
|
|
# 79| valnum = unique
|
|
# 79| r0_18(signed short) = Load : &:r0_17, ~m0_9
|
|
# 79| valnum = unique
|
|
# 79| r0_19(int) = Convert : r0_18
|
|
# 79| valnum = unique
|
|
# 79| r0_20(glval<two_values *>) = VariableAddress[vals] :
|
|
# 79| valnum = r0_3
|
|
# 79| r0_21(two_values *) = Load : &:r0_20, m0_4
|
|
# 79| valnum = m0_4
|
|
# 79| r0_22(glval<signed short>) = FieldAddress[val2] : r0_21
|
|
# 79| valnum = unique
|
|
# 79| r0_23(signed short) = Load : &:r0_22, ~m0_9
|
|
# 79| valnum = unique
|
|
# 79| r0_24(int) = Convert : r0_23
|
|
# 79| valnum = unique
|
|
# 79| r0_25(int) = Add : r0_19, r0_24
|
|
# 79| valnum = unique
|
|
# 79| r0_26(bool) = CompareLT : r0_14, r0_25
|
|
# 79| valnum = unique
|
|
# 79| v0_27(void) = ConditionalBranch : r0_26
|
|
#-----| False -> Block 2
|
|
#-----| True -> Block 1
|
|
|
|
# 80| Block 1
|
|
# 80| r1_0(glval<unknown>) = FunctionAddress[getAValue] :
|
|
# 80| valnum = unique
|
|
# 80| r1_1(int) = Call : func:r1_0
|
|
# 80| valnum = unique
|
|
# 80| m1_2(unknown) = ^CallSideEffect : ~m0_9
|
|
# 80| valnum = unique
|
|
# 80| m1_3(unknown) = Chi : total:m0_9, partial:m1_2
|
|
# 80| valnum = unique
|
|
# 80| r1_4(signed short) = Convert : r1_1
|
|
# 80| valnum = r1_4
|
|
# 80| r1_5(glval<signed short>) = VariableAddress[v] :
|
|
# 80| valnum = r0_5
|
|
# 80| m1_6(signed short) = Store : &:r1_5, r1_4
|
|
# 80| valnum = r1_4
|
|
#-----| Goto -> Block 2
|
|
|
|
# 82| Block 2
|
|
# 82| v2_0(void) = NoOp :
|
|
# 75| v2_1(void) = ReturnVoid :
|
|
# 75| v2_2(void) = UnmodeledUse : mu*
|
|
# 75| v2_3(void) = ExitFunction :
|
|
|
|
# 84| void test05(int, int, void*)
|
|
# 84| Block 0
|
|
# 84| v0_0(void) = EnterFunction :
|
|
# 84| m0_1(unknown) = AliasedDefinition :
|
|
# 84| valnum = unique
|
|
# 84| mu0_2(unknown) = UnmodeledDefinition :
|
|
# 84| valnum = unique
|
|
# 84| r0_3(glval<int>) = VariableAddress[x] :
|
|
# 84| valnum = r0_3
|
|
# 84| m0_4(int) = InitializeParameter[x] : &:r0_3
|
|
# 84| valnum = m0_4
|
|
# 84| r0_5(glval<int>) = VariableAddress[y] :
|
|
# 84| valnum = r0_5
|
|
# 84| m0_6(int) = InitializeParameter[y] : &:r0_5
|
|
# 84| valnum = m0_6
|
|
# 84| r0_7(glval<void *>) = VariableAddress[p] :
|
|
# 84| valnum = r0_7
|
|
# 84| m0_8(void *) = InitializeParameter[p] : &:r0_7
|
|
# 84| valnum = m0_8
|
|
# 86| r0_9(glval<int>) = VariableAddress[v] :
|
|
# 86| valnum = r0_9
|
|
# 86| m0_10(int) = Uninitialized[v] : &:r0_9
|
|
# 86| valnum = unique
|
|
# 88| r0_11(glval<void *>) = VariableAddress[p] :
|
|
# 88| valnum = r0_7
|
|
# 88| r0_12(void *) = Load : &:r0_11, m0_8
|
|
# 88| valnum = m0_8
|
|
# 88| r0_13(void *) = Constant[0] :
|
|
# 88| valnum = unique
|
|
# 88| r0_14(bool) = CompareNE : r0_12, r0_13
|
|
# 88| valnum = unique
|
|
# 88| v0_15(void) = ConditionalBranch : r0_14
|
|
#-----| False -> Block 2
|
|
#-----| True -> Block 1
|
|
|
|
# 88| Block 1
|
|
# 88| r1_0(glval<int>) = VariableAddress[x] :
|
|
# 88| valnum = r0_3
|
|
# 88| r1_1(int) = Load : &:r1_0, m0_4
|
|
# 88| valnum = m0_4
|
|
# 88| r1_2(glval<int>) = VariableAddress[#temp88:7] :
|
|
# 88| valnum = r1_2
|
|
# 88| m1_3(int) = Store : &:r1_2, r1_1
|
|
# 88| valnum = m0_4
|
|
#-----| Goto -> Block 3
|
|
|
|
# 88| Block 2
|
|
# 88| r2_0(glval<int>) = VariableAddress[y] :
|
|
# 88| valnum = r0_5
|
|
# 88| r2_1(int) = Load : &:r2_0, m0_6
|
|
# 88| valnum = m0_6
|
|
# 88| r2_2(glval<int>) = VariableAddress[#temp88:7] :
|
|
# 88| valnum = r1_2
|
|
# 88| m2_3(int) = Store : &:r2_2, r2_1
|
|
# 88| valnum = m0_6
|
|
#-----| Goto -> Block 3
|
|
|
|
# 88| Block 3
|
|
# 88| m3_0(int) = Phi : from 1:m1_3, from 2:m2_3
|
|
# 88| valnum = m3_0
|
|
# 88| r3_1(glval<int>) = VariableAddress[#temp88:7] :
|
|
# 88| valnum = r1_2
|
|
# 88| r3_2(int) = Load : &:r3_1, m3_0
|
|
# 88| valnum = m3_0
|
|
# 88| r3_3(glval<int>) = VariableAddress[v] :
|
|
# 88| valnum = r0_9
|
|
# 88| m3_4(int) = Store : &:r3_3, r3_2
|
|
# 88| valnum = m3_0
|
|
# 89| v3_5(void) = NoOp :
|
|
# 84| v3_6(void) = ReturnVoid :
|
|
# 84| v3_7(void) = UnmodeledUse : mu*
|
|
# 84| v3_8(void) = ExitFunction :
|
|
|
|
# 91| int regression_test00()
|
|
# 91| Block 0
|
|
# 91| v0_0(void) = EnterFunction :
|
|
# 91| m0_1(unknown) = AliasedDefinition :
|
|
# 91| valnum = unique
|
|
# 91| mu0_2(unknown) = UnmodeledDefinition :
|
|
# 91| valnum = unique
|
|
# 92| r0_3(glval<int>) = VariableAddress[x] :
|
|
# 92| valnum = r0_3
|
|
# 92| r0_4(int) = Constant[10] :
|
|
# 92| valnum = r0_4
|
|
# 92| r0_5(glval<int>) = VariableAddress[x] :
|
|
# 92| valnum = r0_3
|
|
# 92| m0_6(int) = Store : &:r0_5, r0_4
|
|
# 92| valnum = r0_4
|
|
# 92| m0_7(int) = Store : &:r0_3, r0_4
|
|
# 92| valnum = r0_4
|
|
# 93| r0_8(glval<int>) = VariableAddress[#return] :
|
|
# 93| valnum = r0_8
|
|
# 93| r0_9(glval<int>) = VariableAddress[x] :
|
|
# 93| valnum = r0_3
|
|
# 93| r0_10(int) = Load : &:r0_9, m0_7
|
|
# 93| valnum = r0_4
|
|
# 93| m0_11(int) = Store : &:r0_8, r0_10
|
|
# 93| valnum = r0_4
|
|
# 91| r0_12(glval<int>) = VariableAddress[#return] :
|
|
# 91| valnum = r0_8
|
|
# 91| v0_13(void) = ReturnValue : &:r0_12, m0_11
|
|
# 91| v0_14(void) = UnmodeledUse : mu*
|
|
# 91| v0_15(void) = ExitFunction :
|
|
|
|
# 104| int inheritanceConversions(Derived*)
|
|
# 104| Block 0
|
|
# 104| v0_0(void) = EnterFunction :
|
|
# 104| m0_1(unknown) = AliasedDefinition :
|
|
# 104| valnum = unique
|
|
# 104| mu0_2(unknown) = UnmodeledDefinition :
|
|
# 104| valnum = unique
|
|
# 104| r0_3(glval<Derived *>) = VariableAddress[pd] :
|
|
# 104| valnum = r0_3
|
|
# 104| m0_4(Derived *) = InitializeParameter[pd] : &:r0_3
|
|
# 104| valnum = m0_4
|
|
# 105| r0_5(glval<int>) = VariableAddress[x] :
|
|
# 105| valnum = unique
|
|
# 105| r0_6(glval<Derived *>) = VariableAddress[pd] :
|
|
# 105| valnum = r0_3
|
|
# 105| r0_7(Derived *) = Load : &:r0_6, m0_4
|
|
# 105| valnum = m0_4
|
|
# 105| r0_8(Base *) = ConvertToBase[Derived : Base] : r0_7
|
|
# 105| valnum = r0_8
|
|
# 105| r0_9(glval<int>) = FieldAddress[b] : r0_8
|
|
# 105| valnum = r0_9
|
|
# 105| r0_10(int) = Load : &:r0_9, ~m0_1
|
|
# 105| valnum = r0_10
|
|
# 105| m0_11(int) = Store : &:r0_5, r0_10
|
|
# 105| valnum = r0_10
|
|
# 106| r0_12(glval<Base *>) = VariableAddress[pb] :
|
|
# 106| valnum = r0_12
|
|
# 106| r0_13(glval<Derived *>) = VariableAddress[pd] :
|
|
# 106| valnum = r0_3
|
|
# 106| r0_14(Derived *) = Load : &:r0_13, m0_4
|
|
# 106| valnum = m0_4
|
|
# 106| r0_15(Base *) = ConvertToBase[Derived : Base] : r0_14
|
|
# 106| valnum = r0_8
|
|
# 106| m0_16(Base *) = Store : &:r0_12, r0_15
|
|
# 106| valnum = r0_8
|
|
# 107| r0_17(glval<int>) = VariableAddress[y] :
|
|
# 107| valnum = r0_17
|
|
# 107| r0_18(glval<Base *>) = VariableAddress[pb] :
|
|
# 107| valnum = r0_12
|
|
# 107| r0_19(Base *) = Load : &:r0_18, m0_16
|
|
# 107| valnum = r0_8
|
|
# 107| r0_20(glval<int>) = FieldAddress[b] : r0_19
|
|
# 107| valnum = r0_9
|
|
# 107| r0_21(int) = Load : &:r0_20, ~m0_1
|
|
# 107| valnum = r0_21
|
|
# 107| m0_22(int) = Store : &:r0_17, r0_21
|
|
# 107| valnum = r0_21
|
|
# 109| r0_23(glval<int>) = VariableAddress[#return] :
|
|
# 109| valnum = r0_23
|
|
# 109| r0_24(glval<int>) = VariableAddress[y] :
|
|
# 109| valnum = r0_17
|
|
# 109| r0_25(int) = Load : &:r0_24, m0_22
|
|
# 109| valnum = r0_21
|
|
# 109| m0_26(int) = Store : &:r0_23, r0_25
|
|
# 109| valnum = r0_21
|
|
# 104| r0_27(glval<int>) = VariableAddress[#return] :
|
|
# 104| valnum = r0_23
|
|
# 104| v0_28(void) = ReturnValue : &:r0_27, m0_26
|
|
# 104| v0_29(void) = UnmodeledUse : mu*
|
|
# 104| v0_30(void) = ExitFunction :
|
|
|
|
# 112| void test06()
|
|
# 112| Block 0
|
|
# 112| v0_0(void) = EnterFunction :
|
|
# 112| m0_1(unknown) = AliasedDefinition :
|
|
# 112| valnum = unique
|
|
# 112| mu0_2(unknown) = UnmodeledDefinition :
|
|
# 112| valnum = unique
|
|
# 113| r0_3(glval<char[2]>) = StringConstant["a"] :
|
|
# 113| valnum = r0_3
|
|
# 114| r0_4(glval<char[2]>) = StringConstant["b"] :
|
|
# 114| valnum = unique
|
|
# 115| r0_5(glval<char[2]>) = StringConstant["a"] :
|
|
# 115| valnum = r0_3
|
|
# 116| r0_6(glval<char[2]>) = StringConstant["c"] :
|
|
# 116| valnum = unique
|
|
# 117| v0_7(void) = NoOp :
|
|
# 112| v0_8(void) = ReturnVoid :
|
|
# 112| v0_9(void) = UnmodeledUse : mu*
|
|
# 112| v0_10(void) = ExitFunction :
|