Backport upstream patches to fix ICEs when using -fdebug-types-section.
[official-gcc.git] / gcc-4_6 / function_reordering_plugin / ChangeLog.google-4_6
blob016346ada990f9ede79455b10dc3c0c87332ff32
1 2012-03-21  Sriraman Tallam  <tmsriram@google.com>
2         
3         * callgraph.h (XNEW_ALLOC, XNEWVEC_ALLOC): New macros.
4         (push_allocated_ptr): New function.
5         (make_edge_list): Call push_allocated_ptr for heap allocs.
6         (make_mode): Ditto.
7         (make_edge): Ditto.
8         (section_type, comdat_group, next, group): Add new fields
9         to struct Section_id.
10         (make_section_id): Initialize new fields. Add new args.
11         (parse_callgraph_section_contents): Add args.
12         (free_edge_chain): Delete.
13         * function_reordering_plugin.c (claim_file_hook): Call
14         push_allocated_ptr. Fix call to parse_callgraph_section_contents.
15         (all_symbols_read_hook): Call push_allocated_ptr. Remove calls to free.
16         * callgraph.c (mm_node): New struct.
17         (push_allocated_ptr): New function.
18         (canonicalize_function_name): New function.
19         (parse_callgraph_section_contents): Add args. Call
20         canonicalize_function_name.
21         (num_sections): New global.
22         (NUM_SECTION_TYPES): New constant.
23         (section_types): New constant.
24         (section_priority): New constant.
25         (map_section_name_to_index): Remove sections. Replace sections with
26         section_types. Call canonicalize_function_name. Chain all created
27         sections. Check for comdat sections and group them together.
28         (write_out_node): Output sections into section_start and section_end
29         chain. Handle comdats.
30         (get_layout): Make new chains for each section type. Output each chain
31         one by one into handles and shndx. Output all the sections created.
32         (cleanup): Free all heap allocated objects tracked by mm_node_chain.
33         
34 2012-03-18  Sriraman Tallam  <tmsriram@google.com>
36         * function_reordering_plugin.c (register_claim_file_hook): New function
37         pointer.
38         (register_all_symbols_read_hook): Ditto.
39         (no_op): New global.
40         (out_file): Make static.
41         (is_api_exist): Make static.
42         (process_option): New function.
43         (onload): Return if no_op is set. Do not register handlers until
44         necessary.
45         (get_load): Check if out_file is NULL before opening & closing the
46         file.
47         * callgraph.c (find_pettis_hansen_function_layout):
48         (get_layout): Dump only when fp is not NULL.
50 2012-02-25  Sriraman Tallam  <tmsriram@google.com>
52         * function_reordering_plugin.c: Check for presence of elf.h.
53         Otherwise, redefine the elf macros used.        
55 2012-02-02  Sriraman Tallam  <tmsriram@google.com>
57         * callgraph.c (parse_callgraph_section_contents): Remove increment
58         to num_real_nodes.
59         (set_node_type): Increment num_real_nodes.
61 2011-09-27  Sriraman Tallam  <tmsriram@google.com>      
63         * config.h.in: New file.
64         * callgraph.c: Ditto.
65         * callgraph.h: Ditto.
66         * configure: Ditto.
67         * Makefile.in: Ditto.
68         * configure.ac: Ditto.
69         * function_reordering_plugin.c: Ditto.
70         * aclocal.m4: Ditto.
71         * Makefile.def: Ditto.