On 07/16/2018 05:44 PM, Hrishikesh Kulkarni wrote:
> Hi,
> 
> As suggested I have created command line option -optimized=[none,
> blocks, stats, vops] to dump the respective gimple bodies of all
> functions.
> 
> for example:
> 
> -optimized=blocks will dump


Hi.

The name does not make much sense and you removed option that
limited function name. So instead I would create something like:

-fdump-body=foo
and
-fdump-level=optimized

I don't like how you do manual parsing in:
+  if (!strcmp (flag_optimized, "blocks"))
+    flags = TDF_BLOCKS;
+  else if (!strcmp (flag_optimized, "stats"))
+    flags = TDF_STATS;
+  else if (!strcmp (flag_optimized, "vops"))
+    flags = TDF_VOPS;
+  else if (!strcmp (flag_optimized, "none"))
+    flags = TDF_NONE;

As I wrote in previous email, take a look how it's done
in dump_switch_p_1 (const char *arg, struct dump_file_info *dfi, bool doglob)
and reuse that functionality.

Martin

> 
> Gimple body of function: main
> main ()
> {
> ;;   basic block 2, loop depth 0
> ;;    pred:       ENTRY
>   printf ("%d", 8);
>   return 0;
> ;;    succ:       EXIT
> 
> }
> 
> 
> Gimple body of function: bar
> bar (int a, int b, int cond)
> {
>   int ret;
> 
> ;;   basic block 2, loop depth 0
> ;;    pred:       ENTRY
>   if (cond_2(D) != 0)
>     goto <bb 3>; [50.00%]
>   else
>     goto <bb 4>; [50.00%]
> ;;    succ:       3
> ;;                4
> 
> ;;   basic block 3, loop depth 0
> ;;    pred:       2
>   ret_5 = a_3(D) + b_4(D);
>   goto <bb 5>; [100.00%]
> ;;    succ:       5
> 
> ;;   basic block 4, loop depth 0
> ;;    pred:       2
>   ret_6 = a_3(D) - b_4(D);
> ;;    succ:       5
> 
> ;;   basic block 5, loop depth 0
> ;;    pred:       3
> ;;                4
>   # ret_1 = PHI <ret_5(3), ret_6(4)>
>   return ret_1;
> ;;    succ:       EXIT
> 
> }
> 
> 
> Gimple body of function: foo
> foo (int a, int b)
> {
> ;;   basic block 2, loop depth 0
> ;;    pred:       ENTRY
>   _3 = a_1(D) + b_2(D);
>   return _3;
> ;;    succ:       EXIT
> 
> }
> 
> I have pushed the changes to the repo. Please find the diff file
> attached herewith.
> 
> Regards,
> 
> Hrishikesh
> 
> On Fri, Jul 13, 2018 at 2:47 PM, Martin Liška <mli...@suse.cz> wrote:
>> On 07/12/2018 08:05 PM, Hrishikesh Kulkarni wrote:
>>> Hi,
>>>
>>> I have added command line options:
>>>
>>> -body=
>>> To dump gimple body (TDF_NONE) of specific function.
>>>
>>> -optimized-blocks=
>>> To dump gimple body (TDF_BLOCKS) of specific function.
>>>
>>> -optimized-stats=
>>> To dump gimple body (TDF_STATS) of specific function.
>>>
>>> -optimized-vops=
>>> To dump gimple body (TDF_VOPS) of specific function.
>>
>> Hi.
>>
>> Thanks for it. However I would expect something more smart:
>> -optimized=[vops,stats,block]. Note that you should do similar
>> what's done in: gcc/dumpfile.c
>>
>> int
>> gcc::dump_manager::
>> dump_switch_p_1 (const char *arg, struct dump_file_info *dfi, bool doglob)
>>
>> that will automatically parse   dump_flags_t flags;
>>
>> Then the copy&parse will not be needed.
>>
>>>
>>> for example:
>>>
>>> -body=foo  will dump
>>>
>>> Gimple body of function: foo
>>> foo (int a, int b)
>>> {
>>>   <bb 2> [local count: 1073741825]:
>>>   _3 = a_1(D) + b_2(D);
>>>   return _3;
>>>
>>> }
>>>
>>>
>>> -optimized-blocks=foo  will dump
>>>
>>> Gimple body of function: foo
>>> foo (int a, int b)
>>> {
>>> ;;   basic block 2, loop depth 0
>>> ;;    pred:       ENTRY
>>>   _3 = a_1(D) + b_2(D);
>>>   return _3;
>>> ;;    succ:       EXIT
>>>
>>> }
>>>
>>>
>>> -optimized-stats=foo  will dump
>>>
>>> Gimple body of function: foo
>>> foo (int a, int b)
>>> {
>>>   <bb 2> [local count: 1073741825]:
>>>   _3 = a_1(D) + b_2(D);
>>>   return _3;
>>>
>>> }
>>>
>>>
>>> -optimized-vops=foo  will dump
>>>
>>> Gimple body of function: foo
>>> foo (int a, int b)
>>> {
>>>   <bb 2> [local count: 1073741825]:
>>>   _3 = a_1(D) + b_2(D);
>>>   # VUSE <.MEM_4(D)>
>>>   return _3;
>>>
>>> }
>>>
>>> I have pushed the changes to the current branch. Please find the diff
>>> file attached herewith.
>>>
>>> I have tried to follow the coding conventions as far as possible in
>>> this patch. Please let me know if I am missing out something so that I
>>> can improve the same while refactoring and clean up as suggested in
>>> the previous mail.
>>
>> As mentioned in the previous email, indentation level is 2. And every 8 
>> spaces
>> are replaced with a tabular. In our patch, you use indentation level equal to
>> one tab, which results in indentation level 8.
>>
>> Martin
>>
>>>
>>> Regards,
>>>
>>> Hrishikesh
>>>
>>> On Wed, Jul 11, 2018 at 12:10 AM, Hrishikesh Kulkarni
>>> <hrishikeshpa...@gmail.com> wrote:
>>>> Hi,
>>>>
>>>> Thanks for suggestions. I would start working on these points and will
>>>> try to complete as early as possible.
>>>>
>>>> Regards,
>>>>
>>>> Hrishikesh
>>>>
>>>> On Mon, Jul 9, 2018 at 2:04 PM, Martin Liška <mli...@suse.cz> wrote:
>>>>> On 07/09/2018 09:50 AM, Hrishikesh Kulkarni wrote:
>>>>>> Hi,
>>>>>>
>>>>>> The command line option -gimple-stats will dump the statistics of
>>>>>> gimple statements.
>>>>>>
>>>>>> For example:
>>>>>>
>>>>>> $ ../stage1-build/gcc/lto-dump test_hello.o -gimple-stats
>>>>>>
>>>>>> will dump:
>>>>>>
>>>>>> GIMPLE statements
>>>>>> Kind                   Stmts      Bytes
>>>>>> ---------------------------------------
>>>>>> assignments                3        264
>>>>>> phi nodes                  1        248
>>>>>> conditionals               1         80
>>>>>> everything else           12        704
>>>>>> ---------------------------------------
>>>>>> Total                     17       1296
>>>>>> ---------------------------------------
>>>>>>
>>>>>> I have pushed the changes to the repo. Please find the diff file
>>>>>> attached herewith.
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Hrishikesh
>>>>>
>>>>> Hi.
>>>>>
>>>>> Thanks for the work. I briefly took a look at the code and I would
>>>>> focus now directly on refactoring:
>>>>>
>>>>> - please make a new branch, first copy lto-dump.c file and all the
>>>>> Makefile needed stuff and commit that.
>>>>> - next please rebase (squash) all your patches which you have on top
>>>>> of it; you did some formatting corrections and it's very hard to read
>>>>> - please fix coding style, it's mentioned here: 
>>>>> https://gcc.gnu.org/codingconventions.html
>>>>> the most problematic is usage of horizontal white spaces. We use 2 spaces
>>>>> for indentation level, and 8 spaces are replaced with a tabular; without 
>>>>> that reading your
>>>>> code is very hard for me
>>>>> - then please start refactoring functionality that is copied from lto.c 
>>>>> and put shared
>>>>> stuff into a header file that will be used by lto.c and lto-dump.c.
>>>>>
>>>>> Other observations:
>>>>> - you use "\t\t%s\t\t%s\t\t%s" formats for prints; I think it would be 
>>>>> better to
>>>>> use fixed strings with spaces, try %20s. It's probably also used by tools 
>>>>> like nm or objdump
>>>>> - come up with more specific name for 'entry' and 'compare'
>>>>> - 'entry' should have functions that will print names, ... according to 
>>>>> options
>>>>> (flag_lto_dump_demangle, ...); you can have overrides for functions and 
>>>>> variables
>>>>> - I would first put all symbols into the vector and then I would print it 
>>>>> on a single place
>>>>> - consider using vec from vec.h, hash_map from hash-map.h instead of 
>>>>> std:: variants
>>>>> - exit after functions like dump_list, dump_symbol,...
>>>>> - remove dummy 'dump' function
>>>>>
>>>>> Martin
>>>>>
>>>>>>
>>>>>> On Thu, Jul 5, 2018 at 10:41 PM, Hrishikesh Kulkarni
>>>>>> <hrishikeshpa...@gmail.com> wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> I have added new command line option:
>>>>>>> -objects
>>>>>>> which will dump size, offset and name of each section for all lto 
>>>>>>> objects
>>>>>>>
>>>>>>> for example:
>>>>>>> $ ../stage1-build/gcc/lto-dump test_hello.o test.o -objects
>>>>>>>
>>>>>>> gives output:
>>>>>>>             LTO object name: test_hello.o
>>>>>>>
>>>>>>> NO.        OFFSET        SIZE        SECTION NAME
>>>>>>>
>>>>>>> 1        64        15        .gnu.lto_.profile.a7add72ac123628
>>>>>>> 2        79        55        .gnu.lto_.icf.a7add72ac123628
>>>>>>> 3        134        134        .gnu.lto_.jmpfuncs.a7add72ac123628
>>>>>>> 4        268        116        .gnu.lto_.inline.a7add72ac123628
>>>>>>> 5        384        24        .gnu.lto_.pureconst.a7add72ac123628
>>>>>>> 6        408        306        .gnu.lto_foo.a7add72ac123628
>>>>>>> 7        714        469        .gnu.lto_bar.a7add72ac123628
>>>>>>> 8        1183        345        .gnu.lto_main.a7add72ac123628
>>>>>>> 9        1528        88        .gnu.lto_.symbol_nodes.a7add72ac123628
>>>>>>> 10        1616        15        .gnu.lto_.refs.a7add72ac123628
>>>>>>> 11        1631        1205        .gnu.lto_.decls.a7add72ac123628
>>>>>>> 12        2836        109        .gnu.lto_.symtab.a7add72ac123628
>>>>>>> 13        2945        76        .gnu.lto_.opts
>>>>>>>
>>>>>>>             LTO object name: test.o
>>>>>>>
>>>>>>> NO.        OFFSET        SIZE        SECTION NAME
>>>>>>>
>>>>>>> 1        64        15        .gnu.lto_.profile.ffab9cb8eb84fc03
>>>>>>> 2        79        30        .gnu.lto_.icf.ffab9cb8eb84fc03
>>>>>>> 3        109        108        .gnu.lto_.jmpfuncs.ffab9cb8eb84fc03
>>>>>>> 4        217        62        .gnu.lto_.inline.ffab9cb8eb84fc03
>>>>>>> 5        279        21        .gnu.lto_.pureconst.ffab9cb8eb84fc03
>>>>>>> 6        300        194        .gnu.lto_koo.ffab9cb8eb84fc03
>>>>>>> 7        494        389        .gnu.lto_gain.ffab9cb8eb84fc03
>>>>>>> 8        883        77        .gnu.lto_.symbol_nodes.ffab9cb8eb84fc03
>>>>>>> 9        960        15        .gnu.lto_.refs.ffab9cb8eb84fc03
>>>>>>> 10        975        966        .gnu.lto_.decls.ffab9cb8eb84fc03
>>>>>>> 11        1941        58        .gnu.lto_.symtab.ffab9cb8eb84fc03
>>>>>>> 12        1999        76        .gnu.lto_.opts
>>>>>>>
>>>>>>>
>>>>>>> I have pushed the changes to the repo. Please find the diff file
>>>>>>> attached herewith.
>>>>>>>
>>>>>>> Regards,
>>>>>>>
>>>>>>> Hrishikesh
>>>>>>>
>>>>>>> On Thu, Jul 5, 2018 at 12:24 AM, Hrishikesh Kulkarni
>>>>>>> <hrishikeshpa...@gmail.com> wrote:
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I have:
>>>>>>>> tried to do all the formatting and style corrections according to
>>>>>>>> output given by check_GNU_style.py
>>>>>>>> removed '-fdump-lto' prefix from the command line options
>>>>>>>> added few necessary comments in the code
>>>>>>>> added command line option -type-stats from previous branch (added a
>>>>>>>> new percentage column to it)
>>>>>>>> for e.g.
>>>>>>>>     integer_type    3    25.00%
>>>>>>>>     pointer_type    3    25.00%
>>>>>>>>     array_type    1    8.33%
>>>>>>>>     function_type    5    41.67%
>>>>>>>> I have pushed the changes  to the repo. Please find the diff file
>>>>>>>> attached herewith.
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>>
>>>>>>>> Hrishikesh
>>>>>>>>
>>>>>>>> On Tue, Jul 3, 2018 at 6:39 PM, Hrishikesh Kulkarni
>>>>>>>> <hrishikeshpa...@gmail.com> wrote:
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> Thanks for suggestions. I have started incorporating them. As a first:
>>>>>>>>>
>>>>>>>>> I have added command line options:
>>>>>>>>> -print-size  to print the size of functions and variables
>>>>>>>>> size of variables is in bits and size of functions is represented as
>>>>>>>>> number of basic blocks.
>>>>>>>>>
>>>>>>>>> -print-value  to print the value of initialization of global 
>>>>>>>>> variables.
>>>>>>>>>
>>>>>>>>> -size-sort  to sort the symbol names according to the size.
>>>>>>>>>
>>>>>>>>> for example command line options:
>>>>>>>>>
>>>>>>>>>  ../stage1-build/gcc/lto-dump test_hello.o -fdump-lto-list -print-size
>>>>>>>>> -print-value -size-sort
>>>>>>>>>
>>>>>>>>> the dump is:
>>>>>>>>>
>>>>>>>>> Symbol Table
>>>>>>>>>         Name         Type         Visibility        Size     Value
>>>>>>>>>
>>>>>>>>>         printf         function        default           0
>>>>>>>>>         main         function        default           3
>>>>>>>>>         foo            function        default           3
>>>>>>>>>         bar            function        default           6
>>>>>>>>>
>>>>>>>>>         z               variable        default           8        97
>>>>>>>>>         k               variable        default          32        5
>>>>>>>>>         p               variable        default          32
>>>>>>>>> 4.400000095367431640625e+0
>>>>>>>>>
>>>>>>>>> I have also tried to make memory allocation dynamic to the best of my 
>>>>>>>>> knowledge.
>>>>>>>>> I have pushed the changes to the repo. Please find the diff file
>>>>>>>>> attached herewith.
>>>>>>>>>
>>>>>>>>> Regards,
>>>>>>>>>
>>>>>>>>> Hrishikesh
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Jun 29, 2018 at 12:55 PM, Martin Liška <mli...@suse.cz> wrote:
>>>>>>>>>> On 06/27/2018 10:06 PM, Hrishikesh Kulkarni wrote:
>>>>>>>>>>> Hi,
>>>>>>>>>>>
>>>>>>>>>>> I have added new command line options:
>>>>>>>>>>> -no-demangle -> for the default non demangled output
>>>>>>>>>>> -no-sort -> for the list of symbols in order of their occurrence
>>>>>>>>>>> -alpha-sort -> for the list of symbols in their alphabetical order
>>>>>>>>>>> -reverse-sort -> for the list of symbols in reversed order
>>>>>>>>>>> -defined-only -> for only the defined symbols
>>>>>>>>>>
>>>>>>>>>> Hi.
>>>>>>>>>>
>>>>>>>>>> Good progress.
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> for example:
>>>>>>>>>>>
>>>>>>>>>>> ../stage1-build/gcc/lto-dump test_hello.o -fdump-lto-list 
>>>>>>>>>>> -alpha-sort
>>>>>>>>>>> -demangle -defined-only -reverse-sort
>>>>>>>>>>
>>>>>>>>>> Now as you have a separate tool (lto-dump), you can strip 
>>>>>>>>>> 'fdump-lto' prefix
>>>>>>>>>> from the older options.
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> will dump
>>>>>>>>>>>
>>>>>>>>>>> Symbol Table
>>>>>>>>>>>         Name         Type         Visibility         Size
>>>>>>>>>>>         main        function        default
>>>>>>>>>>>         k        variable        default
>>>>>>>>>>>         foo        function        default
>>>>>>>>>>>         bar        function        default
>>>>>>>>>>>
>>>>>>>>>>> It is a reversed alphabetical order of demangled symbol names which
>>>>>>>>>>> have been defined(hence printf excluded).
>>>>>>>>>>> Along with this I have also added all previous progress with 
>>>>>>>>>>> reference
>>>>>>>>>>> to symbol table to the new branch.
>>>>>>>>>>>
>>>>>>>>>>> For further options to add like -size-sort and -print-size I tried 
>>>>>>>>>>> to
>>>>>>>>>>> access size of the symbol with symtab node using
>>>>>>>>>>> TREE_INT_CST_LOW(DECL_SIZE(node->decl));
>>>>>>>>>>> but I am unable to do so.
>>>>>>>>>>> So how should I proceed with it?
>>>>>>>>>>
>>>>>>>>>> Sent advises via instant messaging.
>>>>>>>>>>
>>>>>>>>>> Martin
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Please find the diff file attached herewith. I have also pushed the
>>>>>>>>>>> changes to the new branch.
>>>>>>>>>>>
>>>>>>>>>>> Please advise,
>>>>>>>>>>>
>>>>>>>>>>> Hrishikesh>
>>>>>>>>>>> On Wed, Jun 27, 2018 at 1:15 AM, Hrishikesh Kulkarni
>>>>>>>>>>> <hrishikeshpa...@gmail.com> wrote:
>>>>>>>>>>>> Hi,
>>>>>>>>>>>>
>>>>>>>>>>>> I have created another branch lto-dump-tool-improved as suggested.
>>>>>>>>>>>> I have applied the patch for separation to lto-dump binary, made a 
>>>>>>>>>>>> few
>>>>>>>>>>>> necessary changes in other files and it is running successfully.
>>>>>>>>>>>> I will keep on adding previous work to this branch incrementally.
>>>>>>>>>>>>
>>>>>>>>>>>> Please find the diff file attached for dumping of TREE statistics 
>>>>>>>>>>>> and
>>>>>>>>>>>> GIMPLE statistics.
>>>>>>>>>>>>
>>>>>>>>>>>> for example:
>>>>>>>>>>>> (after configuring with --enable-gather-detailed-mem-stats)
>>>>>>>>>>>> -fdump-lto-gimple-stats will dump
>>>>>>>>>>>> GIMPLE statements
>>>>>>>>>>>> Kind                   Stmts      Bytes
>>>>>>>>>>>> ---------------------------------------
>>>>>>>>>>>> assignments                0          0
>>>>>>>>>>>> phi nodes                  0          0
>>>>>>>>>>>> conditionals               0          0
>>>>>>>>>>>> everything else            0          0
>>>>>>>>>>>> ---------------------------------------
>>>>>>>>>>>> Total                      0          0
>>>>>>>>>>>> ---------------------------------------
>>>>>>>>>>>>
>>>>>>>>>>>> -fdump-lto-tree-stats will dump
>>>>>>>>>>>>
>>>>>>>>>>>> Tree Statistics
>>>>>>>>>>>>
>>>>>>>>>>>> Kind                   Nodes      Bytes
>>>>>>>>>>>> ----------------------------------------
>>>>>>>>>>>> decls                   4327     932672
>>>>>>>>>>>> types                   1531     257208
>>>>>>>>>>>> blocks                     0          0
>>>>>>>>>>>> stmts                      0          0
>>>>>>>>>>>> refs                       0          0
>>>>>>>>>>>> exprs                      4        128
>>>>>>>>>>>> constants                 82       2060
>>>>>>>>>>>> identifiers             4430     177200
>>>>>>>>>>>> vecs                      16      28544
>>>>>>>>>>>> binfos                     0          0
>>>>>>>>>>>> ssa names                  0          0
>>>>>>>>>>>> constructors               0          0
>>>>>>>>>>>> random kinds            7301     291952
>>>>>>>>>>>> lang_decl kinds            0          0
>>>>>>>>>>>> lang_type kinds            0          0
>>>>>>>>>>>> omp clauses                0          0
>>>>>>>>>>>> ----------------------------------------
>>>>>>>>>>>> Total                  17691    1689764
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Please advise,
>>>>>>>>>>>>
>>>>>>>>>>>> Hrishikesh
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Jun 27, 2018 at 1:00 AM, Hrishikesh Kulkarni
>>>>>>>>>>>> <hrishikeshpa...@gmail.com> wrote:
>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>
>>>>>>>>>>>>> I have created another branch lto-dump-tool-improved as suggested.
>>>>>>>>>>>>> I have applied the patch for separation to lto-dump binary, made 
>>>>>>>>>>>>> a few
>>>>>>>>>>>>> necessary changes in other files and it is running successfully.
>>>>>>>>>>>>> I will keep on adding previous work to this branch incrementally.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Please find the diff file attached for dumping of TREE statistics 
>>>>>>>>>>>>> and GIMPLE
>>>>>>>>>>>>> statistics.
>>>>>>>>>>>>>
>>>>>>>>>>>>> for example:
>>>>>>>>>>>>> (after configuring with --enable-gather-detailed-mem-stats)
>>>>>>>>>>>>> -fdump-lto-gimple-stats will dump
>>>>>>>>>>>>> GIMPLE statements
>>>>>>>>>>>>> Kind                   Stmts      Bytes
>>>>>>>>>>>>> ---------------------------------------
>>>>>>>>>>>>> assignments                0          0
>>>>>>>>>>>>> phi nodes                  0          0
>>>>>>>>>>>>> conditionals               0          0
>>>>>>>>>>>>> everything else            0          0
>>>>>>>>>>>>> ---------------------------------------
>>>>>>>>>>>>> Total                      0          0
>>>>>>>>>>>>> ---------------------------------------
>>>>>>>>>>>>>
>>>>>>>>>>>>> -fdump-lto-tree-stats will dump
>>>>>>>>>>>>>
>>>>>>>>>>>>> Tree Statistics
>>>>>>>>>>>>>
>>>>>>>>>>>>> Kind                   Nodes      Bytes
>>>>>>>>>>>>> ----------------------------------------
>>>>>>>>>>>>> decls                   4327     932672
>>>>>>>>>>>>> types                   1531     257208
>>>>>>>>>>>>> blocks                     0          0
>>>>>>>>>>>>> stmts                      0          0
>>>>>>>>>>>>> refs                       0          0
>>>>>>>>>>>>> exprs                      4        128
>>>>>>>>>>>>> constants                 82       2060
>>>>>>>>>>>>> identifiers             4430     177200
>>>>>>>>>>>>> vecs                      16      28544
>>>>>>>>>>>>> binfos                     0          0
>>>>>>>>>>>>> ssa names                  0          0
>>>>>>>>>>>>> constructors               0          0
>>>>>>>>>>>>> random kinds            7301     291952
>>>>>>>>>>>>> lang_decl kinds            0          0
>>>>>>>>>>>>> lang_type kinds            0          0
>>>>>>>>>>>>> omp clauses                0          0
>>>>>>>>>>>>> ----------------------------------------
>>>>>>>>>>>>> Total                  17691    1689764
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Please advise,
>>>>>>>>>>>>>
>>>>>>>>>>>>> Hrishikesh
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Fri, Jun 22, 2018 at 2:29 PM, Martin Liška <mli...@suse.cz> 
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 06/18/2018 10:45 AM, Martin Jambor wrote:
>>>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Sun, Jun 17 2018, Hrishikesh Kulkarni wrote:
>>>>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I am trying to isolate the dump tool into real lto-dump tool. 
>>>>>>>>>>>>>>>> I have
>>>>>>>>>>>>>>>> started with the copy&paste of lto.c into lto-dump.c and done 
>>>>>>>>>>>>>>>> the
>>>>>>>>>>>>>>>> changes to Make-lang.in and config-lang.in suggested by Martin 
>>>>>>>>>>>>>>>> (patch
>>>>>>>>>>>>>>>> attached). However when I try to build, I get the following 
>>>>>>>>>>>>>>>> error:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> In file included from ../../gcc/gcc/lto/lto-dump.c:24:0:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> ../../gcc/gcc/coretypes.h:397:24: fatal error: insn-modes.h: 
>>>>>>>>>>>>>>>> No such
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> file or directory
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> compilation terminated.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I am unable to find the missing dependencies and would be 
>>>>>>>>>>>>>>>> grateful for
>>>>>>>>>>>>>>>> suggestions on how to resolve the issue.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> insn-modes.h is one of header files which are generated at 
>>>>>>>>>>>>>>> build time,
>>>>>>>>>>>>>>> you will find it in the gcc subdirectory of your build 
>>>>>>>>>>>>>>> directory (as
>>>>>>>>>>>>>>> opposed to the source directory).
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Martin
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Hi.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> There's patch that works for me.
>>>>>>>>>>>>>> Needed dependency is here:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> +lto/lto-dump.o: $(LTO_EXE)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> It's bit artificial, but for now it works. Please start working
>>>>>>>>>>>>>> on separation of dump infrastructure to lto-dump.c. You'll need
>>>>>>>>>>>>>> to factor out common code shared in between lto.c and lto-dump.c.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Martin
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>
>>>>>
>>

Reply via email to