[PATCH] D28522: Codegen: Make chains from trellis-shaped CFGs

David Li via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 14 15:19:18 PST 2017


davidxl added inline comments.


================
Comment at: test/CodeGen/PowerPC/tail-dup-layout.ll:204
+
+; The block then2 is not unavoidable, but since it can be tail-duplicated, it
+; should be placed as a fallthrough from test2 and copied.
----------------
The term 'unavoidable' is not well defined -- why is 'then2' unavoidable? 


================
Comment at: test/CodeGen/PowerPC/tail-dup-layout.ll:254
+; CHECK-LABEL: lattice_test
+; The most important edge here is f->ret. It's twice as hot as the rest
+; We should also see:
----------------
Is this comment relevant here?


================
Comment at: test/CodeGen/PowerPC/tail-dup-layout.ll:267
+; CHECK: # %e
+define void @lattice_test(i32 %tag) {
+entry:
----------------
change name to trellis_test


================
Comment at: test/CodeGen/PowerPC/tail-dup-layout.ll:275
+  %tagbits.a.eq0 = icmp eq i32 %tagbits.a, 0
+  br i1 %tagbits.a.eq0, label %c, label %b, !prof !2 ; balanced
+c:
----------------
Using non-equal branch probability here to make the result more obvious in different scenarios:

1. there are conflict in best incoming edges
2. there are no conflict etc.


================
Comment at: test/CodeGen/PowerPC/tail-dup-layout.ll:305
+ret:
+  ret void
+}
----------------
We probably also need a test for trellis+triangle shape (without taildup)


================
Comment at: test/CodeGen/PowerPC/tail-dup-layout.ll:323
+; CHECK: # %ret
+define void @lattice_then_dup_test(i32 %tag) {
+entry:
----------------
change name.


https://reviews.llvm.org/D28522





More information about the llvm-commits mailing list