- 05 Sep, 2007 32 commits
-
-
2007-09-05 Samuel Thibault <samuel.thibault@ens-lyon.org> * configure.host(gnu*): Set use_libgcj_bc to yes. From-SVN: r128149
Samuel Thibault committed -
* gcc.dg/tree-ssa/builtin-expect-1.c: New test. * gcc.dg/tree-ssa/builtin-expect-2.c: New test. * gcc.dg/tree-ssa/builtin-expect-3.c: New test. * gcc.dg/tree-ssa/builtin-expect-4.c: New test. * gcc.dg/tree-ssa/builtin-expect-5.c: New test. From-SVN: r128148
Adam Nemet committed -
PR tree-optimization/21513 * builtins.c (build_builtin_expect_predicate): New function. (fold_builtin_expect): Add argument for expected value. Distribute __builtin_expect over short-circuiting operations. Fold nested builtin_expects. (fold_builtin_2): Adjust call to fold_builtin_expect. From-SVN: r128147
Adam Nemet committed -
PR web/32965 PR tree-optimization/13756 * doc/invoke.texi (Options That Control Optimization): Document -ftree-dse. From-SVN: r128146
Rask Ingemann Lambertsen committed -
/cp 2007-09-03 Paolo Carlini <pcarlini@suse.de> PR c++/30302 * semantics.c (finish_id_expression): Check that path != NULL_TREE before using TYPE_BINFO on it. * class.c (finish_struct_anon): Deal correctly with anonymous structs (vs unions, as GNU extension) in error messages. /testsuite 2007-09-03 Paolo Carlini <pcarlini@suse.de> PR c++/30302 * g++.dg/ext/anon-struct5.C: New. From-SVN: r128145
Paolo Carlini committed -
From-SVN: r128144
Jason Merrill committed -
2007-09-05 Pat Haugen <pthaugen@us.ibm.com> * MAINTAINERS (Write After Approval): Add myself. From-SVN: r128143
Pat Haugen committed -
* gcc/config/i386/cpuid.h: New file. * gcc/config/i386/driver-i386.c: Include cpuid.h. (describe_cache): Shrink size and line strings to 100 bytes. (detect_caches_amd): Return "" for unsupported max_ext_level. Use __cpuid function. (detect_caches_intel): Return "" for unsupported max_level. Use __cpuid function. (host_detect_local_cpu): Change feature flag variables to unsigned int. Initialize only extended feature flag variables. Use __get_cpuid_max to determine max supported cpuid level. Use __cpuid function to determine supported features. Fix calculation of family id. Remove is_amd and check signature directly. Check for Geode signature. Handle family 4 id. [PROCESSOR_GENERIC32]: New default for unknown family id. Move cpu discovery code to other part of the function. [PROCESSOR_PENTIUM, PROCESSOR_K6, PROCESSOR_ATHLON]: Do not tune for sub-architecture. [PROCESSOR_PENTIUMPRO]: Simplify cpu discovery code. [PROCESSOR_K8]: Add k8-sse3 architecture. [PROCESSOR_GENERIC64]: Remove. * gcc/config/i386/x-i386 (driver-i386.o): Depend on cpuid.h. * gcc/config/i386/crtfastmath.c: Include cpuid.h. Use __get_cpuid to check for SSE and FXSAVE support. * gcc/config/i386/t-crtfm (crtfastmath.o): Depend on cpuid.h. Add -minline-all-stringops. * gcc/config.gcc (i[34567]86-*-*): Add cpuid.h to extra_headers. (x86_64-*-*): Ditto. testsuite/ChangeLog: * gcc.dg/i386-cpuid.h: Remove. * gcc.target/i386/mmx-check.h: Include cpuid.h. Use __get_cpuid. * gcc.target/i386/sse-check.h: Ditto. * gcc.target/i386/sse2-check.h: Ditto. * gcc.target/i386/sse3-check.h: Ditto. * gcc.target/i386/ssse3-check.h: Ditto. * gcc.target/i386/sse4_1-check.h: Ditto. * gcc.target/i386/sse4_2-check.h: Ditto. * gcc.target/i386/sse4a-check.h: Ditto. * gcc.dg/torture/pr16104-1.c: Ditto. * gcc.target/i386/mmx-4.c: Do not use NOINLINE. * gcc.target/i386/sse-6.c: Ditto. * gcc.target/i386/sse-7.c: Ditto. * g++.dg/other/i386-1.C: Include cpuid.h. (main): New function. Use __get_cpuid to check target fetaures. libgomp/ChangeLog: * testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets. (main): Use __get_cpuid to get i386 target fetaures. * testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets. (main): Use __get_cpuid to get x86_64 target fetaures. From-SVN: r128141
Uros Bizjak committed -
* config/bfin/linux-unwind.h: New file. * config/bfin/linux.h (MD_UNWIND_SUPPORT): Define. * config/bfin/uclinux.h (MD_UNWIND_SUPPORT): Define. From-SVN: r128140
Jie Zhang committed -
2007-09-05 Laurynas Biveinis <laurynas.biveinis@gmail.com> * Makefile.in (stmt.o): Add alloc-pool.h dependency. * stmt.c: Include alloc-pool.h. (struct case_node): Remove GTY marker. (add_case_node): New parameter case_node_pool. Use it for allocation of r. (expand_case): New allocation pool case_node_pool. Initialize it, pass to add_case_node and free it. From-SVN: r128139
Laurynas Biveinis committed -
2007-09-05 Paul Thomas <pault@gcc.gnu.org> * gfortran.dg/char_length_10.f90: Correct typo. From-SVN: r128136
Paul Thomas committed -
2007-09-05 Sandra Loosemore <sandra@codesourcery.com> David Ung <davidu@mips.com> Nigel Stephens <nigel@mips.com> gcc/testsuite/ * gcc.c-torture/compile/mipscop-1.c: Add nomips16 attributes. * gcc.c-torture/compile/mipscop-2.c: Likewise. * gcc.c-torture/compile/mipscop-3.c: Likewise. * gcc.c-torture/compile/mipscop-4.c: Likewise. * gcc.dg/torture/mips-hilo-1.c: Likewise. * gcc.dg/torture/mips-hilo-2.c: Likewise. * gcc.dg/torture/pr19683-1.c: Likewise. * gcc.target/mips/madd-3.c: Likewise. * gcc.target/mips/maddu-3.c: Likewise. * gcc.target/mips/msub-3.c: Likewise. * gcc.target/mips/msubu-3.c: Likewise. * gcc.target/mips/asm-1.c: Likewise. * gcc.target/mips/branch-1.c: Likewise. * gcc.target/mips/ins-1.c: Likewise. * gcc.target/mips/near-far-3.c: Likewise. * gcc.target/mips/near-far-4.c: Likewise. * gcc.target/mips/smartmips-lwxs.c: Likewise. * gcc.target/mips/smartmips-ror-1.c: Likewise. * gcc.target/mips/smartmips-ror-2.c: Likewise. * gcc.target/mips/smartmips-ror-3.c: Likewise. * gcc.target/mips/smartmips-ror-4.c: Likewise. * gcc.target/mips/dspr2-MULT.c: Likewise. * gcc.target/mips/dspr2-MULTU.c: Likewise. * gcc.target/mips/mips32-dsp-run.c: Likewise. * gcc.target/mips/mips32-dspr2-type.c: Likewise. * gcc.target/mips/code-readable-1.c: Add mips16 attributes. * gcc.target/mips/code-readable-2.c: Likewise. * gcc.target/mips/code-readable-3.c: Likewise. Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Nigel Stephens <nigel@mips.com> From-SVN: r128135
Sandra Loosemore committed -
Add mips16/nomips16 function attributes and -mflip-mips16 option for testing mixed-mode compilation. 2007-09-05 Sandra Loosemore <sandra@codesourcery.com> David Ung <davidu@mips.com> Nigel Stephens <nigel@mips.com> Add mips16/nomips16 function attributes and -mflip-mips16 option for testing mixed-mode compilation. gcc/ * config/mips/mips.opt (mflip-mips16): New. * config/mips/mips.h (SYMBOL_FLAG_MIPS16_FUNC): Define. (SYMBOL_FLAG_MIPS16_FUNC_P): Define. * config/mips/mips.c (mips_base_target_flags): New. (mips_base_mips16): New. (mips_base_schedule_insns): New. (mips_base_reorder_blocks_and_partition): New. (mips_base_align_loops): New. (mips_base_align_jumps): New. (mips_base_align_functions): New. (mips16_flipper): New. (mips_attribute_table): Add "mips16" and "nomips16" entries. (TARGET_SET_CURRENT_FUNCTION): Define. (mips_mips16_type_p, mips_nomips16_type_p): New. (mips_comp_type_attributes): Check mips16/nomips16 attributes. (mips_function_ok_for_sibcall): Make it deal with functions with mips16 attributes. (mips_init_split_addresses): New, split out from override_options. (mips_init_relocs): New, split out from override_options. (was_mips16_p): New. (mips_set_mips16_mode): New, split out from override_options. (mips_set_current_function): New. (override_options): Add sorry for unsupported mips16/pic combination. Remove error for mips16/dsp combination. Save base option settings. (mips_file_start): Move mips16 mode setting output from here.... (mips_output_function_prologue): ....to here. (mips_output_mi_thunk): Check for mips16 function. (build_mips16_function_stub): Don't set .mips16 here. (build_mips16_call_stub): Likewise. (mips_expand_builtin): Error in mips16 mode. (mips_use_mips16_mode_p): New. (mips_encode_section_info): Check for mips16 function, and set SYMBOL_REF_FLAGS accordingly. * doc/extend.texi (Function Attributes): Document new mips16/nomips16 attributes. * doc/invoke.texi (Option Summary): Add -mflip-mips16. (MIPS Options): Document -mflip-mips16. gcc/testsuite/ * gcc.target/mips/mips16-attributes.c: New. Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Nigel Stephens <nigel@mips.com> From-SVN: r128134
Sandra Loosemore committed -
2007-09-05 Sandra Loosemore <sandra@codesourcery.com> gcc/ * config/mips/mips.c (mips_legitimize_tls_address): Call sorry if we encounter TLS address in MIPS16 mode. (mips_legitimize_const_move): Check cannot_force_const_mem for the (const (plus symbol offset)) case; this forces invalid TLS address in MIPS16 mode to be caught by the above call to sorry. (override_options): Don't reset targetm.have_tls in MIPS16 mode, because that now enables emutls, which is not ABI compatible with native TLS in non-MIPS16 mode. From-SVN: r128133
Sandra Loosemore committed -
2007-09-05 Sandra Loosemore <sandra@codesourcery.com> gcc/ Add target hook invoked when cfun changes. * doc/tm.texi (TARGET_SET_CURRENT_FUNCTION): Document. * target.h (struct gcc_target): Add set_current_function. * target-def.h (TARGET_SET_CURRENT_FUNCTION): Define. (TARGET_INITIALIZER): Add initializer for set_current_function. * tree.h (push_struct_function): New. * tree-inline.h (push_cfun, pop_cfun): Move declarations to... * function.h: Here. (set_cfun): Declare. * tree-inline.c (cfun_stack, push_cfun, pop_cfun): Moved to... * function.c: Here. (push_function_context_to): Use allocate_struct_function to create null context, not init_dummy_function_start. Use set_cfun. (pop_function_context_from): Use set_cfun. (in_dummy_function): New. (invoke_set_current_function_hook): New. (set_cfun): New. (push_cfun, pop_cfun): Use set_cfun. (push_struct_function): New. (allocate_struct_function): Call invoke_set_current_function_hook before returning. (prepare_function_start): Don't set cfun here. Remove unused argument; fix all callers. (init_dummy_function_start): Fiddle with in_dummy_function. Call push_struct_function. (init_function_start): Set cfun here. (expand_dummy_function_end): Fiddle with in_dummy_function. Pop cfun. * omp-low.c (create_omp_child_function): Use push_struct_function and pop_cfun to save/restore state. (expand_omp_parallel): Remove unused saved_cfun variable. * cgraphunit.c (ipa_passes): Use set_cfun. * gimple-low.c (record_vars_into): Use push_cfun/pop_cfun here. * dwarf2out.c (dwarf2out_abstract_function): Likewise. * matrix-reorg.c (transform_allocation_sites): Likewise. (matrix_reorg): Use set_cfun. * gimplify.c (gimplify_function_tree): Use push_cfun/pop_cfun here. * tree-optimize.c (tree_rest_of_compilation): Remove one redundant assignment to cfun; use set_cfun for the other. * tree-cfg.c (move_sese_region_to_fn): Use set_cfun. (dump_function_to_file): Use push_cfun/pop_cfun here. * c-decl.c (finish_function): Use set_cfun. gcc/ada/ * trans.c (Compilation_unit_to_gnu): Use set_cfun. * utils.c (end_subprog_body): Likewise. gcc/cp/ * decl.c (finish_function): Use set_cfun. * method.c (use_thunk): Likewise. gcc/fortran/ * trans-decl.c (build_entry_thunks): Use set_cfun. (gfc_generate_function_code): Likewise. gcc/java/ * decl.c (finish_method): Use set_cfun. gcc/treelang/ * treetree.c (tree_code_create_function_wrapup): Use set_cfun. From-SVN: r128132
Sandra Loosemore committed -
configure.ac (--enable-stage1-checking): If neither --enable-checking nor --disable-checking is provided also turn on... 2007-09-05 Richard Guenther <rguenther@suse.de> * configure.ac (--enable-stage1-checking): If neither --enable-checking nor --disable-checking is provided also turn on yes and types checking for stage1. * configure: Re-generate. From-SVN: r128131
Richard Guenther committed -
2007-09-05 Paul Thomas <pault@gcc.gnu.org> PR fortran/31564 * primary.c (gfc_match_rvalue): Make expressions that refer to derived type parameters that have array references into variable expressions. Remove references to use association from the symbol. PR fortran/33241 * decl.c (add_init_expr_to_sym): Provide assumed character length parameters with the length of the initialization expression, if a constant, or that of the first element of an array. 2007-09-05 Paul Thomas <pault@gcc.gnu.org> PR fortran/31564 * gfortran.dg/derived_comp_array_ref_2.f90: New test. PR fortran/33241 * gfortran.dg/char_length_10.f90: New test. From-SVN: r128130
Paul Thomas committed -
regrename.c (rerename_optimize): Use deferred rescanning and insert explicit calls to rescan insns when changed. 2007-09-05 Kenneth Zadeck <zadeck@naturalbridge.com> * regrename.c (rerename_optimize): Use deferred rescanning and insert explicit calls to rescan insns when changed. From-SVN: r128129
Kenneth Zadeck committed -
* optabs.c (libfunc_entry): Change optab to integer. (hash_libfunc, convert_optab_libfunc, optab_libfunc, set_optab_libfunc, set_conv_libfunc): Use optable indexes instead of pointers for hashing. From-SVN: r128128
Jan Hubicka committed -
* cp/sematics.c (expand_body): Remove unnecesary import_export_decl call, DECL_EXTERNAL checks and current_function_decl saving. From-SVN: r128127
Jan Hubicka committed -
* regrename.c (pass_regrename, pass_cprop_hardreg): Add RTL sharing verifier. * fwprop.c (pass_rtl_fwprop, pass_rtl_fwprop_add): Likewise. * see.c (pass_see): Likewise. * tracer.c (pass_tracer): Likewise. * postreload-gcse.c (pass_gcse2): Likewise. * postreload.c (pass_postreload_cse): Likewise. * mode-switching.c (pass_mode_switching): Likewise. * modulo-sched.c (pass_sms): Likewise. * cse.c (cse_insn): Likewise. * web.c (pass_web): Likweise. * combine-stack-adj.c (pass_stack_adjustments): Likewise. * dce.c (pass_ud_rtl_dce, pass_fast_rtl_dce): Likewise. * loop-init.c (pass_rtl_loop_init): Likewise. (pass_rtl_loop_done, pass_rtl_move_loop_, pass_rtl_unswitch, pass_rtl_unroll_and, pass_rtl_doloop): Likewise. * global.c (pass_global_alloc): Likewise. * ifcvt.c (pass_rtl_ifcvt, pass_if_after_combine, pass_if_after_reload): Likewise. * reload.c (pass_peephole2, pass_split_for_shoren_branches): Likewise. * dse.c (pass_rtl_dse1, pass_rtl_dse2): Likewise. * regmove.c (pass_regmove): Likewise. * function.c (pass_thread_prologugues_epilogues): Likewise. * gcse.c (pass_gcse): Likewise. * rtl-factoring.c (pass_rtl_seqabstr): Likewise. * lower-subreg.c (pass_lower_subreg2): Likewise. * bt-load.c (pass_branch_target_load): Likewise. * emit-rtl.c (pass_unshare_all_rtl): Likewise. * cfgcleanup.c (pass_jump, pass_jump2): Likewise. * combine.c (pass_combine): Likewise. * bb-reorder.c (pass_duplicate_comp, pass_reorder_blocks): Likewise. (pass_partition_blocks): Likewise. * var-tracking.c (pass_variable_track): Likewise. * reg-stack.c (pass_stack_regs_run): Likewise. * sched-rgn.c (pass_sched, pass_sched2): Likewise. * passes.c (pass_postreload): Likewise. (execute_function_todo): Add TODO_verify_rtl_sharing handling code. * tree-pass.h (TODO_verify_rtl_sharing): New. (TODO_update_ssa, TODO_update_ssa_no_phi, TODO_update_ssa_full_phi, TODO_update_ssa_only_virtuals, TODO_remove_unused_locals, TODO_set_props, TODO_df_finish, TODO_df_verify, TODO_mark_first_instance, TODO_rebuild_alias): Renumber. From-SVN: r128126
Jan Hubicka committed -
/cp 2007-09-05 Paolo Carlini <pcarlini@suse.de> PR c++/29731 (again) * parser.c (cp_parser_primary_expression): Return error_mark_node when a statement-expression is found in a template-argument list. /testsuite 2007-09-05 Paolo Carlini <pcarlini@suse.de> PR c++/29731 * g++.dg/parse/template24.C: New. From-SVN: r128124
Paolo Carlini committed -
libjava/ 2007-09-04 Matthias Klose <doko@ubuntu.com> * configure.ac: Do not pass --with-native-libdir to classpath. * configure: Regenerate. libjava/classpath/ 2007-09-04 Matthias Klose <doko@ubuntu.com> * configure.ac: Append libgcj soversion to nativeexeclibdir. * configure: Regenerate. From-SVN: r128121
Matthias Klose committed -
* fold-const.c (all_ones_mask_p, sign_bit_p, simple_operand_p, fold_real_zero_addition_p, reorder_operands_p, div_if_zero_remainder, fold_undefer_overflow_warnings, int_binop_types_match_p, fold_convert_const_int_from_int, fold_convert_const_int_from_real, fold_convert_const_int_from_fixed, fold_convert_const_real_from_real, fold_convert_const_real_from_fixed, fold_convert_const_fixed_from_fixed, fold_convert_const_fixed_from_int, fold_convert_const_fixed_from_real, maybe_lvalue_p, fold_checksum_tree, fold_check_failed, print_fold_checksum, debug_fold_checksum, multiple_of_p): Constify. * tree-flow-inline.h (get_lineno): Likewise. * tree-flow.h (get_lineno): Likewise. * tree-object-size.c (compute_object_offset, addr_object_size, alloc_object_size, pass_through_call): Likewise. * tree-pretty-print.c (op_symbol, print_call_name, print_struct_decl, do_niy): Likewise. * tree.h (fold_undefer_overflow_warnings, multiple_of_p, debug_fold_checksum): Likewise. From-SVN: r128120
Kaveh R. Ghazi committed -
re PR middle-end/33029 (libgcc2.c:1890: internal compiler error: in local_cprop_pass, at gcse.c:3236) PR middle-end/33029 * lower-subreg.c (resolve_clobber): If we remove a REG_LIBCALL note, remove the associated REG_RETVAL note. From-SVN: r128119
Steven Bosscher committed -
2007-09-04 Andrew Pinski <andrew_pinski@playstation.sony.com> * config.gcc (powerpc*-*-*): Install spu2vmx.h, vec_types.h, and si2vmx.h headers. * config/rs6000/spu2vmx.h: New header. * config/rs6000/si2vmx.h: New header. * config/rs6000/vec_types.h: New header. 2007-09-04 Andrew Pinski <andrew_pinski@playstation.sony.com> * g++.dg/other/spu2vmx-1.C: New test. From-SVN: r128118
Andrew Pinski committed -
From-SVN: r128117
Ben Elliston committed -
* config/rs6000/ppu_intrinsics.h (__ldarx): Use `Z' constraint, not `m' for *ptrp. (__stdcx): Make asm volatile. (__stwcx, __stdcx): Return only 0 or 1. From-SVN: r128116
Ben Elliston committed -
* except.c (initialize_handler_parm): Use fold_build_cleanup_point_expr. From-SVN: r128115
Jason Merrill committed -
re PR libfortran/33225 (Missing last digit in some formatted output (on 32bit targets), per kind write_float) 2007-03-04 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/33225 * io/write.c (stdbool.h): Add include. (sign_t): Move typedef to new file write_float.def. Include write_float.def. (extract_real): Delete. (calculate_sign): Delete. (calculate_exp): Delete. (calculate_G_format): Delete. (output_float): Delete. (write_float): Delete. * io/write_float.def (calculate_sign): Added. (output_float): Refactored to be independent of kind and added to this file for inclusion. (write_infnan): New function to write "Infinite" or "NaN" depending on flags passed, independent of kind. (CALCULATE_EXP): New macro to build kind specific functions. Use it. (OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it. (DTOA, DTOAL): Macros to implement "decimal to ascii". (WRITE_FLOAT): New macro for kind specific write_float functions. (write_float): Revised function to determine kind and use WRITE_FLOAT to implement kind specific output. From-SVN: r128114
Jerry DeLisle committed -
From-SVN: r128112
GCC Administrator committed -
2007-09-04 Jan Hubicka <jh@suse.cz> * tree-tailcall.c (eliminate_tail_call): Expect unrenamed return value. 2007-09-04 Richard Guenther <rguenther@suse.de> * tree-ssa-operands.c (add_virtual_operand): Only mark stores as has_volatile_ops if alias information is not available. From-SVN: r128109
Jan Hubicka committed
-
- 04 Sep, 2007 8 commits
-
-
PR rtl-optimization/32300 * see.c (see_copy_insn): New function. (see_def_extension_not_merged, see_merge_one_use_extension, see_merge_one_def_extension): Use it. Avoid changing PREV_INSN/NEXT_INSN chains directly, insted emit insns into sequences. Call df_insn_delete on temporary insns that won't be emitted into the insn stream. (rest_of_handle_see): Turn off DF_DEFER_INSN_RESCAN and run df_process_deferred_rescans () before run_fast_dce. From-SVN: r128108
Jakub Jelinek committed -
PR tree-optimization/33017 * tree-data-ref.c (split_constant_offset) <case SSA_NAME>: Don't recurse for pure or const function calls. * gcc.dg/pr33017.c: New test. From-SVN: r128107
Jakub Jelinek committed -
* config/rs6000/tramp.asm: Include config.h. Check __PIC__ or __pic__ macro instead of SHARED. From-SVN: r128106
Jakub Jelinek committed -
2007-09-04 Laurynas Biveinis <laurynas.biveinis@gmail.com> * c-format.c: Include alloc-pool.h. (check_format_info_main): New argument fwt_alloc. Use allocation pool instead of GC. Remove GC deallocation code. (check_format_arg): Create allocation pool, pass it to check_format_info_main and free it afterwards. * Makefile.in (c-format.o): Add alloc-pool.h dependency. From-SVN: r128105
Laurynas Biveinis committed -
2007-09-05 Matthias Klose <doko@ubuntu.com> PR libgcj/33278 * configure.ac: Robustify extraction of gcj version. * configure: Regenerate. From-SVN: r128104
Matthias Klose committed -
* config/rs6000/ppu_intrinsics.h (__protected_stream_count): Rename count macro arugment for clarity. (__protected_unlimited_stream_set): Pass UG=1 to __dcbt_TH1000. (__protected_stream_set): Likewise, pass 0. testsuite/ * gcc.target/powerpc/ppu-intrinsics.c: Add test cases for the __protected_stream family of macros. From-SVN: r128103
Ben Elliston committed -
PR c++/31419 * call.c (reference_binding): Don't look for user-defined conversions to the same type. From-SVN: r128102
Jason Merrill committed -
From-SVN: r128101
Jan Hubicka committed
-