DAG dump readability

Stepan Dyatkovskiy stpworld at narod.ru
Fri Dec 6 03:41:17 PST 2013


Hi all!
I propose DAG dump improvement (for -debug output). To be short just 
look at example below:

Now:
   0x3adf4e0: v4i32,ch = load 0x3ab64c0, 0x3ab5680, 0x3abaee0 
<LD16[bitcast ([4 x i32]* @f to <4 x i32>*)](align=4)(tbaa=<badref>)> 
[ORD=47] [ID=-3]

After:
   Node47: v4i32,ch = load Node7, Node46, Node26<i32 undef> 
<LD16[bitcast ([4 x i32]* @f to <4 x i32>*)](align=4)(tbaa=<badref>)> 
[ORD=47] [ID=-3]

Features:
   * Possibility to replace 0xCRAZYNUM with something more
     readable (Node<Num>).
     You can also setup to output both CRAZYNUM and Node<Num>.
   * Constants, registers and undef could be inlined. So you don't need
     to lookup top part of dump just to realize that 0x3abaee0 is undef.
     It could be inlined in hint mode, or substitution mode.
     In last case you will get next output:
   Node47: v4i32,ch = load Node7, Node46, i32 undef <LD16[bitcast ([4 x 
i32]* @f to <4 x i32>*)](align=4)(tbaa=<badref>)> [ORD=47] [ID=-3]

Will wait you reviews, remarks and questions.

-Stepan

-------------- next part --------------
A non-text attachment was scrubbed...
Name: nice-debug-2013-12-06.patch
Type: text/x-diff
Size: 8832 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20131206/3739db00/attachment.patch>


More information about the llvm-commits mailing list