[llvm] ac95545 - [CSSPGO] Fix a test issue due to portablity of std::hash
Hongtao Yu via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 13 17:20:03 PDT 2021
Author: Hongtao Yu
Date: 2021-04-13T17:19:15-07:00
New Revision: ac955452ab2ab853900b2d2707243a41f8f8204d
URL: https://github.com/llvm/llvm-project/commit/ac955452ab2ab853900b2d2707243a41f8f8204d
DIFF: https://github.com/llvm/llvm-project/commit/ac955452ab2ab853900b2d2707243a41f8f8204d.diff
LOG: [CSSPGO] Fix a test issue due to portablity of std::hash
As a follow-up to D99815, this patch enables the test by using a DAG order instead of a sequential order to mitigate the platform portability issue due to `std:: _Hash_bytes`.
Reviewed By: wenlei, jsji
Differential Revision: https://reviews.llvm.org/D100351
Added:
Modified:
llvm/test/Transforms/SampleProfile/profile-context-tracker-debug.ll
Removed:
################################################################################
diff --git a/llvm/test/Transforms/SampleProfile/profile-context-tracker-debug.ll b/llvm/test/Transforms/SampleProfile/profile-context-tracker-debug.ll
index aa7da8f8734fc..c54e2eef4238c 100644
--- a/llvm/test/Transforms/SampleProfile/profile-context-tracker-debug.ll
+++ b/llvm/test/Transforms/SampleProfile/profile-context-tracker-debug.ll
@@ -3,8 +3,7 @@
; based on inline decision, so post inline counts are accurate.
;; The order of nodes within Context Profile Tree depends on the implmementation of std::hash<std::string>.
-;; Mark it fail on AIX for now before we figure out a solution.
-; XFAIL: system-aix
+;; Using check-dag instead of check-next.
; Note that we need new pass manager to enable top-down processing for sample profile loader
@@ -30,23 +29,23 @@
; INLINE-ALL-NEXT: Marking context profile as inlined: main:3 @ _Z5funcAi:1 @ _Z8funcLeafi
; INLINE-ALL-NEXT: Getting callee context for instr: %call.i1 = tail call i32 @_Z3fibi
; INLINE-ALL-NEXT: Getting callee context for instr: %call5.i = tail call i32 @_Z3fibi
-; INLINE-ALL-NEXT: Getting base profile for function: _Z5funcBi
-; INLINE-ALL-NEXT: Merging context profile into base profile: _Z5funcBi
-; INLINE-ALL-NEXT: Found context tree root to promote: external:10 @ _Z5funcBi
-; INLINE-ALL-NEXT: Context promoted to: _Z5funcBi
-; INLINE-ALL-NEXT: Found context tree root to promote: main:3.1 @ _Z5funcBi
-; INLINE-ALL-NEXT: Context promoted and merged to: _Z5funcBi
-; INLINE-ALL-NEXT: Context promoted to: _Z5funcBi:1 @ _Z8funcLeafi
-; INLINE-ALL-NEXT: Found context tree root to promote: externalA:17 @ _Z5funcBi
-; INLINE-ALL-NEXT: Context promoted and merged to: _Z5funcBi
-; INLINE-ALL-NEXT: Getting callee context for instr: %call = tail call i32 @_Z8funcLeafi
-; INLINE-ALL-NEXT: Callee context found: _Z5funcBi:1 @ _Z8funcLeafi
-; INLINE-ALL-NEXT: Marking context profile as inlined: _Z5funcBi:1 @ _Z8funcLeafi
-; INLINE-ALL-NEXT: Getting callee context for instr: %call.i = tail call i32 @_Z3fibi
-; INLINE-ALL-NEXT: Getting callee context for instr: %call5.i = tail call i32 @_Z3fibi
-; INLINE-ALL-NEXT: Getting base profile for function: _Z5funcAi
-; INLINE-ALL-NEXT: Merging context profile into base profile: _Z5funcAi
-; INLINE-ALL-NEXT: Getting base profile for function: _Z8funcLeafi
+; INLINE-ALL-DAG: Getting base profile for function: _Z5funcAi
+; INLINE-ALL-DAG-NEXT: Merging context profile into base profile: _Z5funcAi
+; INLINE-ALL-DAG: Getting base profile for function: _Z5funcBi
+; INLINE-ALL-DAG-NEXT: Merging context profile into base profile: _Z5funcBi
+; INLINE-ALL-DAG-NEXT: Found context tree root to promote: external:10 @ _Z5funcBi
+; INLINE-ALL-DAG-NEXT: Context promoted to: _Z5funcBi
+; INLINE-ALL-DAG-NEXT: Found context tree root to promote: main:3.1 @ _Z5funcBi
+; INLINE-ALL-DAG-NEXT: Context promoted and merged to: _Z5funcBi
+; INLINE-ALL-DAG-NEXT: Context promoted to: _Z5funcBi:1 @ _Z8funcLeafi
+; INLINE-ALL-DAG-NEXT: Found context tree root to promote: externalA:17 @ _Z5funcBi
+; INLINE-ALL-DAG-NEXT: Context promoted and merged to: _Z5funcBi
+; INLINE-ALL-DAG-NEXT: Getting callee context for instr: %call = tail call i32 @_Z8funcLeafi
+; INLINE-ALL-DAG-NEXT: Callee context found: _Z5funcBi:1 @ _Z8funcLeafi
+; INLINE-ALL-DAG-NEXT: Marking context profile as inlined: _Z5funcBi:1 @ _Z8funcLeafi
+; INLINE-ALL-DAG-NEXT: Getting callee context for instr: %call.i = tail call i32 @_Z3fibi
+; INLINE-ALL-DAG-NEXT: Getting callee context for instr: %call5.i = tail call i32 @_Z3fibi
+; INLINE-ALL: Getting base profile for function: _Z8funcLeafi
; INLINE-ALL-NEXT: Merging context profile into base profile: _Z8funcLeafi
; Test we inlined the following in top-down order and promot rest not inlined context profile into base profile
@@ -60,31 +59,31 @@
; INLINE-HOT-NEXT: Callee context found: main:3.1 @ _Z5funcBi
; INLINE-HOT-NEXT: Getting callee context for instr: %call1 = tail call i32 @_Z5funcAi
; INLINE-HOT-NEXT: Callee context found: main:3 @ _Z5funcAi
-; INLINE-HOT-NEXT: Getting base profile for function: _Z5funcBi
-; INLINE-HOT-NEXT: Merging context profile into base profile: _Z5funcBi
-; INLINE-HOT-NEXT: Found context tree root to promote: external:10 @ _Z5funcBi
-; INLINE-HOT-NEXT: Context promoted to: _Z5funcBi
-; INLINE-HOT-NEXT: Found context tree root to promote: main:3.1 @ _Z5funcBi
-; INLINE-HOT-NEXT: Context promoted and merged to: _Z5funcBi
-; INLINE-HOT-NEXT: Context promoted to: _Z5funcBi:1 @ _Z8funcLeafi
-; INLINE-HOT-NEXT: Found context tree root to promote: externalA:17 @ _Z5funcBi
-; INLINE-HOT-NEXT: Context promoted and merged to: _Z5funcBi
-; INLINE-HOT-NEXT: Getting callee context for instr: %call = tail call i32 @_Z8funcLeafi
-; INLINE-HOT-NEXT: Callee context found: _Z5funcBi:1 @ _Z8funcLeafi
-; INLINE-HOT-NEXT: Marking context profile as inlined: _Z5funcBi:1 @ _Z8funcLeafi
-; INLINE-HOT-NEXT: Getting callee context for instr: %call.i = tail call i32 @_Z3fibi
-; INLINE-HOT-NEXT: Getting callee context for instr: %call5.i = tail call i32 @_Z3fibi
-; INLINE-HOT-NEXT: Getting base profile for function: _Z5funcAi
-; INLINE-HOT-NEXT: Merging context profile into base profile: _Z5funcAi
-; INLINE-HOT-NEXT: Found context tree root to promote: main:3 @ _Z5funcAi
-; INLINE-HOT-NEXT: Context promoted to: _Z5funcAi
-; INLINE-HOT-NEXT: Context promoted to: _Z5funcAi:1 @ _Z8funcLeafi
-; INLINE-HOT-NEXT: Getting callee context for instr: %call = tail call i32 @_Z8funcLeafi(i32 %add), !dbg !50
-; INLINE-HOT-NEXT: Callee context found: _Z5funcAi:1 @ _Z8funcLeafi
-; INLINE-HOT-NEXT: Marking context profile as inlined: _Z5funcAi:1 @ _Z8funcLeafi
-; INLINE-HOT-NEXT: Getting callee context for instr: %call.i = tail call i32 @_Z3fibi(i32 %tmp.i) #2, !dbg !62
-; INLINE-HOT-NEXT: Getting callee context for instr: %call5.i = tail call i32 @_Z3fibi(i32 %tmp1.i) #2, !dbg !69
-; INLINE-HOT-NEXT: Getting base profile for function: _Z8funcLeafi
+; INLINE-HOT-DAG: Getting base profile for function: _Z5funcAi
+; INLINE-HOT-DAG-NEXT: Merging context profile into base profile: _Z5funcAi
+; INLINE-HOT-DAG-NEXT: Found context tree root to promote: main:3 @ _Z5funcAi
+; INLINE-HOT-DAG-NEXT: Context promoted to: _Z5funcAi
+; INLINE-HOT-DAG-NEXT: Context promoted to: _Z5funcAi:1 @ _Z8funcLeafi
+; INLINE-HOT-DAG-NEXT: Getting callee context for instr: %call = tail call i32 @_Z8funcLeafi(i32 %add), !dbg !50
+; INLINE-HOT-DAG-NEXT: Callee context found: _Z5funcAi:1 @ _Z8funcLeafi
+; INLINE-HOT-DAG-NEXT: Marking context profile as inlined: _Z5funcAi:1 @ _Z8funcLeafi
+; INLINE-HOT-DAG-NEXT: Getting callee context for instr: %call.i = tail call i32 @_Z3fibi(i32 %tmp.i) #2, !dbg !62
+; INLINE-HOT-DAG-NEXT: Getting callee context for instr: %call5.i = tail call i32 @_Z3fibi(i32 %tmp1.i) #2, !dbg !69
+; INLINE-HOT-DAG: Getting base profile for function: _Z5funcBi
+; INLINE-HOT-DAG-NEXT: Merging context profile into base profile: _Z5funcBi
+; INLINE-HOT-DAG-NEXT: Found context tree root to promote: external:10 @ _Z5funcBi
+; INLINE-HOT-DAG-NEXT: Context promoted to: _Z5funcBi
+; INLINE-HOT-DAG-NEXT: Found context tree root to promote: main:3.1 @ _Z5funcBi
+; INLINE-HOT-DAG-NEXT: Context promoted and merged to: _Z5funcBi
+; INLINE-HOT-DAG-NEXT: Context promoted to: _Z5funcBi:1 @ _Z8funcLeafi
+; INLINE-HOT-DAG-NEXT: Found context tree root to promote: externalA:17 @ _Z5funcBi
+; INLINE-HOT-DAG-NEXT: Context promoted and merged to: _Z5funcBi
+; INLINE-HOT-DAG-NEXT: Getting callee context for instr: %call = tail call i32 @_Z8funcLeafi
+; INLINE-HOT-DAG-NEXT: Callee context found: _Z5funcBi:1 @ _Z8funcLeafi
+; INLINE-HOT-DAG-NEXT: Marking context profile as inlined: _Z5funcBi:1 @ _Z8funcLeafi
+; INLINE-HOT-DAG-NEXT: Getting callee context for instr: %call.i = tail call i32 @_Z3fibi
+; INLINE-HOT-DAG-NEXT: Getting callee context for instr: %call5.i = tail call i32 @_Z3fibi
+; INLINE-HOT: Getting base profile for function: _Z8funcLeafi
; INLINE-HOT-NEXT: Merging context profile into base profile: _Z8funcLeafi
More information about the llvm-commits
mailing list