================
@@ -0,0 +1,179 @@
+; RUN: rm -rf %t && split-file %s %t
+; RUN: opt -S -passes=lowertypetests -lowertypetests-summary-action=export 
-lowertypetests-read-summary=%t/summary.ll %t/main.ll | FileCheck %s
+
+; Tests that functions in a jump table are reordered according to call edge 
hotness
+; recorded in the ThinLTO summary index:
+; 1. (Highest priority) Within each strict type, hotter functions are placed 
later,
+;    ordered strictly by: Cold (0) < Unknown (1) < None (2) < Hot (3) < 
Critical (4).
+; 2. (High priority) Across fragments, the fragment with the globally hottest 
function
+;    (@f_critical) is placed at the very end of the jump table.
+; 3. (Best effort) Each strict type's members remain contiguous (lowered to 
range checks, no holes).
----------------
vitalybuka wrote:

Added TODO

https://github.com/llvm/llvm-project/pull/221045
_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to