- 06 Aug, 2010 4 commits
-
-
From-SVN: r162931
David Daney committed -
From-SVN: r162930
David Daney committed -
* doc/invoke.texi (RS/6000 and PowerPC Options): Rewrite -mrelocatable and -mrelocatable-lib description. From-SVN: r162929
Alan Modra committed -
From-SVN: r162928
GCC Administrator committed
-
- 05 Aug, 2010 25 commits
-
-
* postreload.c (reload_cse_simplify_operands): Use SET_REGNO_RAW instead of SET_REGNO. * caller-save.c (reg_save_code): Use SET_REGNO_RAW instead of SET_REGNO. * ira.c (setup_prohibited_mode_move_regs): Use SET_REGNO_RAW instead of SET_REGNO. * rtl.h (SET_REGNO_RAW): New macro. From-SVN: r162924
Bernd Schmidt committed -
* rtlanal.c (nonzero_bits1): Use unsigned HOST_WIDE_INT in all mask computations. Fix formatting issues. (num_sign_bit_copies1): Likewise. (canonicalize_condition): Likewise. From-SVN: r162923
Eric Botcazou committed -
* toplev.h (ctz_hwi, clz_hwi, ffs_hwi): New. (floor_log2): Use clz_hwi. (exact_log2): Use ctz_hwi. * toplev.c (ctz_hwi, clz_hwi, ffs_hwi): New. * builtins.c (fold_builtin_bitop): Use them. * simplify-rtx.c (simplify_const_unary_operation): Likewise. * combine.c (get_pos_from_mask): Use ctz_hwi. * double-int.c (double_int_ctz): Likewise. * explow.c (force_reg): Likewise. * tree.h (SET_DECL_OFFSET_ALIGN): Use ffs_hwi. From-SVN: r162920
Richard Henderson committed -
PR target/45189 Fix unwind for i386 stack re-alignment. From-SVN: r162919
Richard Henderson committed -
2010-08-05 Richard Guenther <rguenther@suse.de> * expr.c (store_expr): Use emit_block_move only if both source and target are MEMs. Use store_bit_field if only the target is a MEM. From-SVN: r162918
Richard Guenther committed -
PR 45189 Unbreak ia64 build after last dwarf2out.c change. From-SVN: r162917
Richard Henderson committed -
* gcov.c (flag_display_progress): New static variable. (main): Display progress info on standard output if requested. (options): Add -d/--display-progress. (print_usage): Print them. (process_args): Handle them. * doc/gcov.texi: Document them. From-SVN: r162916
Nicolas Setton committed -
* lto-plugin.c: Include <hashtab.h> (sym_aux): Add next_conflict field to save conflict chains. (plugin_file_info): Add conflicts symtab. (parse_table_entry): Initialize aux->next_conflict. (process_symtab): Increment found. (dump_symtab): Add. (finish_conflict_resolution): Add. (free_symtab): Add. (write_resolution): Remove symbols loop and move into dump_symtab. Call dump_symtab for main symbol and conflicts table. Call free_symtab to free conflicts table. (SWAP): Add. (eq_sym): Add. (hash_sym): Add. (symbol_strength): Add. (resolve_conflicts): Add. (claim_file_handler): Add n variable. Check return value of process_symtab. Call resolve_conflicts. From-SVN: r162915
Andi Kleen committed -
2010-08-05 Martin Jambor <mjambor@suse.cz> PR testsuite/42855 * testsuite/gcc.dg/tree-ssa/pr42585.c: Skip dump scan on powerpc and arm. From-SVN: r162913
Martin Jambor committed -
2010-08-05 Martin Jambor <mjambor@suse.cz> * ipa-cp.c (ipcp_discover_new_direct_edges): New function. (ipcp_insert_stage): Redirect only edges not flagged with indirect_inlining_edge. Call ipcp_discover_new_direct_edges for all discovered constants. * testsuite/gcc.dg/ipa/ipcp-ii-1.c: New test. * testsuite/g++.dg/ipa/ipcp-ivi-1.C: Likewise. From-SVN: r162912
Martin Jambor committed -
2010-08-05 Martin Jambor <mjambor@suse.cz> * ipa-prop.h (enum ipa_lattice_type): Changed comments. (struct ipa_param_descriptor): New fields types and cannot_devirtualize. (ipa_param_cannot_devirtualize_p): New function. (ipa_param_types_vec_empty): Likewise. (ipa_make_edge_direct_to_target): Declare. * ipa-cp.c: Fixed first stage driver name in initial comment, described devirtualization there too. (ipcp_analyze_node): Call ipa_analyze_params_uses. (ipcp_print_all_lattices): Print devirtualization info. (ipa_set_param_cannot_devirtualize): New function. (ipcp_initialize_node_lattices): Set cannot_devirtualize when setting lattice to BOTTOM. (ipcp_init_stage): Merged into... (ipcp_generate_summary): ...its caller. (ipcp_change_tops_to_bottom): Also process type lists. (ipcp_add_param_type): New function. (ipcp_copy_types): Likewise. (ipcp_propagate_types): Likewise. (ipcp_propagate_stage): Also propagate types. (ipcp_need_redirect_p): Variable jump_func moved to its scope block. Also return true if propagated types require it. (ipcp_update_callgraph): Dump redirection info. (ipcp_process_devirtualization_opportunities): New function. (ipcp_const_param_count): Include known type information. (ipcp_insert_stage): Call ipcp_process_devirtualization_opportunities on new node. Fixed formatting. * ipa-prop.c (make_edge_direct_to_target): Renamed to ipa_make_edge_direct_to_target and changed all callers. Made externally visible. (ipa_node_duplication_hook): Duplicate types vector. * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Also try to redirect outgoing calls for which we can't get a decl from the statement. Check that we can get a decl from the call statement. * ipa-inline.c (inline_indirect_intraprocedural_analysis): Call ipa_analyze_params_uses only when ipa-cp is disabled. * tree-inline.c (get_indirect_callee_fndecl): Removed. (expand_call_inline): Do not call get_indirect_callee_fndecl. * params.def (PARAM_DEVIRT_TYPE_LIST_SIZE): New parameter. * Makefile.in (ipa-cp.o): Add gimple.h to dependencies. * testsuite/g++.dg/ipa/devirt-1.C: New test. * testsuite/g++.dg/ipa/devirt-2.C: Likewise. * testsuite/g++.dg/ipa/devirt-3.C: Likewise. * testsuite/g++.dg/ipa/devirt-4.C: Likewise. * testsuite/g++.dg/ipa/devirt-5.C: Likewise. * testsuite/gcc.dg/ipa/iinline-3.c: Likewise. From-SVN: r162911
Martin Jambor committed -
* expmed.c (expand_mult_const) <case alg_shift>: Expand shift into temporary. Emit move from temporary to accum, so REG_EQUAL note will be attached to this insn in correct mode. From-SVN: r162910
Uros Bizjak committed -
2010-08-05 Robert Dewar <dewar@adacore.com> * gnat1drv.adb: Minor reformatting. 2010-08-05 Ed Schonberg <schonberg@adacore.com> * sem.adb (Do_Unit_And_Dependents): If some parent unit is an instantiation, process its body before the spec of the main unit, because it may contain subprograms invoked in the spec of main. * einfo.ads: Add documention of delayed freeze. 2010-08-05 Vincent Celier <celier@adacore.com> * prj-nmsc.adb (Process_Linker): Take into account new values for attribute Response_File_Format. * prj.ads (Response_File_Format): New enumeration values GCC_GNU, GCC_Object_List and GCC_Option_List. 2010-08-05 Ed Schonberg <schonberg@adacore.com> * exp_ch4.adb (Expand_N_Selected_Component): Do not constant-fold a selected component that denotes a discriminant if it is the discriminant of a component of an unconstrained record type. From-SVN: r162908
Arnaud Charlet committed -
2010-08-05 Ed Schonberg <schonberg@adacore.com> * exp_util.adb (Insert_Actions): If the action appears within a conditional expression that is already analyzed, insert action further out. 2010-08-05 Robert Dewar <dewar@adacore.com> * exp_ch4.adb: Minor reformatting. From-SVN: r162907
Arnaud Charlet committed -
2010-08-05 Thomas Quinot <quinot@adacore.com> * exp_ch4.adb: Minor reformatting * gnat1drv.adb: Minor reformatting. Minor code reorganization (use Nkind_In). 2010-08-05 Ed Schonberg <schonberg@adacore.com> * exp_util.ads, exp_util.adb (Needs_Constant_Address): New predicate to determine whether the expression in an address clause for an initialized object must be constant. Code moved from freeze.adb. (Remove_Side_Effects): When the temporary is initialized with a reference, indicate that the temporary is a constant as done in all other cases. * freeze.adb (Check_Address_Clause): use Needs_Constant_Address. * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case 'Address): If object does not need a constant address, remove side effects from address expression, so it is elaborated at the point of the address clause and not at the freeze point of the object, so that elaboration order is respected. 2010-08-05 Vincent Celier <celier@adacore.com> * prj.adb (Is_Compilable): Return False for header files of non Ada languages. 2010-08-05 Emmanuel Briot <briot@adacore.com> * prj-nmsc.adb: The Missing_Source_Files flag also considers a missing exec directory as a warning rather than an error. From-SVN: r162906
Arnaud Charlet committed -
2010-08-05 Thomas Quinot <quinot@adacore.com> * sem_ch6.adb, gnat1drv.adb, exp_ch6.adb, sem_eval.adb: Minor reformatting. 2010-08-05 Steve Baird <baird@adacore.com> * exp_util.adb (Remove_Side_Effects): An access value which designates a volatile object of a nonvolatile type is prohibited. Do not call Make_Reference to construct a reference to such an object. From-SVN: r162905
Arnaud Charlet committed -
2010-08-05 Robert Dewar <dewar@adacore.com> * a-suezse.adb, a-suezse.ads, a-suezen.adb, a-suezen.ads: Removed. * a-suewse.adb, a-suewse.ads, a-suesen.adb, a-suesen.ads, a-suewen.adb, a-suewen.ads: New files. * Makefile.rtl, impunit.adb: Update implementation of Ada 2012 string encoding packages. * sem_elab.adb: Minor reformatting. 2010-08-05 Arnaud Charlet <charlet@adacore.com> * sem_ch8.adb (Use_One_Type): Protect against empty scopes. * exp_util.adb (Component_May_Be_Bit_Aligned): Prevent assert failure in case of null Comp. From-SVN: r162904
Arnaud Charlet committed -
2010-08-05 Robert Dewar <dewar@adacore.com> * errout.adb, a-suewen.adb, a-suezen.adb: Minor reformatting. From-SVN: r162903
Robert Dewar committed -
sem_ch4.adb (Analyze_Allocator): Flag errors on allocators of a nested access type whose designated type has... 2010-08-05 Gary Dismukes <dismukes@adacore.com> * sem_ch4.adb (Analyze_Allocator): Flag errors on allocators of a nested access type whose designated type has tasks or is a protected object when the restrictions No_Task_Hierarchy or No_Local_Protected_Objects apply. Add ??? comment. * sem_ch9.adb (Analyze_Protected_Type): Give a warning when a protected type is not a library-level type and No_Local_Protected_Objects applies. (Analyze_Task_Type): Give a warning when a task type is not a library-level type and No_Task_Hierarchy applies. From-SVN: r162902
Gary Dismukes committed -
* sem.adb: Minor reformatting * sem_ch4.adb (Analyze_Reference): Disable error message in CodePeer mode, not useful. From-SVN: r162901
Arnaud Charlet committed -
2010-08-05 Paolo Carlini <paolo.carlini@oracle.com> * include/tr1_impl/utility (begin, end): Remove per GB 85. * testsuite/20_util/pair/range_access.cc: Remove. * include/std/functional (function<>::function()): Remove explicit, per JP 3. From-SVN: r162900
Paolo Carlini committed -
* config/i386/i386.c (ix86_decompose_address): Check for SI_REG using REGNO of base_reg directly. From-SVN: r162899
Uros Bizjak committed -
2010-08-05 Paolo Carlini <paolo.carlini@oracle.com> * include/bits/move.h (forward): Update to N3092. (identity): Remove (US 92 is NAD). * include/debug/set.h: Fix move constructor to simply use move. * include/debug/unordered_map: Likewise. * include/debug/multiset.h: Likewise. * include/debug/vector: Likewise. * include/debug/unordered_set: Likewise. * include/debug/deque: Likewise. * include/debug/map.h: Likewise. * include/debug/string: Likewise. * include/debug/list: Likewise. * include/debug/multimap.h: Likewise. * include/profile/set.h: Likewise. * include/profile/unordered_map: Likewise. * include/profile/multiset.h: Likewise. * include/profile/unordered_set: Likewise. * include/profile/vector: Likewise. * include/profile/deque: Likewise. * include/profile/map.h: Likewise. * include/profile/list: Likewise. * include/profile/multimap.h: Likewise. * include/ext/vstring.h: Likewise. * include/bits/stl_list.h: Likewise. * include/bits/stl_map.h: Likewise. * include/bits/stl_set.h: Likewise. * include/bits/forward_list.h: Likewise. * include/bits/stl_multimap.h: Likewise. * include/bits/unordered_map.h: Likewise. * include/bits/stl_vector.h: Likewise. * include/bits/stl_deque.h: Likewise. * include/bits/stl_multiset.h: Likewise. * include/bits/unordered_set.h: Likewise. * include/bits/stl_bvector.h: Likewise. * testsuite/20_util/identity/value.cc: Remove * testsuite/20_util/identity/requirements/typedefs.cc: Likewise. * testsuite/20_util/identity/requirements/explicit_instantiation.cc: Likewise. From-SVN: r162898
Paolo Carlini committed -
PR tree-optimization/45144 * tree-sra.c (type_consists_of_records_p): Return false if the record contains bit-field. testsuite/ PR tree-optimization/45144 * gcc.dg/tree-ssa/pr45144.c: New test. From-SVN: r162897
Jie Zhang committed -
From-SVN: r162896
GCC Administrator committed
-
- 04 Aug, 2010 11 commits
-
-
By exporting padding[012] and to_allocate from ix86_compute_frame_layout, we encouraged re-computation of the size of the local frame. All of the truly relevant offsets are now exported directly, and should be compared against directly. From-SVN: r162891
Richard Henderson committed -
Union the undo of the frame pointer between the pop and move code paths. Combine the local frame stack deallocation with the one for ix86_static_chain_on_stack, if possible. From-SVN: r162890
Richard Henderson committed -
We had been relying on some extremely fragile code within dwarf2out in order to guess what to do with aligned stack frames, which broke when we decided to perform the stores to the aligned stack frame via EBP instead of ESP. Instead, emit the appropriate unwinding instructions from the backend. This requires adding a new reg-note in order to describe a register save at an arbitrary address. From-SVN: r162889
Richard Henderson committed -
Record register save offsets in ix86_frame. Move SP/FP offsets into the global state; update them everywhere we currently handle CFA offsets. Use that global state to choose base registers and offsets for the register saves and restores. There is a bug fix contained herein, whereby r11 could be clobbered along an indirect sibcall path when the stack frame is very large (>2GB). The emit_restore_{sse_,}regs_using_mov functions didn't handle this case, but pro_epilogue_adjust_stack does. From-SVN: r162888
Richard Henderson committed -
The definition in cygming.h differed from the definition in i386.h in that the predicate was true for 32-bit when outside of any function. Which (a) seems wrong and (b) never matters because the predicate is only tested in terms of REGPARM and RED_ZONE, both of which are tied to functions. From-SVN: r162887
Richard Henderson committed -
Emit the entire required hook code sequence via ASM_BYTE; emit unwind info onto a blockage insn. Remove the vswapmov pattern. Fix indentation in several places. From-SVN: r162886
Richard Henderson committed -
From-SVN: r162885
Richard Henderson committed -
From-SVN: r162884
Richard Henderson committed -
Trying to reduce the amount of code compiled when dwarf2 debug info and/or dwarf2 unwind info are disabled results in a twisted mess. Don't bother -- just build it all even if it's not going to be used. From-SVN: r162883
Richard Henderson committed -
PR debug/45171 * dwarf2out.c (gen_typedef_die): Don't re-generate the die of an is_naming_typedef_decl. From-SVN: r162882
Richard Henderson committed -
PR rtl-optimization/45162 * df-problems.c (df_word_lr_bb_local_compute): Ignore DEBUG_INSNs. * dce.c (word_dce_process_block): Likewise. From-SVN: r162881
Bernd Schmidt committed
-