[PATCH] D35851: [Dominators] Include infinite loops in PostDominatorTree

Jakub Kuderski via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 15 09:16:10 PDT 2017


kuhar added inline comments.


================
Comment at: test/CodeGen/ARM/struct-byval-frame-index.ll:10-12
 ; CHECK: set_stored_macroblock_parameters
-; CHECK: @ %if.end230
-; CHECK-NOT:@ %if.
-; CHECK-NOT:@ %for.
-; CHECK: str r{{.*}}, [sp, [[SLOT:#[0-9]+]]] @ 4-byte Spill
-; CHECK: @ %if.end249
-; CHECK-NOT:@ %if.
-; CHECK-NOT:@ %for.
-; CHECK: ldr r{{.*}}, [sp, [[SLOT]]] @ 4-byte Reload
-; CHECK: @ %for.body285
-; CHECK-NOT:@ %if.
-; CHECK-NOT:@ %for.
-; CHECK: ldr r{{.*}}, [sp, [[SLOT]]] @ 4-byte Reload
+; CHECK: str r{{.*}}, [sp, {{#[0-9]+}}] @ 4-byte Spill
+; CHECK: ldr r{{.*}}, [lr, {{#[0-9]+}}] @ 4-byte Reload
----------------
uabelho wrote:
> Is there any way to check that the spill/reload are placed at reasonable places instead of just checking
> that they exist at all?
> 
> Before the change I made in D34099, the checks looked like
> 
> ; CHECK: str r{{.*}}, [sp, [[SLOT:#[0-9]+]]] @ 4-byte Spill
> ; CHECK: bl RestoreMVBlock8x8
> ; CHECK: bl RestoreMVBlock8x8
> ; CHECK: bl RestoreMVBlock8x8
> ; CHECK: ldr r{{.*}}, [sp, [[SLOT]]] @ 4-byte Reload
> 
> which isn't very picky either, but at least it's something.
> 
> (I don't know the testcase at all, I just convinced myself that my change
> didn't actually break anything, and then tried to update the testcase to
> still check that the spill/reload are generated at some reasonable places)
After this patch the two slots are different and the reload uses lr instead of sp, so I don't think we can verify it better here.


https://reviews.llvm.org/D35851





More information about the llvm-commits mailing list