aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2010-11-27In gcc/cp/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero4-3/+29
In gcc/cp/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com> PR objc++/46222 * decl.c (grokdeclarator): Replaced an assert (for a case that can never happen in C++, but could happen in ObjC++ for invalid code) with a check that prints an error message and returns error_mark_node. In gcc/testsuite/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com> PR objc++/46222 * obj-c++.dg/property/at-property-2.mm: Uncommented testcase. From-SVN: r167202
2010-11-27bootstrap-lto.mk (BOOT_ADAFLAGS): Delete.Eric Botcazou4-28/+58
config/ * bootstrap-lto.mk (BOOT_ADAFLAGS): Delete. gcc/ * tree-nested.c (remap_vla_decls): Fully expand value expressions of VLA variables. gcc/ada/ * gnatvsn.adb (Version_String): Change type to C-like array of chars. (Gnat_Version_String): Adjust to above change. From-SVN: r167201
2010-11-27gimple.c (gimple_assign_copy_p): Use gimple_assign_single_p.Richard Guenther5-37/+38
2010-11-27 Richard Guenther <rguenther@suse.de> * gimple.c (gimple_assign_copy_p): Use gimple_assign_single_p. (gimple_assign_ssa_name_copy_p): Likewise. (gimple_assign_unary_nop_p): Use is_gimple_assign. (is_gimple_cast): Remove. (gimple_assign_single_p): Move ... * gimple.h (gimple_assign_single_p): ... here. (is_gimple_cast): Remove. (gimple_assign_rhs_code): Simplify. * gimple-fold.c (gimple_fold_builtin): Use CONVERT_EXPR_P instead of is_gimple_cast. * ipa-type-escape.c (look_for_casts): Likewise. From-SVN: r167200
2010-11-27In gcc/objc/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero8-13/+520
In gcc/objc/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com> Implemented optional properties. * objc-act.h (PROPERTY_OPTIONAL): New. * objc-act.c (objc_add_property_declaration): Set PROPERTY_OPTIONAL if appropriate. (finish_class): When generating definitions of setter and getter methods associated with a property for a protocol, mark them as optional if the property is optional. (maybe_make_artificial_property_decl): Added 'getter_name' argument. Set PROPERTY_OPTIONAL. (objc_maybe_build_component_ref): Updated calls to maybe_make_artificial_property_decl. Added code for optional, readonly properties. (objc_build_class_component_ref): Updated call to maybe_make_artificial_property_decl. In gcc/testsuite/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/property/at-property-24.m: New. * objc.dg/property/at-property-25.m: New. * obj-c++.dg/property/at-property-24.mm: New. * obj-c++.dg/property/at-property-25.mm: New. From-SVN: r167197
2010-11-27In gcc/objc/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero7-28/+191
In gcc/objc/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com> * objc-act.c (objc_build_struct): Fixed loops that save and restore TYPE_OBJC_INFO to iterate over all variants of the type; a special case for the current type is then no longer required. Duplicate TYPE_LANG_SPECIFIC for each type before restoring TYPE_OBJC_INFO. (objc_get_protocol_qualified_type): Updated comments. In gcc/testsuite/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/protocol-qualifier-1.m: New. * objc.dg/protocol-qualifier-2.m: New. * obj-c++.dg/protocol-qualifier-1.mm: New. * obj-c++.dg/protocol-qualifier-2.mm: New. From-SVN: r167195
2010-11-27Daily bump.GCC Administrator1-1/+1
From-SVN: r167194
2010-11-26options.texi (Enum, EnumValue): Document new record types.Joseph Myers11-128/+597
* doc/options.texi (Enum, EnumValue): Document new record types. (Enum): Document new option flag. * opt-functions.awk * optc-gen.awk: Handle enumerated option arguments. * opth-gen.awk: Handle enumerated option arguments. * opts-common.c (enum_arg_ok_for_language, enum_arg_to_value, enum_value_to_arg): New. (decode_cmdline_option): Handle enumerated arguments. (read_cmdline_option): Handle CL_ERR_ENUM_ARG. (set_option, option_enabled, get_option_state): Handle CLVC_ENUM. * opts.c (print_filtered_help, print_specific_help): Take lang_mask arguments. (print_filtered_help): Handle printing values of enumerated options. Print possible arguments for enumerated options. (print_specific_help): Update call to print_filtered_help. (common_handle_option): Update calls to print_specific_help. Use value rather than arg for OPT_fdiagnostics_show_location_. Don't handle OPT_ffp_contract_, OPT_fexcess_precision_, OPT_fvisibility_, OPT_ftls_model_, OPT_fira_algorithm_ or OPT_fira_region_ here. * opts.h (enum cl_var_type): Add CLVC_ENUM. (struct cl_option): Add var_enum. (CL_ENUM_CANONICAL, CL_ENUM_DRIVER_ONLY, struct cl_enum_arg, struct cl_enum, cl_enums, cl_enums_count): New. (CL_ERR_ENUM_ARG): Define. (CL_ERR_NEGATIVE): Update value. (enum_value_to_arg): Declare. * common.opt (flag_ira_algorithm, flag_ira_region, flag_fp_contract_mode, flag_excess_precision_cmdline, default_visibility, flag_tls_default): Remove Variable entries. (help_enum_printed): New Variable. (fdiagnostics-show-location=): Use Enum. Add associated SourceInclude, Enum and EnumValue entries. (fexcess-precision=, ffp-contract=, fira-algorithm=, fira-region=, ftls-model=, fvisibility=): Use Enum, Var and Init. Add associated Enum and EnumValue entries. po: * exgettext: Handle UnknownError. From-SVN: r167190
2010-11-26re PR target/46623 (microblaze --enable-werror-always build fails)Joern Rennecke3-23/+53
PR target/46623 * config/microblaze/microblaze.c (microblaze_block_move_straight): Use XALLOCAVEC. (microblaze_option_override): Don't use C++ style comments. (save_restore_insns): Remove unused variable base_offset. (microblaze_expand_prologue): Remove unused variable insn. (microblaze_secondary_reload): Adjust type to match target.h . (microblaze_elf_in_small_data_p): Move declarations to start of block. (microblaze_expand_move): Likewise. * config/microblaze/microblaze.h (LARGE_INT): Avoid signed / unsigned comparisons. (ASM_OUTPUT_ALIGNED_COMMON, ASM_OUTPUT_ALIGNED_LOCAL): Likewise. (ASM_FORMAT_PRIVATE_NAME): Make format specifier match printed data. (ASM_FINISH_DECLARE_OBJECT): Likewise. Constify name. From-SVN: r167186
2010-11-26gnat.exp: Load gcc.exp.Rainer Orth3-0/+13
* lib/gnat.exp: Load gcc.exp. (gnat_target_compile): Use gcc_target_compile for *.c sources. * gnat.dg/sse_nolib.adb: Use dg-require-effective-target sse_runtime. From-SVN: r167185
2010-11-26tree-ssa-copy.c (fini_copy_prop): Don't DCE when we have loops.Michael Matz3-2/+10
* tree-ssa-copy.c (fini_copy_prop): Don't DCE when we have loops. * passes.c (init_optimization_passes): Remove superfluous copy-prop pass. From-SVN: r167184
2010-11-26re PR lto/46648 (type mismatch in array reference; verify_stmts failed)Richard Guenther5-17/+72
2010-11-26 Richard Guenther <rguenther@suse.de> PR lto/46648 * gimple.c (gtc_visit): Do not return true for members of an SCC still being processed but the current lattice value of the member. Treat SCC members comparison state as lattice, starting at equal, eventually dropping to unequal. (gimple_types_compatible_p_1): Likewise. * gcc.dg/lto/20101125-1_0.c: New testcase. * gcc.dg/lto/20101125-1_1.c: Likewise. From-SVN: r167183
2010-11-26arith_divide_no_check.f [...]: new tests.Bud Davis4-0/+52
2010-11-22 Bud Davis <jmdavis@link.com> * arith_divide_no_check.f ,arith_divide.f,old_style_init.f90: new tests. From-SVN: r167182
2010-11-26re PR middle-end/46559 (libstdc++ link FAILs with -flto)Richard Guenther2-4/+9
2010-11-26 Richard Guenther <rguenther@suse.de> PR middle-end/46559 * dwarf2out.c (dwarf2out_finish): Use comp_unit_die as root for location list processing. From-SVN: r167181
2010-11-26Add a testcase for PR tree-optimization/46665.H.J. Lu2-0/+41
2010-11-26 H.J. Lu <hongjiu.lu@intel.com> PR tree-optimization/46665 * gfortran.dg/pr46665.f90: New. From-SVN: r167179
2010-11-26re PR tree-optimization/46560 (libstdc++ execute FAILs with -flto)Richard Guenther2-0/+9
2010-11-26 Richard Guenther <rguenther@suse.de> PR lto/46560 * cgraph.c (cgraph_clone_edge): Clone call_stmt dependent flags manually. From-SVN: r167178
2010-11-26s390.c (print_operand_address): Replace assert with error message.Andreas Krebbel2-19/+67
2010-11-26 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * config/s390/s390.c (print_operand_address): Replace assert with error message. (print_operand): Replace assertions, gcc_unreachable and fatal_insn with error messages. From-SVN: r167177
2010-11-26re PR rtl-optimization/46665 (two gfortran tests fail with -O[2s] -fipa-pta ↵Richard Guenther2-1/+6
-fno-tree-ccp -fno-tree-forwprop) 2010-11-26 Richard Guenther <rguenther@suse.de> PR tree-optimization/46665 * tree-ssa-structalias.c (pt_solution_set_var): Use DECL_PT_UID. From-SVN: r167176
2010-11-26arm.c (arm_option_override): enable loop array prefetching at -O3 for ↵Ian Bolton3-5/+53
suitable targets, and configure params. 2010-11-26 Ian Bolton <ian.bolton@arm.com> * config/arm/arm.c (arm_option_override): enable loop array prefetching at -O3 for suitable targets, and configure params. * config/arm/arm-protos.h (struct tune_params): Add fields for configuring loop array prefetching. From-SVN: r167175
2010-11-262817.md (z196_crack): Add z196_g3 as possible slot.Christian Borntraeger2-2/+8
2010-11-26 Christian Borntraeger <borntraeger@de.ibm.com> * config/s390/2817.md (z196_crack): Add z196_g3 as possible slot. From-SVN: r167174
2010-11-26re PR lto/46664 (Failed to build 481.wrf in SPEC CPU 2006 with LTO)Richard Guenther2-1/+9
2010-11-26 Richard Guenther <rguenther@suse.de> PR tree-optimization/46664 * tree-affine.c (aff_combination_to_tree): Add rest last. From-SVN: r167173
2010-11-26re PR target/33637 ("checking for nm: test: too many arguments" causes ↵Michael Haubenwallner4-9/+17
"Undefined symbol: __gxx_personality_v0") PR target/33637 * configure.ac: Accept extra arguments for AS_FOR_TARGET, LD_FOR_TARGET, NM_FOR_TARGET, OBJDUMP_FOR_TARGET. * configure: Regenerated. * exec-tool.in: Not quoting command, may have extra arguments. From-SVN: r167172
2010-11-26re PR bootstrap/46528 (profiledbootstrap failure)Richard Guenther2-1/+9
2010-11-26 Richard Guenther <rguenther@suse.de> PR tree-optimization/46528 PR debug/46338 * profile.c (branch_prob): Do not split blocks based on locations from debug statements. From-SVN: r167171
2010-11-26re PR middle-end/46647 (Can't inline memset with -1)Jakub Jelinek4-2/+40
PR middle-end/46647 * builtins.c (fold_builtin_memset): Check c is INTEGER_CST instead of host_integerp check. Use TREE_INT_CST_LOW instead of tree_low_cst. * gcc.dg/pr46647.c: New test. From-SVN: r167170
2010-11-26re PR bootstrap/45700 (--enable-checking=fold bootstrap failures)Jakub Jelinek2-7/+7
PR bootstrap/45700 * tree.h (build1_stat_loc, build2_stat_loc, build3_stat_loc, build4_stat_loc, build5_stat_loc, build6_stat_loc): New inlines. (build1_loc, build2_loc, build3_loc, build4_loc, build5_loc, build6_loc): Define. * fold-const.c (protected_set_expr_location_unshare): New inline. (fold_convert_loc, pedantic_non_lvalue_loc): Use it. (negate_expr, associate_trees, non_lvalue_loc, omit_one_operand_loc, pedantic_omit_one_operand_loc, omit_two_operands_loc, fold_truth_not_expr, invert_truthvalue_loc, make_bit_field_ref, optimize_bit_field_compare, make_range, fold_range_test, fold_truthop, build_fold_addr_expr_with_type_loc, fold_unary_loc, fold_binary_loc, fold_indirect_ref_1, build_fold_indirect_ref_loc): Use builN_loc instead of buildN followed by SET_EXPR_LOCATION or protected_set_expr_location. (fold_build1_stat_loc, fold_build2_stat_loc, fold_build3_stat_loc): Use buildN_stat_loc instead of buildN_stat followed by SET_EXPR_LOCATION. * trans.h (build1_stat_loc, build2_stat_loc, build3_stat_loc, build4_stat_loc): Removed. (build1_loc, build2_loc, build3_loc, build4_loc): Removed. From-SVN: r167169
2010-11-26re PR bootstrap/45700 (--enable-checking=fold bootstrap failures)Jakub Jelinek5-292/+243
PR bootstrap/45700 * tree.h (build1_stat_loc, build2_stat_loc, build3_stat_loc, build4_stat_loc, build5_stat_loc, build6_stat_loc): New inlines. (build1_loc, build2_loc, build3_loc, build4_loc, build5_loc, build6_loc): Define. * fold-const.c (protected_set_expr_location_unshare): New inline. (fold_convert_loc, pedantic_non_lvalue_loc): Use it. (negate_expr, associate_trees, non_lvalue_loc, omit_one_operand_loc, pedantic_omit_one_operand_loc, omit_two_operands_loc, fold_truth_not_expr, invert_truthvalue_loc, make_bit_field_ref, optimize_bit_field_compare, make_range, fold_range_test, fold_truthop, build_fold_addr_expr_with_type_loc, fold_unary_loc, fold_binary_loc, fold_indirect_ref_1, build_fold_indirect_ref_loc): Use builN_loc instead of buildN followed by SET_EXPR_LOCATION or protected_set_expr_location. (fold_build1_stat_loc, fold_build2_stat_loc, fold_build3_stat_loc): Use buildN_stat_loc instead of buildN_stat followed by SET_EXPR_LOCATION. * trans.h (build1_stat_loc, build2_stat_loc, build3_stat_loc, build4_stat_loc): Removed. (build1_loc, build2_loc, build3_loc, build4_loc): Removed. From-SVN: r167168
2010-11-26Makefile.in (s-tm-texi): Remove spurous tab.Basile Starynkevitch2-1/+5
2010-11-26 Basile Starynkevitch <basile@starynkevitch.net> * Makefile.in (s-tm-texi): Remove spurous tab. From-SVN: r167167
2010-11-26re PR debug/46258 (gcc.dg/tree-ssa/pr23820.c: -fcompare-debug failure with ↵Alexandre Oliva2-1/+7
-O3 -ffloat-store) PR debug/46258 * tree-cfg.c (replace_uses_by): Don't mark BBs as altered on debug stmts. From-SVN: r167162
2010-11-26toplev.c (finalize): Add no_backend parameter.Alexandre Oliva2-6/+16
* toplev.c (finalize): Add no_backend parameter. Don't finish passes when preprocessing only. Adjust... (do_compile): ... caller. From-SVN: r167161
2010-11-26pa.md (negdf2): Condition on !flag_signed_zeros instead of ↵John David Anglin2-48/+55
flag_unsafe_math_optimizations. * config/pa/pa.md (negdf2): Condition on !flag_signed_zeros instead of flag_unsafe_math_optimizations. (negsf2): Likewise. Move fnegabs related patterns together. Only use fmpynfadd instruction to negate a multiply if !flag_signed_zeros is true. From-SVN: r167159
2010-11-26Daily bump.GCC Administrator1-1/+1
From-SVN: r167158
2010-11-25re PR fortran/46581 ([OOP] segfault in SELECT TYPE with associate-name)Janus Weil6-100/+135
2010-11-25 Janus Weil <janus@gcc.gnu.org> PR fortran/46581 * trans.h (gfc_process_block_locals): Removed second argument. * trans-decl.c (trans_associate_var): Moved to trans-stmt.c. (gfc_trans_deferred_vars): Skip ASSOCIATE variables. (gfc_process_block_locals): Don't mark associate names to be initialized. * trans-stmt.c (trans_associate_var): Moved here from trans-decl.c. (gfc_trans_block_construct): Call 'trans_associate_var' from here to make sure SELECT TYPE with associate-name is treated correctly. 2010-11-25 Janus Weil <janus@gcc.gnu.org> PR fortran/46581 * gfortran.dg/select_type_19.f03: New. From-SVN: r167154
2010-11-25gengtype-state.c (read_state_structures): Initialize "previous".Uros Bizjak2-14/+14
* gengtype-state.c (read_state_structures): Initialize "previous". From-SVN: r167153
2010-11-25In gcc/objc/: 2010-11-25 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero5-8/+160
In gcc/objc/: 2010-11-25 Nicola Pero <nicola.pero@meta-innovation.com> * objc-act.c (objc_build_struct): Install TYPE_OBJC_INTERFACE after finish_struct, not before, otherwise it may be wiped out by it. This fixes spurious warnings when a class has more than 15 instance variables. In gcc/testsuite/: 2010-11-25 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/ivar-problem-1.m: New. * obj-c++.dg/ivar-problem-1.mm: New. From-SVN: r167151
2010-11-25gentype-state.c: Add new file.Basile Starynkevitch5-11/+2533
2010-11-25 Basile Starynkevitch <basile@starynkevitch.net> Jeremie Salvucci <jeremie.salvucci@free.fr> * gentype-state.c: Add new file. * gengtype.c (type count): New variable. (new_structure, find_param_structure, create_pointer) (create_array): Use it to set state_number in types. (dump_everything): Improve comment. (main): Call read_state and write_state. Print type_count. * gengtype.h (type_lineloc): New function. (read_state, write_state): New declarations. * Makefile.in (GENGTYPE_FLAGS): New variable. (s-gtype): Run gengtype twice and generate gtype.state. (build/gengtype-state.o): New rule. (build/gengtype$(build_exeext)): Link gengtype-state.o. (mostlyclean): Update comment. Remove gtype.state. Co-Authored-By: Jeremie Salvucci <jeremie.salvucci@free.fr> From-SVN: r167150
2010-11-25re PR middle-end/46637 (SIGSEGV in if_then_else_cond - too deep recursion)Jakub Jelinek4-2/+27
PR middle-end/46637 * combine.c (try_combine): When substing i2dest for i2src, pass 1 as last argument even if i0_feeds_i1_n && i1_feeds_i2_n && i0dest_in_i0src. * gcc.c-torture/compile/pr46637.c: New test. From-SVN: r167148
2010-11-25Add -mtune=generic to gfortran.dg/pr46519-1.f.H.J. Lu2-1/+5
2010-11-25 H.J. Lu <hongjiu.lu@intel.com> * gfortran.dg/pr46519-1.f: Add -mtune=generic. From-SVN: r167147
2010-11-25Properly cast integer constant char. H.J. Lu4-2/+57
gcc/ 2010-11-25 H.J. Lu <hongjiu.lu@intel.com> PR middle-end/46647 * builtins.c (target_char_cast): Check INTEGER_CST instead of host_integerp. Replace tree_low_cst with TREE_INT_CST_LOW. gcc/testsuite/ 2010-11-25 H.J. Lu <hongjiu.lu@intel.com> PR middle-end/46647 * gcc.target/i386/pr46647.c: New. From-SVN: r167146
2010-11-25target.def (supports_split_stack, [...]): Take gcc_options parameters.Joseph Myers23-76/+162
* target.def (supports_split_stack, except_unwind_info): Take gcc_options parameters. * targhooks.c (default_except_unwind_info, dwarf2_except_unwind_info, sjlj_except_unwind_info): Take gcc_options parameters. * targhooks.h (default_except_unwind_info, dwarf2_except_unwind_info, sjlj_except_unwind_info): Update prototypes. * doc/tm.texi.in (TARGET_IRA_COVER_CLASSES, TARGET_HAVE_NAMED_SECTIONS, TARGET_UNWIND_TABLES_DEFAULT): Document that hooks must not be modified. (TARGET_EXCEPT_UNWIND_INFO): Refer to opts argument. * doc/tm.texi: Regenerate. * defaults.h (STACK_OLD_CHECK_PROTECT, STACK_CHECK_PROTECT): Pass &global_options to targetm.except_unwind_info. * dwarf2out.c (dwarf2out_do_frame, dwarf2out_do_cfi_asm, dwarf2out_begin_prologue, dwarf2out_frame_init, dwarf2out_frame_finish, dwarf2out_assembly_start): Pass &global_options to targetm.except_unwind_info. * except.c (init_eh, finish_eh_generation, gate_convert_to_eh_region_ranges, output_one_function_exception_table): Pass &global_options to targetm.except_unwind_info. * expr.c (build_personality_function): Pass &global_options to targetm.except_unwind_info. * function.c (expand_function_end): Pass &global_options to targetm.except_unwind_info. * hooks.c (hook_bool_bool_gcc_optionsp_false): New. * hooks.h (hook_bool_bool_gcc_optionsp_false): Declare. * opts.c (finish_options): Pass opts to targetm.except_unwind_info and targetm.supports_split_stack. Remove assertions about opts and opts_set. (common_handle_option): Remove assertions about opts, opts_set and dc. * tree-tailcall.c (suitable_for_tail_call_opt_p): Pass &global_options to targetm.except_unwind_info. * tree.c (build_common_builtin_nodes: Pass &global_options to targetm.except_unwind_info. * config/arm/arm.c (arm_except_unwind_info): Add gcc_options parameter. (arm_compute_func_type, arm_expand_prologue, thumb_pushpop, thumb1_expand_prologue, thumb1_output_function_prologue, arm_unwind_emit, arm_output_fn_unwind): Update calls to arm_except_unwind_info. * config/i386/i386.c (ix86_supports_split_stack): Add gcc_options parameter. * config/ia64/ia64.c (ia64_except_unwind_info): Add gcc_options parameter. (ia64_output_function_prologue, ia64_add_bundle_selector_before, ia64_reorg, ia64_asm_unwind_emit): Update calls to ia64_except_unwind_info. * config/pa/pa.c (pa_option_override): Pass &global_options to targetm.except_unwind_info. * config/picochip/picochip-protos.h (picochip_except_unwind_info): Remove prototype. c-family: * c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to targetm.except_unwind_info. From-SVN: r167145
2010-11-25cgraphunit.c (process_function_and_variable_attributes): Mark dllexport-ed ↵Kai Tietz5-3/+48
function/variables as needed. 2010-11-25 Kai Tietz <kai.tietz@onevision.com> * cgraphunit.c (process_function_and_variable_attributes): Mark dllexport-ed function/variables as needed. * ipa.c (cgraph_externally_visible_p): Make dllexport-ed as externally visible. 2010-11-25 Kai Tietz <kai.tietz@onevision.com> * gcc.dg/dll-8.c: New. From-SVN: r167144
2010-11-25loop_optimization7.adb: Remove dg-require-effective-target.Eric Botcazou3-3/+6
* gnat.dg/loop_optimization7.adb: Remove dg-require-effective-target. * gnat.dg/sse_nolib.adb: Likewise. From-SVN: r167143
2010-11-25re PR rtl-optimization/46585 (ICE: SIGSEGV in vinsn_create ↵Alexander Monakov4-4/+35
(sel-sched-ir.c:1189) with -fno-dce -fschedule-insns -fselective-scheduling) PR rtl-optimization/46585 * sel-sched-ir.c (return_regset_to_pool): Verify that RS is not NULL. (vinsn_init): Skip initialization of dependencies for local NOPs. (vinsn_delete): Don't try to free regsets for local NOPs. (setup_nop_and_exit_insns): Change definition of nop_pattern. testsuite: * gcc.dg/pr46585.c: New. From-SVN: r167141
2010-11-25re PR rtl-optimization/46602 (gcc.dg/pr42245-2.c ICE on ia64)Alexander Monakov2-4/+11
PR rtl-optimization/46602 * sel-sched-ir.c (maybe_tidy_empty_bb): Move checking ... (tidy_control_flow): Here. From-SVN: r167140
2010-11-25re PR bootstrap/45888 (tm.texi generation is not portable, rule is broken)Joern Rennecke2-1/+17
2010-11-25 Joern Rennecke <amylaar@spamcop.net> Ralf Wildenhues <Ralf.Wildenhues@gmx.de> PR bootstrap/45888 * Makefile.in (s-tm-texi): Remove \r occurences from tmp-tm.texi. Fix target.def pathname in timestamp comparison. Co-Authored-By: Ralf Wildenhues <Ralf.Wildenhues@gmx.de> From-SVN: r167137
2010-11-24predicates.md (pmpyshr_operand): New.Richard Henderson7-42/+504
* config/ia64/predicates.md (pmpyshr_operand): New. * config/ia64/ia64.c (ia64_expand_unpack): New. (ia64_expand_widen_mul_v4hi): New. (ia64_expand_widen_sum): Update for pattern renames. (ia64_expand_dot_prod_v8qi): Likewise. * config/ia64/ia64-protos.h: Update. * config/ia64/vect.md (vecwider): New mode attribute. (vec_widen_umult_lo_v8qi, vec_widen_umult_hi_v8qi): New. (vec_widen_smult_lo_v8qi, vec_widen_smult_hi_v8qi): New. (pmpyshr2, pmpyshr2_u): New. (vec_widen_smult_lo_v4hi, vec_widen_smult_hi_v4hi): New. (vec_widen_umult_lo_v4hi, vec_widen_umult_hi_v4hi): New. (mulv2si3): New. (vec_pack_ssat_v4hi): Rename from pack2_sss. (vec_pack_usat_v4hi): Rename from *pack2_uss. (vec_pack_ssat_v2si): Rename from pack4_sss. (vec_interleave_lowv8qi): Rename from unpack1_l, use the correct vec_select operation. (vec_interleave_highv8qi): Similarly. (mux1_alt): Rename from *mux1_alt. (vec_extract_evenv8qi, vec_extract_oddv8qi): New. (vec_interleave_lowv4hi): Rename from unpack2_l. (vec_interleave_highv4hi): Rename from unpack2_h. (mix2_r): Rename from *mix2_r. (mix2_l): Similarly. (vec_extract_evenodd_helper): New. (vec_extract_evenv4hi, vec_extract_oddv4hi): New. (vec_interleave_lowv2si): Rename from *unpack4_l. (vec_interleave_highv2si): Rename from *unpack4_h. (vec_extract_evenv2si, vec_extract_oddv2si): New. (vec_interleave_lowv2sf): Rename from fmix_r. (vec_interleave_highv2sf): Rename from *fmix_l. (vec_extract_evenv2sf, vec_extract_oddv2sf): New. (vec_unpacku_lo_<VECINT12>, vec_unpacku_hi_<VECINT12>): New. (vec_unpacks_lo_<VECINT12>, vec_unpacks_hi_<VECINT12>): New. (vec_pack_trunc_v4hi, vec_pack_trunc_v2si): New. testsuite: * lib/target-supports.exp (vect_widen_sum_hi_to_si_pattern, vect_widen_mult_hi_to_si, vect_sdot_qi, vect_udot_qi, vect_sdot_hi, vect_unpack, vect_int_mult, vect_extract_even_odd, vect_extract_even_odd_wide, vect_interleave): Enable for ia64. From-SVN: r167136
2010-11-25Daily bump.GCC Administrator1-1/+1
From-SVN: r167135
2010-11-24targhooks.c (default_except_unwind_info): Remove MUST_USE_SJLJ_EXCEPTIONS case.Nathan Froyd7-24/+15
* targhooks.c (default_except_unwind_info): Remove MUST_USE_SJLJ_EXCEPTIONS case. * config/h8300/h8300.h (MUST_USE_SJLJ_EXCEPTIONS): Delete. * config/h8300/h8300.c (TARGET_EXCEPT_UNWIND_INFO): Define. * doc/tm.texi.in (MUST_USE_SJLJ_EXCEPTIONS): Delete. * doc/tm.texi: Regenerate. * system.h (MUST_USE_SJLJ_EXCEPTIONS): Poison. From-SVN: r167131
2010-11-24revert accidentally committed changesNathan Froyd18-99/+13
From-SVN: r167130
2010-11-24cppbuiltin.c (define_builtin_macros_for_type_sizes): Define ↵Nathan Froyd23-19/+119
__FLOAT_WORD_ORDER__ according to FLOAT_WORDS_BIG_ENDIAN. gcc/ * cppbuiltin.c (define_builtin_macros_for_type_sizes): Define __FLOAT_WORD_ORDER__ according to FLOAT_WORDS_BIG_ENDIAN. * config/dfp-bit.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Delete. * doc/cpp.texi (__FLOAT_WORD_ORDER__): Document. * system.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Poison. libgcc/ * config/libbid/bid_conf.h (BID_BIG_ENDIAN): Define in terms of __FLOAT_WORD_ORDER__. * config/libbid/bid_gcc_intrinsics.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Delete. libdecnumber/ * dconfig.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Delete. (WORDS_BIG_ENDIAN): Define based on value of __FLOAT_WORD_ORDER__. From-SVN: r167129
2010-11-24Don't check TREE_THIS_VOLATILE in ix86_expand_call.H.J. Lu4-1/+58
gcc/ 2010-11-24 H.J. Lu <hongjiu.lu@intel.com> PR target/46519 * config/i386/i386.c (ix86_expand_call): Don't check TREE_THIS_VOLATILE. gcc/testsuite/ 2010-11-24 H.J. Lu <hongjiu.lu@intel.com> PR target/46519 * gfortran.dg/pr46519-1.f: New. From-SVN: r167126
2010-11-24Improve vzeroupper optimization.H.J. Lu17-98/+356
gcc/ 2010-11-24 H.J. Lu <hongjiu.lu@intel.com> PR target/46519 * config/i386/i386.c (upper_128bits_state): New. (block_info_def): Remove upper_128bits_set and done. Add state, referenced, count, processed and rescanned. (check_avx256_stores): Updated. (move_or_delete_vzeroupper_2): Updated. Handle deleted BB_END. Call note_stores only if needed. Set referenced and count. (move_or_delete_vzeroupper_1): Updated. Set rescan_vzeroupper_p. (rescan_move_or_delete_vzeroupper): New. (move_or_delete_vzeroupper): Process and rescan all all basic blocks instead of predecessor blocks of all exit points. (ix86_option_override_internal): Enable vzeroupper optimization only for -fexpensive-optimizations and not optimizing for size. (use_avx256_p): Removed. (init_cumulative_args): Don't set use_avx256_p. (ix86_function_arg): Likewise. (ix86_expand_move): Likewise. (ix86_expand_vector_move_misalign): Likewise. (ix86_local_alignment): Likewise. (ix86_minimum_alignment): Likewise. (ix86_expand_epilogue): Don't check use_avx256_p when generating vzeroupper. (ix86_expand_call): Likewise. * config/i386/i386.h (machine_function): Remove use_vzeroupper_p and use_avx256_p. Add rescan_vzeroupper_p. gcc/testsuite/ 2010-11-24 H.J. Lu <hongjiu.lu@intel.com> PR target/46519 * gcc.target/i386/avx-vzeroupper-10.c: Expect no avx_vzeroupper. * gcc.target/i386/avx-vzeroupper-11.c: Likewise. * gcc.target/i386/avx-vzeroupper-14.c: Replace -O0 with -O2. * gcc.target/i386/avx-vzeroupper-15.c: Likewise. * gcc.target/i386/avx-vzeroupper-16.c: Likewise. * gcc.target/i386/avx-vzeroupper-17.c: Likewise. * gcc.target/i386/avx-vzeroupper-20.c: New. * gcc.target/i386/avx-vzeroupper-21.c: Likewise. * gcc.target/i386/avx-vzeroupper-22.c: Likewise. * gcc.target/i386/avx-vzeroupper-23.c: Likewise. * gcc.target/i386/avx-vzeroupper-24.c: Likewise. * gcc.target/i386/avx-vzeroupper-25.c: Likewise. * gcc.target/i386/avx-vzeroupper-26.c: Likewise. From-SVN: r167124