@@ -14268,65 +14268,61 @@ ir.cpp:
1426814268# 2277| r2277_1(glval<bool>) = VariableAddress[b] :
1426914269# 2277| r2277_2(bool) = Load[b] : &:r2277_1, m2275_6
1427014270# 2277| v2277_3(void) = ConditionalBranch : r2277_2
14271- #-----| False -> Block 4
14272- #-----| True -> Block 3
14271+ #-----| False -> Block 3
14272+ #-----| True -> Block 2
1427314273
1427414274# 2275| Block 1
14275- # 2275| m2275_7(unknown) = Phi : from 2:~m2284_21, from 2:~ m2284_5, from 5:~m2284_21, from 5:~m2284_5, from 3:~ m2284_13, from 2:~m2284_21, from 2:~m2284_5, from 5:~m2284_21, from 5:~m2284_5, from 6:~m2284_30
14275+ # 2275| m2275_7(unknown) = Phi : from 2:~m2284_5, from 4:~ m2284_13, from 5:~m2284_22
1427614276# 2275| v2275_8(void) = ReturnVoid :
1427714277# 2275| v2275_9(void) = AliasedUse : ~m2275_7
1427814278# 2275| v2275_10(void) = ExitFunction :
1427914279
14280- # 2278| Block 3
14281- # 2278| v2278_1(void) = NoOp :
14282- # 2284| r2284_9 (glval<String>) = VariableAddress[s] :
14283- # 2284| r2284_10 (glval<unknown>) = FunctionAddress[~String] :
14284- # 2284| v2284_11 (void) = Call[~String] : func:r2284_10 , this:r2284_9
14285- # 2284| m2284_12 (unknown) = ^CallSideEffect : ~m2276_6
14286- # 2284| m2284_13 (unknown) = Chi : total:m2276_6, partial:m2284_12
14287- # 2284| v2284_14 (void) = ^IndirectReadSideEffect[-1] : &:r2284_9 , m2276_8
14288- # 2284| m2284_15 (String) = ^IndirectMayWriteSideEffect[-1] : &:r2284_9
14289- # 2284| m2284_16 (String) = Chi : total:m2276_8, partial:m2284_15
14280+ # 2278| Block 2
14281+ # 2278| v2278_1(void) = NoOp :
14282+ # 2284| r2284_1 (glval<String>) = VariableAddress[s] :
14283+ # 2284| r2284_2 (glval<unknown>) = FunctionAddress[~String] :
14284+ # 2284| v2284_3 (void) = Call[~String] : func:r2284_2 , this:r2284_1
14285+ # 2284| m2284_4 (unknown) = ^CallSideEffect : ~m2276_6
14286+ # 2284| m2284_5 (unknown) = Chi : total:m2276_6, partial:m2284_4
14287+ # 2284| v2284_6 (void) = ^IndirectReadSideEffect[-1] : &:r2284_1 , m2276_8
14288+ # 2284| m2284_7 (String) = ^IndirectMayWriteSideEffect[-1] : &:r2284_1
14289+ # 2284| m2284_8 (String) = Chi : total:m2276_8, partial:m2284_7
1429014290#-----| Goto -> Block 1
1429114291
14292- # 2280| Block 4
14292+ # 2280| Block 3
1429314293# 2280| r2280_1(glval<bool>) = VariableAddress[b] :
1429414294# 2280| r2280_2(bool) = Load[b] : &:r2280_1, m2275_6
1429514295# 2280| v2280_3(void) = ConditionalBranch : r2280_2
14296- #-----| False -> Block 6
14297- #-----| True -> Block 5
14298- #-----| True -> Block 5
14296+ #-----| False -> Block 5
14297+ #-----| True -> Block 4
1429914298
14300- # 2281| Block 5
14301- # 2281| r2281_6 (glval<unknown>) = FunctionAddress[VoidFunc] :
14302- # 2281| v2281_7 (void) = Call[VoidFunc] : func:r2281_1, func:r2281_6
14303- # 2281| m2281_8 (unknown) = ^CallSideEffect : ~m2276_6
14304- # 2281| m2281_9 (unknown) = Chi : total:m2276_6, partial:m2281_3, partial:m2281_8
14299+ # 2281| Block 4
14300+ # 2281| r2281_1 (glval<unknown>) = FunctionAddress[VoidFunc] :
14301+ # 2281| v2281_2 (void) = Call[VoidFunc] : func:r2281_1
14302+ # 2281| m2281_3 (unknown) = ^CallSideEffect : ~m2276_6
14303+ # 2281| m2281_4 (unknown) = Chi : total:m2276_6, partial:m2281_3
1430514304# 2281| v2281_5(void) = NoOp :
14306- # 2284| r2284_1(glval<String>) = VariableAddress[s] :
14307- # 2284| r2284_2(glval<unknown>) = FunctionAddress[~String] :
14308- # 2284| v2284_3(void) = Call[~String] : func:r2284_18, func:r2284_2, this:r2284_1, this:r2284_17
14309- # 2284| m2284_4(unknown) = ^CallSideEffect : ~m2281_4, ~m2281_9
14310- # 2284| m2284_5(unknown) = Chi : total:m2281_4, total:m2281_9, partial:m2284_20, partial:m2284_4
14311- # 2284| v2284_6(void) = ^IndirectReadSideEffect[-1] : &:r2284_1, &:r2284_17, m2276_8
14312- # 2284| m2284_7(String) = ^IndirectMayWriteSideEffect[-1] : &:r2284_1, &:r2284_17
14313- # 2284| m2284_8(String) = Chi : total:m2276_8, partial:m2284_23, partial:m2284_7
14314- #-----| Goto -> Block 1
14315-
14316- # 2281| Block 5
14305+ # 2284| r2284_9(glval<String>) = VariableAddress[s] :
14306+ # 2284| r2284_10(glval<unknown>) = FunctionAddress[~String] :
14307+ # 2284| v2284_11(void) = Call[~String] : func:r2284_10, this:r2284_9
14308+ # 2284| m2284_12(unknown) = ^CallSideEffect : ~m2281_4
14309+ # 2284| m2284_13(unknown) = Chi : total:m2281_4, partial:m2284_12
14310+ # 2284| v2284_14(void) = ^IndirectReadSideEffect[-1] : &:r2284_9, m2276_8
14311+ # 2284| m2284_15(String) = ^IndirectMayWriteSideEffect[-1] : &:r2284_9
14312+ # 2284| m2284_16(String) = Chi : total:m2276_8, partial:m2284_15
1431714313#-----| Goto -> Block 1
1431814314
14319- # 2283| Block 6
14315+ # 2283| Block 5
1432014316# 2283| r2283_1(glval<String>) = VariableAddress[s] :
14321- # 2284| v2284_25 (void) = NoOp :
14322- # 2284| r2284_26 (glval<String>) = VariableAddress[s] :
14323- # 2284| r2284_27 (glval<unknown>) = FunctionAddress[~String] :
14324- # 2284| v2284_28 (void) = Call[~String] : func:r2284_27 , this:r2284_26
14325- # 2284| m2284_29 (unknown) = ^CallSideEffect : ~m2276_6
14326- # 2284| m2284_30 (unknown) = Chi : total:m2276_6, partial:m2284_29
14327- # 2284| v2284_31 (void) = ^IndirectReadSideEffect[-1] : &:r2284_26 , m2276_8
14328- # 2284| m2284_32 (String) = ^IndirectMayWriteSideEffect[-1] : &:r2284_26
14329- # 2284| m2284_33 (String) = Chi : total:m2276_8, partial:m2284_32
14317+ # 2284| v2284_17 (void) = NoOp :
14318+ # 2284| r2284_18 (glval<String>) = VariableAddress[s] :
14319+ # 2284| r2284_19 (glval<unknown>) = FunctionAddress[~String] :
14320+ # 2284| v2284_20 (void) = Call[~String] : func:r2284_19 , this:r2284_18
14321+ # 2284| m2284_21 (unknown) = ^CallSideEffect : ~m2276_6
14322+ # 2284| m2284_22 (unknown) = Chi : total:m2276_6, partial:m2284_21
14323+ # 2284| v2284_23 (void) = ^IndirectReadSideEffect[-1] : &:r2284_18 , m2276_8
14324+ # 2284| m2284_24 (String) = ^IndirectMayWriteSideEffect[-1] : &:r2284_18
14325+ # 2284| m2284_25 (String) = Chi : total:m2276_8, partial:m2284_24
1433014326#-----| Goto -> Block 1
1433114327
1433214328# 2286| int IfReturnDestructors3(bool)
@@ -14387,6 +14383,37 @@ ir.cpp:
1438714383# 2292| m2292_16(String) = Chi : total:m2287_8, partial:m2292_15
1438814384#-----| Goto -> Block 1
1438914385
14386+ # 2294| void VoidReturnDestructors()
14387+ # 2294| Block 0
14388+ # 2294| v2294_1(void) = EnterFunction :
14389+ # 2294| m2294_2(unknown) = AliasedDefinition :
14390+ # 2294| m2294_3(unknown) = InitializeNonLocal :
14391+ # 2294| m2294_4(unknown) = Chi : total:m2294_2, partial:m2294_3
14392+ # 2295| r2295_1(glval<String>) = VariableAddress[s] :
14393+ # 2295| m2295_2(String) = Uninitialized[s] : &:r2295_1
14394+ # 2295| r2295_3(glval<unknown>) = FunctionAddress[String] :
14395+ # 2295| v2295_4(void) = Call[String] : func:r2295_3, this:r2295_1
14396+ # 2295| m2295_5(unknown) = ^CallSideEffect : ~m2294_4
14397+ # 2295| m2295_6(unknown) = Chi : total:m2294_4, partial:m2295_5
14398+ # 2295| m2295_7(String) = ^IndirectMayWriteSideEffect[-1] : &:r2295_1
14399+ # 2295| m2295_8(String) = Chi : total:m2295_2, partial:m2295_7
14400+ # 2296| r2296_1(glval<unknown>) = FunctionAddress[VoidFunc] :
14401+ # 2296| v2296_2(void) = Call[VoidFunc] : func:r2296_1
14402+ # 2296| m2296_3(unknown) = ^CallSideEffect : ~m2295_6
14403+ # 2296| m2296_4(unknown) = Chi : total:m2295_6, partial:m2296_3
14404+ # 2296| v2296_5(void) = NoOp :
14405+ # 2297| r2297_1(glval<String>) = VariableAddress[s] :
14406+ # 2297| r2297_2(glval<unknown>) = FunctionAddress[~String] :
14407+ # 2297| v2297_3(void) = Call[~String] : func:r2297_2, this:r2297_1
14408+ # 2297| m2297_4(unknown) = ^CallSideEffect : ~m2296_4
14409+ # 2297| m2297_5(unknown) = Chi : total:m2296_4, partial:m2297_4
14410+ # 2297| v2297_6(void) = ^IndirectReadSideEffect[-1] : &:r2297_1, m2295_8
14411+ # 2297| m2297_7(String) = ^IndirectMayWriteSideEffect[-1] : &:r2297_1
14412+ # 2297| m2297_8(String) = Chi : total:m2295_8, partial:m2297_7
14413+ # 2294| v2294_5(void) = ReturnVoid :
14414+ # 2294| v2294_6(void) = AliasedUse : ~m2297_5
14415+ # 2294| v2294_7(void) = ExitFunction :
14416+
1439014417perf-regression.cpp:
1439114418# 6| void Big::Big()
1439214419# 6| Block 0
0 commit comments