1*c85f09ccSJohn Levonsparse - extra options for developers
2*c85f09ccSJohn Levon=====================================
3*c85f09ccSJohn Levon
4*c85f09ccSJohn LevonSYNOPSIS
5*c85f09ccSJohn Levon--------
6*c85f09ccSJohn Levon``tools`` [`options`]... `file.c``
7*c85f09ccSJohn Levon
8*c85f09ccSJohn LevonDESCRIPTION
9*c85f09ccSJohn Levon-----------
10*c85f09ccSJohn Levon
11*c85f09ccSJohn LevonThis file is a complement of sparse's man page meant to
12*c85f09ccSJohn Levondocument options only useful for development on sparse itself.
13*c85f09ccSJohn Levon
14*c85f09ccSJohn LevonOPTIONS
15*c85f09ccSJohn Levon-------
16*c85f09ccSJohn Levon
17*c85f09ccSJohn Levon.. option:: -fdump-ir=pass,[pass]
18*c85f09ccSJohn Levon
19*c85f09ccSJohn Levon  Dump the IR at each of the given passes.
20*c85f09ccSJohn Levon
21*c85f09ccSJohn Levon  The passes currently understood are:
22*c85f09ccSJohn Levon
23*c85f09ccSJohn Levon    * ``linearize``
24*c85f09ccSJohn Levon    * ``mem2reg``
25*c85f09ccSJohn Levon    * ``final``
26*c85f09ccSJohn Levon
27*c85f09ccSJohn Levon  The default pass is ``linearize``.
28*c85f09ccSJohn Levon
29*c85f09ccSJohn Levon.. option:: -f<name-of-the-pass>[-disable|-enable|=last]
30*c85f09ccSJohn Levon
31*c85f09ccSJohn Levon  If ``=last`` is used, all passes after the specified one are disabled.
32*c85f09ccSJohn Levon  By default all passes are enabled.
33*c85f09ccSJohn Levon
34*c85f09ccSJohn Levon  The passes currently understood are:
35*c85f09ccSJohn Levon
36*c85f09ccSJohn Levon    * ``linearize`` (can't be disabled)
37*c85f09ccSJohn Levon    * ``mem2reg``
38*c85f09ccSJohn Levon    * ``optim``
39*c85f09ccSJohn Levon
40*c85f09ccSJohn Levon.. option:: -vcompound
41*c85f09ccSJohn Levon
42*c85f09ccSJohn Levon  Print all compound global data symbols with their sizes and alignment.
43*c85f09ccSJohn Levon
44*c85f09ccSJohn Levon.. option:: -vdead
45*c85f09ccSJohn Levon
46*c85f09ccSJohn Levon  Add ``OP_DEATHNOTE`` annotations to dead pseudos.
47*c85f09ccSJohn Levon
48*c85f09ccSJohn Levon.. option:: -vdomtree
49*c85f09ccSJohn Levon
50*c85f09ccSJohn Levon  Dump the dominance tree after its calculation.
51*c85f09ccSJohn Levon
52*c85f09ccSJohn Levon.. option:: -ventry
53*c85f09ccSJohn Levon
54*c85f09ccSJohn Levon  Dump the IR after all optimization passes.
55*c85f09ccSJohn Levon
56*c85f09ccSJohn Levon.. option:: -vpostorder
57*c85f09ccSJohn Levon
58*c85f09ccSJohn Levon  Dump the reverse postorder traversal of the CFG.
59