<p>
Hello, everyone!
</p>
<p>
<br>
</p>
<p>
I have made a few modifications to the ARM constant island placement and branch shortening pass
</p>
<p>
(i.e., class ARMConstantIslands) to suit the pass to my control flow checking algorithm.
</p>
<p>
<br>
</p>
<p>
For now, I would like to test the modified pass alone. However it doesn't seem to be easy to
</p>
<p>
find a program that exercises the pass. I think I need to find some existing tests, and probably
</p>
<p>
will have to modify some tests to suit my needs.
</p>
<p>
<br>
</p>
<p>
I am new to the LLVM test infrastructure. I am aware that a LLVM release comes together with a lot
</p>
<p>
of regression tests in the test directory. But it seems to be impossible to tell which files are
</p>
<p>
relevant to the pass by looking at the file names alone. In test/CodeGen/ARM, I found a few files
</p>
<p>
baring a name containing the word "island" and "jump" (as in "jump table"):
</p>
<p>
<br>
</p>
<p>
constant-island-crash.ll
</p>
<p>
constant-islands.ll
</p>
<p>
jump-table-islands.ll
</p>
<p>
jump-table-islands-split.ll
</p>
<p>
arm-position-independence-jump-table.ll
</p>
<p>
jumptable-label.ll
</p>
<p>
jump-table-tbh.ll
</p>
<p>
<br>
</p>
<p>
In these files, I found little documentation.
</p>
Are these all relevant to the pass? Are there other relevant tests?<br>
<p>
<br>
</p>
<p>
How do you test the pass?
</p>
<p>
Is there a way to find all relevant regression tests easily?
</p>
<p>
<br>
</p>
<p>
Thank you!
</p>
<p>
<br>
</p>
<p>
Ming Zhang
</p>
<p>
<br>
</p>