aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2007-10-19re PR middle-end/33816 (gimplification before build_array_type re-set alias ↵Richard Guenther5-7/+81
set of arrays to zero) 2007-10-19 Richard Guenther <rguenther@suse.de> PR middle-end/33816 PR middle-end/32921 * stor-layout.c (layout_type): Assert that aggregates do not have their alias sets set. * alias.c (get_alias_set): Return alias set zero for incomplete types, return the alias set of the element for incomplete array types, but do not remember these. * gfortran.dg/pr32921.f: New testcase. From-SVN: r129491
2007-10-19re PR fortran/33544 ([4.3 only] Warning in TRANSFER intrinsic should be made ↵Jerry DeLisle2-0/+6
optional) 2007-10-19 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/33544 * gfortran.dg/transfer_check_1.f90: Adjust options. From-SVN: r129489
2007-10-19re PR fortran/33544 ([4.3 only] Warning in TRANSFER intrinsic should be made ↵Jerry DeLisle3-1/+11
optional) 2007-10-19 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/33544 * simplify.c (gfc_simplify_transfer): Only warn for short transfer when -Wsurprising is given. * invoke.texi: Document revised behavior. From-SVN: r129488
2007-10-19revert: re PR tree-optimization/32921 (Revision 126326 causes 12% slowdown)Richard Guenther4-50/+18
2007-10-19 Richard Guenther <rguenther@suse.de> Revert 2007-10-19 Richard Guenther <rguenther@suse.de> PR middle-end/32921 * tree.c (build_array_type): Do not re-layout unbound array types. * gfortran.dg/pr32921.f: New testcase. From-SVN: r129487
2007-10-1920071018-1.c: New testcase.Richard Guenther2-0/+35
2007-10-19 Richard Guenther <rguenther@suse.de> * gcc.c-torture/execute/20071018-1.c: New testcase. From-SVN: r129485
2007-10-19re PR tree-optimization/32921 (Revision 126326 causes 12% slowdown)Richard Guenther4-1/+61
2007-10-19 Richard Guenther <rguenther@suse.de> PR middle-end/32921 * tree.c (build_array_type): Do not re-layout unbound array types. * gfortran.dg/pr32921.f: New testcase. From-SVN: r129484
2007-10-19mips.c (mips_canonicalize_comparison): Check mips_relational_operand_ok_p ↵Richard Sandiford2-38/+40
before trying to rewrite the test. gcc/ * config/mips/mips.c (mips_canonicalize_comparison): Check mips_relational_operand_ok_p before trying to rewrite the test. Only calculate PLUS_ONE if needed. (mips_emit_int_relational): Don't call mips_relational_operand_ok_p here. From-SVN: r129483
2007-10-19mips.c (mips16e_build_save_restore): Fix *OFFSET_PTR calculation.Richard Sandiford2-1/+6
gcc/ * config/mips/mips.c (mips16e_build_save_restore): Fix *OFFSET_PTR calculation. From-SVN: r129482
2007-10-19mips.c (mips_call_tls_get_addr): Don't claim that the call uses the incoming ↵Richard Sandiford2-1/+5
value of $2. gcc/ * config/mips/mips.c (mips_call_tls_get_addr): Don't claim that the call uses the incoming value of $2. From-SVN: r129481
2007-10-19mips.c (mips_call_tls_get_addr): Use gen_const_mem rather then gen_rtx_MEM.Richard Sandiford2-7/+15
gcc/ * config/mips/mips.c (mips_call_tls_get_addr): Use gen_const_mem rather then gen_rtx_MEM. (mips_setup_incoming_varargs): Use gen_frame_mem rather than gen_rtx_MEM. (mips_set_return_address): Likewise. (mips_restore_gp): Likewise. From-SVN: r129480
2007-10-19mips.c (gpr_mode): Delete.Richard Sandiford3-21/+23
gcc/ * config/mips/mips.c (gpr_mode): Delete. (mips16e_build_save_restore): Use word_mode and UNITS_PER_WORD instead of gpr_mode. (mips_for_each_saved_reg): Likewise. (mips_expand_prologue, mips_expand_epilogue): Likewise. (override_options): Don't initialize gpr_mode. * config/mips/mips.md (eh_return): Use word_mode instead of gpr_mode. From-SVN: r129479
2007-10-19mips.c (mips_hard_regno_nregs): Put the UNITS_PER_WORD case last.Richard Sandiford2-29/+38
gcc/ * config/mips/mips.c (mips_hard_regno_nregs): Put the UNITS_PER_WORD case last. (mips_class_max_nregs): Calculate the smallest consituent register size and use that to determine an upper bound on the number of registers. From-SVN: r129478
2007-10-19mips.c (mips16_copy_fpr_return_value): New function, split out from...Richard Sandiford2-146/+178
gcc/ * config/mips/mips.c (mips16_copy_fpr_return_value): New function, split out from... (mips_expand_epilogue): ...here. (mips_mdebug_abi_name): New function, split out from... (mips_file_start): ...here. (mips_hard_regno_mode_ok_p): New function, split out from... (override_options): ...here. (mips_expand_builtin_1): New function, split out from... (mips_expand_buitin): ...here. Abort if we don't recognize the function. From-SVN: r129477
2007-10-19mips.c (build_mips16_function_stub): Load the target address into $1 before ↵Richard Sandiford2-31/+23
transfering the arguments. gcc/ * config/mips/mips.c (build_mips16_function_stub): Load the target address into $1 before transfering the arguments. Don't use ".set noreorder". (build_mips16_call_stub): Likewise. From-SVN: r129476
2007-10-19mips.c (mips_output_32bit_xfer): New function.Richard Sandiford2-91/+71
gcc/ * config/mips/mips.c (mips_output_32bit_xfer): New function. (mips_output_64bit_xfer): Likewise. (mips16_fp_args): Rename to... (mips_output_args_xfer): ...this and replace the FROM_FP_P argument with a DIRECTION argument. Use mips_output_32bit_xfer and mips_output_64bit_xfer. (build_mips16_function_stub): Update accordingly. (mips16_fpret_double): Delete. (build_mips16_call_stub): Update after above changes. Use mips_output_32bit_xfer. Use mips_output_64bit_xfer instead of mips16_fpret_double. Use GP_REG_RETURN. From-SVN: r129475
2007-10-19mips.c (mips16_fp_args): Remove the FILE argument and use asm_out_file instead.Richard Sandiford2-32/+42
gcc/ * config/mips/mips.c (mips16_fp_args): Remove the FILE argument and use asm_out_file instead. (build_mips16_function_stub): Likewise. (build_mips16_call_stub, mips_output_function_prologue): Update accordingly. From-SVN: r129474
2007-10-18Add Niagara-2 support.David S. Miller10-21/+212
2007-10-18 David S. Miller <davem@davemloft.net> Add Niagara-2 support. * doc/invoke.texi: Document -m{cpu,tune}=niagara2. * config.gcc: Add niagara2 to cpu and tune lists for sparc. * config/sparc/sparc.md (sparc_cpu_attr): Add niagara2. (include): Add inclusion of niagara2.md * config/sparc/sparc.c (niagara2_costs): New. (sparc_override_options): Add niagara2 entry to cpu_default[] and cpu_table[]. Set align_functions to 32 on Niagara2. Use niagara2_costs when PROCESSOR_NIAGARA2. Handle Niagara2 for PARAM_SIMULTANEOUS_PREFETCHES and PARAM_L1_CACHE_LINE_SIZE. (sparc_initialize_trampoline): Handle niagara2 like niagara. (sparc64_initialize_trampoline): Likewise. (sparc_use_sched_lookahead): Likewise. (sparc_issue_rate): Likewise. * config/sparc/sol2-bi.h: Handle TARGET_CPU_niagara2 and mcpu=niagara2 * config/sparc/sparc.h (TARGET_CPU_niagara2): Define. ({CPP,ASM}_CPU64_DEFAULT_SPEC): Set appropriately for TARGET_CPU_niagara2. (PROCESSOR_NIAGARA2): New. (REGISTER_MOVE_COST): Handle PROCESSOR_NIAGARA2. (BRANCH_COST): Likewise. * config/sparc/linux64.h: Handle TARGET_CPU_niagara2. * config/sparc/sol2.h: Likewise. * config/sparc/niagara2.md: New file. From-SVN: r129472
2007-10-19re PR fortran/33795 (Environment variable GFORTRAN_UNBUFFERED_<number> not ↵Jerry DeLisle2-11/+18
working) 2007-10-18 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/33795 * gfortran.texi: Document GFORTRAN_UNBUFFERED_PRECONNECTED environment variable. Delete mention of environment variable GFORTRAN_UNBUFFERED_n. From-SVN: r129471
2007-10-19Daily bump.GCC Administrator1-1/+1
From-SVN: r129468
2007-10-18eb130.C: Adjust include paths.Benjamin Kosnik2-2/+6
2007-10-18 Benjamin Kosnik <bkoz@redhat.com> * g++.old-deja/g++.robertl/eb130.C: Adjust include paths. From-SVN: r129464
2007-10-18mips.c (mips_frame_info): Remove gp_reg_size and and fp_reg_size.Richard Sandiford2-9/+10
gcc/ * config/mips/mips.c (mips_frame_info): Remove gp_reg_size and and fp_reg_size. (mips_compute_frame_info): Remove associated code. (mips16e_build_save_restore): Check num_fp instead of fp_reg_size. From-SVN: r129461
2007-10-18mips-protos.h (compute_frame_size): Delete.Richard Sandiford4-27/+27
gcc/ * config/mips/mips-protos.h (compute_frame_size): Delete. * config/mips/mips.h: Update comments. * config/mips/mips.c (mips_frame_info): Remove initialized. (compute_frame_size): Rename to... (mips_compute_frame_info): ...this and make static. Remove the SIZE argument and return no value. Remove the setting of initialized. Update rest of file accordingly. (mips_set_return_address): Don't call compute_frame_size. (mips_can_use_return_insn): Don't check df_regs_ever_live_p (31). Don't call compute_frame_size. From-SVN: r129460
2007-10-18mips-protos.h (mips_frame_pointer_required): Declare.Richard Sandiford6-18/+44
gcc/ * config/mips/mips-protos.h (mips_frame_pointer_required): Declare. * config/mips/mips.h (FRAME_POINTER_REQUIRED): Use mips_hard_frame_pointer_required. (CAN_ELIMINATE): Rely on FRAME_POINTER_REQUIRED to check for large MIPS16 frames. * config/mips/mips.c (mips_frame_pointer_required): New function. gcc/testsuite/ * gcc.target/mips/save-restore-3.c: Don't clobber $17. From-SVN: r129459
2007-10-18mips.c (mips_frame_info): Add arg_pointer_offset and hard_frame_pointer_offset.Richard Sandiford2-48/+62
gcc/ * config/mips/mips.c (mips_frame_info): Add arg_pointer_offset and hard_frame_pointer_offset. (mips_debugger_offset): Use hard_frame_pointer_offset. (mips16e_collect_argument_save_p): Likewise. (compute_frame_size): Initialize arg_pointer_offset and hard_frame_pointer_offset. (mips_initial_elimination_offset): Use them. (mips_output_function_prologue): Use hard_frame_pointer_offset. (mips_expand_prologue, mips_expand_epilogue): Likewise. From-SVN: r129458
2007-10-18mips.h (STARTING_FRAME_OFFSET): Remove rtl profiling code.Richard Sandiford3-200/+193
gcc/ * config/mips/mips.h (STARTING_FRAME_OFFSET): Remove rtl profiling code. * config/mips/mips.c (mips_frame_info): Give num_gp and num_fp type "unsigned int" rather than "int" and put them with the other register-related fields. Put expanded comments above fields rather than to their right. (mips16e_mask_registers): Replace the GP_REG_SIZE_PTR argument with a NUM_REGS_PTR argument. (mips16e_save_restore_pattern_p): Update accordingly. (compute_frame_size): Clarify frame diagram. Rewrite. From-SVN: r129456
2007-10-18mips-ftypes.def: New file.Richard Sandiford3-294/+185
gcc/ * config/mips/mips-ftypes.def: New file. * config/mips/mips.c (MIPS_FTYPE_NAME1, MIPS_FTYPE_NAME2) (MIPS_FTYPE_NAME3, MIPS_FTYPE_NAME4): New macros. (mips_function_type): Redefine using mips-ftypes.def. (dsp_bdesc): Use POINTER rather than PTR in the MIPS_*_FTYPE_* names. (mips_builtin_vector_type): New function. (MIPS_ATYPE_VOID, MIPS_ATYPE_INT, MIPS_ATYPE_POINTER, MIPS_ATYPE_SI) (MIPS_ATYPE_USI, MIPS_ATYPE_DI, MIPS_ATYPE_SF, MIPS_ATYPE_DF) (MIPS_ATYPE_V2SF, MIPS_ATYPE_V2HI, MIPS_ATYPE_V4QI, MIPS_FTYPE_ATYPES1) (MIPS_FTYPE_ATYPES2, MIPS_FTYPE_ATYPES3, MIPS_FTYPE_ATYPES4): New macros. (mips_build_function_type): New function. (mips_init_builtins): Use it to create types lazily. From-SVN: r129455
2007-10-18mips.h (set_volatile): Delete.Richard Sandiford3-310/+294
gcc/ * config/mips/mips.h (set_volatile): Delete. * config/mips/mips.c (set_volatile): Delete. (mips_print_operand_punctuation): New function, split out from print_operand. Remove '%{', '%}', '%~', '%&' and '%!'. Use the same character ordering in the code and the comments. Use a recursive call to handle '*'. Abort on unknown characters. (mips_init_print_operand_punct): New function, split out from override_options. (mips_print_int_branch_condition): New function, split out from print_operand. Use GET_RTX_NAME. Use output_operand_lossage to report unexpected codes. (mips_print_float_branch_condition): New function, split out from print_operand. Use output_operand_lossage to report unexpected codes. (print_operand): Rework to use a case statement. Use the same letter ordering in the code and the comments. Use output_operand_lossage to report unexpected codes and reverse_condition to handle inverted branch conditions. (override_options): Use mips_init_print_operand_punct. From-SVN: r129453
2007-10-18mips.h: Move variable declarations to end of file and enclose them all in ↵Richard Sandiford3-5054/+4898
#ifndef... gcc/ * config/mips/mips.h: Move variable declarations to end of file and enclose them all in #ifndef USED_FOR_TARGET. * config/mips/mips.c: Reorder functions into more logical groups, and so that callees appear before callers. Put the targetm initializer at the end of the file. Remove forward static declarations where possible. (mips_init_builtins): Add "static" to definition. (mips_expand_builtin, mips_mode_rep_extended): Likewise. From-SVN: r129452
2007-10-18mips.c (TARGET_MIN_ANCHOR_OFFSET): Delete.Richard Sandiford2-7/+11
gcc/ * config/mips/mips.c (TARGET_MIN_ANCHOR_OFFSET): Delete. (TARGET_MAX_ANCHOR_OFFSET): Delete. (mips_cannot_force_const_mem): Don't check TARGET_HAVE_TLS. (mips_set_mips16_mode): Initialize min_anchor_offset and max_anchor_offset directly to constants. From-SVN: r129451
2007-10-18mips.c: Delete trailing whitespace.Richard Sandiford2-15/+19
gcc/ * config/mips/mips.c: Delete trailing whitespace. From-SVN: r129450
2007-10-18mips.c (mips_expand_call): Use FAKE_CALL_REGNO.Richard Sandiford3-17/+58
gcc/ * config/mips/mips.c (mips_expand_call): Use FAKE_CALL_REGNO. (mips_avoid_hazard): Allow multiple sets for HAZARD_DELAY, and pick the first. * config/mips/mips.md (load_call<mode>): Don't make the unspec depend on FAKE_CALL_REGNO. Set FAKE_CALL_REGNO. From-SVN: r129449
2007-10-18linux-unwind.h (mips_fallback_frame_state): Use new reg_offset variable to ↵David Daney2-5/+12
calculate register locations. gcc/ 2007-10-17 David Daney <ddaney@avtrex.com> * config/mips/linux-unwind.h (mips_fallback_frame_state): Use new reg_offset variable to calculate register locations. From-SVN: r129446
2007-10-18tree-ssa.c (uid_ssaname_map_eq): New function.Richard Guenther4-29/+46
2007-10-18 Richard Guenther <rguenther@suse.de> * tree-ssa.c (uid_ssaname_map_eq): New function. (uid_ssaname_map_has): Likewise. (init_tree_ssa): Allocate default_defs as uid_ssaname map. * tree-flow.h (struct gimple_df): Make default_defs a uid_ssaname map. * tree-dfa.c (gimple_default_def): Deal with it. (set_default_def): Likewise. From-SVN: r129441
2007-10-18tree-flow.h (struct gimple_df): Make referenced_vars a uid_decl_map.Richard Guenther5-37/+55
2007-10-18 Richard Guenther <rguenther@suse.de> * tree-flow.h (struct gimple_df): Make referenced_vars a uid_decl_map. (uid_decl_map_eq): Declare. (uid_decl_map_hash): Likewise. * tree-ssa.c (uid_decl_map_eq): New function. (uid_decl_map_hash): Likewise. (init_tree_ssa): Make referenced_vars a uid_decl_map. * tree-flow-inline.h (first_referenced_var): Deal with the referenced_vars representation change. (next_referenced_var): Likewise. * tree-dfa.c (referenced_var_lookup): Likewise. (referenced_var_check_and_insert): Likewise. (remove_referenced_var): Likewise. From-SVN: r129440
2007-10-18mips.c (mips_dwarf_register_span): New.Daniel Jacobowitz2-0/+35
* config/mips/mips.c (mips_dwarf_register_span): New. (TARGET_DWARF_REGISTER_SPAN): Define. From-SVN: r129438
2007-10-18re PR fortran/33233 (Parent and contained procedure: Wrongly treated as ↵Paul Thomas5-5/+45
generic procedures) 2007-10-18 Paul Thomas <pault@gcc.gnu.org> PR fortran/33233 * resolve.c (check_host_association): Check singly contained namespaces and start search for symbol in current namespace. 2007-10-18 Paul Thomas <pault@gcc.gnu.org> PR fortran/33233 * gfortran.dg/host_assoc_function_1.f90: Correct references. * gfortran.dg/host_assoc_function_3.f90: New test. From-SVN: r129437
2007-10-18re PR fortran/33733 (ICEs in simplify_transfer)Paul Thomas2-0/+12
2007-10-18 Paul Thomas <pault@gcc.gnu.org> Dominique d'Humieres <dominiq@lps.ens.fr> PR fortran/33733 * simplify.c (gfc_simplify_transfer): Return null if the source expression is EXPR_FUNCTION. 2007-10-18 Paul Thomas <pault@gcc.gnu.org> PR fortran/33733 * gfortran.dg/transfer_simplify_6.f90: New test. From-SVN: r129436
2007-10-18re PR fortran/33733 (ICEs in simplify_transfer)Paul Thomas2-0/+12
2007-10-18 Paul Thomas <pault@gcc.gnu.org> Dominique d'Humieres <dominiq@lps.ens.fr> PR fortran/33733 * simplify.c (gfc_simplify_transfer): Return null if the source expression is EXPR_FUNCTION. 2007-10-18 Paul Thomas <pault@gcc.gnu.org> PR fortran/33733 * gfortran.dg/transfer_simplify_6.f90: New test. From-SVN: r129435
2007-10-18Because we merge score3 and score7 into the same backend,Chen Liqin23-3234/+7854
so make a lot of changes in the code structure. Changelog: * config.gcc : update score-*-elf(extra_objs). * config/score/mac.md : Remove. * config/score/misc.md : Remove. * config/score/score7.md : Remove. * config/score/score-mdaux.h : Remove. * config/score/score-mdaux.c : Remove. * config/score/score-version.h : Remove. * config/score/score-generic.md : New. * config/score/score3.h : New. * config/score/score3.c : New. * config/score/score7.h : New. * config/score/score7.c : New. * config/score/mul-div.S : add flush_cache score3 support. * config/score/elf.h : Fix some typos. * config/score/score.md : merge score3 and score7 pattern. * config/score/score.c : use to seperate which target it used. * config/score/score.h : use to seperate the target macro. * config/score/score.opt : remove -mmac option , add -mscore3, -mscore3d and -march OPTION support. From-SVN: r129431
2007-10-18Daily bump.GCC Administrator1-1/+1
From-SVN: r129426
2007-10-17cfgexpand.c (expand_stack_vars): Add checking to make sure that the offset ↵Andrew Pinski2-2/+11
of a variable is not greater than the... 2007-10-17 Andrew Pinski <andrew_pinski@playstation.sony.com> * cfgexpand.c (expand_stack_vars): Add checking to make sure that the offset of a variable is not greater than the size of the paritition. From-SVN: r129420
2007-10-18avr.c (avr_mcu_types): Add support for atmega48p, atmega88p, atmega168p and ↵Anatoly Sokolov4-4/+25
atmega328p devices. * config/avr/avr.c (avr_mcu_types): Add support for atmega48p, atmega88p, atmega168p and atmega328p devices. * config/avr/avr.h (LINK_SPEC): (Ditto.). (CRT_BINUTILS_SPECS): (Ditto.). * config/avr/t-avr (MULTILIB_MATCHES): (Ditto.). From-SVN: r129419
2007-10-17sched-ebb.c: Surround code with '#ifdef INSN_SCHEDULING'.Maxim Kuvyrkov6-21/+34
* sched-ebb.c: Surround code with '#ifdef INSN_SCHEDULING'. * ddg.c: Ditto. * sched-deps.c: Ditto. Remove nested #ifdef's INSN_SCHEDULING. * sched-int.h: Surround declarations with '#ifdef INSN_SCHEDULING'. (print_insn): Move declaration to ... * rtl.h (print_insn): ... here. From-SVN: r129417
2007-10-17m68k.h (m68k_sched_cpu, [...]): Move declarations to ...Maxim Kuvyrkov2-7/+10
* config/m68k/m68k.h (m68k_sched_cpu, m68k_sched_attr_opx_type, m68k_sched_attr_opy_type, m68k_sched_attr_size, m68k_sched_attr_op_mem, m68k_sched_branch_type): Move declarations to ... * config/m68/m68k-protos.h: ... here. From-SVN: r129416
2007-10-17* genattrtab.c (main): Rearrange output of insn-attrtab.c headers.Maxim Kuvyrkov2-1/+5
From-SVN: r129415
2007-10-17avr.c (avr_mcu_types): Add attiny48.Eric B. Weddington4-0/+11
* config/avr/avr.c (avr_mcu_types): Add attiny48. * config/avr/avr.h (LINK_SPEC): Likewise. (CRT_BINUTILS_SPECS): Likewsie. * config/avr/t-avr (MULTILIB_MATCHES): Likewise. From-SVN: r129414
2007-10-17- correct comment to AIX 5.3.David Edelsohn1-1/+1
From-SVN: r129412
2007-10-17avr.c (avr_mcu_types): Add attiny43u.Eric B. Weddington4-0/+9
* config/avr/avr.c (avr_mcu_types): Add attiny43u. * config/avr/avr.h (CRT_BINUTILS_SPECS): Likewsie. * config/avr/t-avr (MULTILIB_MATCHES): Likewise. From-SVN: r129411
2007-10-17re PR middle-end/33794 (Wrong code w/ -ffast-math)Uros Bizjak2-0/+56
PR middle-end/33794 * gfortran.dg/pr33794.f90: New testcase. Co-Authored-By: Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> From-SVN: r129410
2007-10-17re PR middle-end/33794 (Wrong code w/ -ffast-math)Uros Bizjak2-5/+13
PR middle-end/33794 * reg-stack.c (move_for_stack_reg): Swap input argument of UNSPEC_TAN insn to the top of the stack. From-SVN: r129406