- Apr 15, 2011
-
-
Eric Botcazou authored
* gimplify.c: Fix issues in comments throughout. (voidify_wrapper_expr): Fix long line. (build_stack_save_restore): Likewise. (gimplify_loop_expr): Likewise. (gimplify_compound_lval): Likewise. (gimplify_init_ctor_eval): Likewise. (gimplify_modify_expr_rhs): Likewise. (omp_notice_threadprivate_variable): Likewise. From-SVN: r172476
-
Eric Botcazou authored
cfgexpand.c (expand_call_stmt): Convert the function type to the original one if this is not a builtin function. * cfgexpand.c (expand_call_stmt): Convert the function type to the original one if this is not a builtin function. From-SVN: r172471
-
Janne Blomqvist authored
From-SVN: r172469
-
Ian Lance Taylor authored
From-SVN: r172468
-
GCC Administrator authored
From-SVN: r172466
-
- Apr 14, 2011
-
-
Eric Botcazou authored
cfgexpand.c (expand_call_stmt): Rematerialize the original function type if this is not a builtin function. * cfgexpand.c (expand_call_stmt): Rematerialize the original function type if this is not a builtin function. From-SVN: r172459
-
Jakub Jelinek authored
re PR target/48605 (gcc.target/i386/sse4_1-insertps-2.c FAILs with -mtune=geode - instruction insertps with memory operands behaves differently) PR target/48605 * config/i386/sse.md (sse4_1_insertps): If operands[2] is a MEM, offset it as needed based on top 2 bits in operands[3], change MEM mode to SFmode and mask those 2 bits away from operands[3]. * gcc.target/i386/sse4_1-insertps-3.c: New test. * gcc.target/i386/sse4_1-insertps-4.c: New test. * gcc.target/i386/avx-insertps-3.c: New test. * gcc.target/i386/avx-insertps-4.c: New test. From-SVN: r172458
-
Nicola Pero authored
In gcc/c-family/: 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com> * stub-objc.c (objc_declare_protocols): Renamed to objc_declare_protocol. * c-objc.h: Likewise. In gcc/: 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com> * c-parser.c (c_parser_objc_protocol_definition): Updated for change from objc_declare_protocols() to objc_declare_protocol(). In gcc/objc/: 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com> * objc-act.c (objc_declare_protocols): Renamed to objc_declare_protocol. Changed first argument to be an identifier instead of a tree chain of identifiers, so that callers don't have to create a temporary tree chain. In gcc/cp/: 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com> * parser.c (cp_parser_objc_protocol_declaration): Updated for change from objc_declare_protocols() to objc_declare_protocol(). From-SVN: r172444
-
Georg-Johann Lay authored
* gcc.target/avr/torture/pr41885.c (dg-options): Add -finline-limit=0 From-SVN: r172443
-
Georg-Johann Lay authored
PR target/46779 PR target/45291 PR target/41894 * gcc.target/avr/pr46779-1.c: New test case * gcc.target/avr/pr46779-2.c: New test case From-SVN: r172442
-
Nathan Froyd authored
PR objc++/48479 * typeck.c (cxx_mark_addressable) [CONST_DECL]: Mark addressable and return immediately. From-SVN: r172441
-
Nathan Froyd authored
* cp-tree.def (SWITCH_STMT): Add an extra operand. * cp-objcp-common.c (cp_common_init_ts): Mark it as TS_TYPED. * cp-tree.h (SWITCH_STMT_SCOPE): Define. * semantics.c (begin_switch__stmt): Pass scope to build_stmt. (finish_switch_stmt): Use SWITCH_STMT_SCOPE instead of TREE_CHAIN. From-SVN: r172440
-
Uros Bizjak authored
* config/i386/sse.md (sse4_1): New mode attribute. (<sse4_1>_blend<ssemodesuffix><avxmodesuffix>): Macroize from avx_blend<ssemodesuffix><avxmodesuffix> and sse4_1_blend<ssemodesuffix> using VF mode iterator. (<sse4_1>_blendv<ssemodesuffix><avxmodesuffix>): Macroize from avx_blendv<ssemodesuffix><avxmodesuffix> and sse4_1_blendv<ssemodesuffix> using VF mode iterator. (<sse4_1>_dp<ssemodesuffix><avxmodesuffix>): Macroize from avx_dp<ssemodesuffix><avxmodesuffix> and sse4_1_dp<ssemodesuffix> using VF mode iterator. (sse4_1_mpsadbw): Merge with *avx_mpsadbw. (sse4_1_packusdw): Merge with *avx_packusdw. (sse4_1_pblendvb): Merge with *avx_pblendvb. (sse4_1_pblendw): Merge with *avx_pblendw. (avx_vtest<ssemodesuffix><avxmodesuffix>): Use VF mode iterator. (<sse4_1>_round<ssemodesuffix><avxmodesuffix>): Macroize from avx_round<ssemodesuffix>256 and sse4_1_round<ssemodesuffix> using VF mode iterator. (sse4_1_round<ssescalarmodesuffix>): Merge with *avx_round<ssescalarmodesuffix>. (aesenc): Merge with *avx_aesenc. (aesenclast): Merge with *avx_aesenclast. (aesdec): Merge with *avx_aesdec. (aesdeclast): Merge with *avx_aesdeclast. (pclmulqdq): Merge with *pclmulqdq. * config/i386/predicates.md (reg_not_xmm0_operand_maybe_avx): New predicate. (nonimm_not_xmm0_operand_maybe_avx): Ditto. From-SVN: r172439
-
H.J. Lu authored
2011-04-14 H.J. Lu <hongjiu.lu@intel.com> PR middle-end/48608 * cfgexpand.c (get_decl_align_unit): Renamed to ... (align_local_variable): This. Update DECL_ALIGN. (add_stack_var): Updated. (expand_one_stack_var): Likewise. From-SVN: r172438
-
Nathan Froyd authored
* cp-tree.def (IF_STMT): Add an extra operand. * cp-objcp-common.c (cp_common_init_ts): Mark it as TS_TYPED. * cp-tree.h (IF_SCOPE): Define. * semantics.c (begin_if_stmt): Pass scope to build_stmt. (finish_if_stmt): Use IF_SCOPE instead of TREE_CHAIN. From-SVN: r172437
-
Nathan Froyd authored
* cp-tree.def (FOR_STMT, RANGE_FOR_STMT): Add an extra operand. * cp-objcp-common.c (cp_common_init_ts): Mark them as TS_TYPED. * cp-tree.h (FOR_SCOPE, RANGE_FOR_SCOPE): Define. * semantics.c (begin_for_stmt): Pass an extra arg to build_stmt. Use FOR_SCOPE instead of TREE_CHAIN. (begin_range_for_stmt): Likewise, with RANGE_FOR_SCOPE. (finish_for_stmt): Likewise. From-SVN: r172436
-
Jason Merrill authored
* parser.c (cp_parser_postfix_expression): Fix flags passed to build_new_method_call. * semantics.c (finish_call_expr): Likewise. From-SVN: r172435
-
Jason Merrill authored
PR c++/48531 * init.c (build_value_init_noctor): Check complain consistently. From-SVN: r172434
-
Jason Merrill authored
PR c++/48557 * typeck.c (cp_build_binary_op): Don't decay void operands. From-SVN: r172433
-
Jason Merrill authored
PR c++/48446 * decl.c (compute_array_index_type): Use get_temp_regvar instead of variable_size. * init.c (get_temp_regvar): No longer static. * cp-tree.h: Declare it. From-SVN: r172432
-
Richard Guenther authored
2011-04-14 Richard Guenther <rguenther@suse.de> * tree-ssa-dse.c (struct dse_global_data, struct dse_block_local_data): Remove. (dse_initialize_block_local_data, dse_leave_block, record_voperand_set, get_stmt_uid): Likewise. (dse_possible_dead_store_p): Allow any kind of killing stmt. (dse_optimize_stmt): Remove voperand set handling code. Simplify and improve to handle any kind of killing stmt. (dse_record_phi): Remove. (dse_enter_block): Simplify. (tree_ssa_dse): Likewise. * tree-ssa-alias.c (stmt_kills_ref_p_1): Handle some builtins. * gcc.dg/tree-ssa/ssa-dse-14.c: New testcase. From-SVN: r172431
-
Jan Hubicka authored
* cgraph.c (dump_cgraph_node): Do not dump inline summaries. * cgraph.h (struct inline_summary): Move to ipa-inline.h (cgraph_local_info): Remove inline_summary. * ipa-cp.c: Include ipa-inline.h. (ipcp_cloning_candidate_p, ipcp_estimate_growth, ipcp_estimate_cloning_cost, ipcp_insert_stage): Use inline_summary accesor. * lto-cgraph.c (lto_output_node): Do not stream inline summary. (input_overwrite_node): Do not set inline summary. (input_node): Do not stream inline summary. * ipa-inline.c (cgraph_decide_inlining): Dump inline summaries. (cgraph_decide_inlining_incrementally): Do not try to estimate overall growth; we do not have inline parameters computed for that anyway. (cgraph_early_inlining): After inlining compute call_stmt_sizes. * ipa-inline.h (struct inline_summary): Move here from ipa-inline.h (inline_summary_t): New type and VECtor. (debug_inline_summary, dump_inline_summaries): Declare. (inline_summary): Use VOCtor. (estimate_edge_growth): Kill hack computing call stmt size directly. * lto-section-in.c (lto_section_name): Add inline section. * ipa-inline-analysis.c: Include lto-streamer.h (node_removal_hook_holder, node_duplication_hook_holder): New holders (inline_node_removal_hook, inline_node_duplication_hook): New functions. (inline_summary_vec): Define. (inline_summary_alloc, dump_inline_summary, debug_inline_summary, dump_inline_summaries): New functions. (estimate_function_body_sizes): Properly compute size/time of outgoing calls. (compute_inline_parameters): Alloc inline_summary; do not compute size/time of incomming calls. (estimate_edge_time): Avoid missing time summary hack. (inline_read_summary): Read inline summary info. (inline_write_summary): Write inline summary info. (inline_free_summary): Free all hooks and inline summary vector. * lto-streamer.h: Add LTO_section_inline_summary section. * Makefile.in (ipa-cp.o, ipa-inline-analysis.o): Update dependencies. * ipa.c (cgraph_remove_unreachable_nodes): Fix dump file formating. * lto.c: Include ipa-inline.h (add_cgraph_node_to_partition, undo_partition): Use inline_summary accessor. (ipa_node_duplication_hook): Fix declaration. * Make-lang.in (lto.o): Update dependencies. From-SVN: r172430
-
Richard Sandiford authored
gcc/ * tree-vectorizer.h (vect_strided_store_supported): Add a HOST_WIDE_INT argument. (vect_strided_load_supported): Likewise. (vect_permute_store_chain): Return void. (vect_transform_strided_load): Likewise. (vect_permute_load_chain): Delete. * tree-vect-data-refs.c (vect_strided_store_supported): Take a count argument. Check that the count is a power of two. (vect_strided_load_supported): Likewise. (vect_permute_store_chain): Return void. Update after above changes. Assert that the access is supported. (vect_permute_load_chain): Likewise. (vect_transform_strided_load): Return void. * tree-vect-stmts.c (vectorizable_store): Update calls after above interface changes. (vectorizable_load): Likewise. (vect_analyze_stmt): Don't check for strided powers of two here. From-SVN: r172428
-
Richard Guenther authored
2011-04-14 Richard Guenther <rguenther@suse.de> PR tree-optimization/48590 * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle BUILT_IN_ALLOCA, BUILT_IN_STACK_SAVE and BUILT_IN_STACK_RESTORE. (call_may_clobber_ref_p_1): Handle BUILT_IN_ALLOCA and BUILT_IN_STACK_SAVE. * tree-ssa-dce.c (propagate_necessity): Handle BUILT_IN_ALLOCA, BUILT_IN_STACK_SAVE and BUILT_IN_STACK_RESTORE. From-SVN: r172427
-
Nicola Pero authored
In gcc/: 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com> * c-parser.c (c_parser_objc_class_declaration): Updated call to objc_declare_class. In gcc/c-family/: 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com> * stub-objc.c (objc_declare_class): Updated argument name. In gcc/cp/: 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com> * parser.c (cp_parser_objc_class_declaration): Updated for change in objc_declare_class(). In gcc/objc/: 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com> * objc-act.c (objc_declare_class): Changed to take a single identifier as argument instead of a tree list. This means callers don't have to build temporary tree lists to call this function. (synth_module_prologue): Updated calls to objc_declare_class. From-SVN: r172425
-
Richard Guenther authored
2011-04-14 Richard Guenther <rguenther@suse.de> * tree.h (get_object_alignment_1): Declare. * builtins.c (get_object_alignment_1): Split out worker from ... (get_object_alignment): ... here. * fold-const.c (get_pointer_modulus_and_residue): Use get_object_alignment_1. * gcc.dg/fold-bitand-4.c: Move ... * c-c++-common/fold-bitand-4.c: ... here. Adjust slightly. From-SVN: r172424
-
Richard Sandiford authored
gcc/ * tree-vectorizer.h (vect_create_data_ref_ptr): Add an extra type parameter. * tree-vect-data-refs.c (vect_create_data_ref_ptr): Add an aggr_type parameter. Generalise code to handle arrays as well as vectors. (vect_setup_realignment): Update accordingly. * tree-vect-stmts.c (vectorizable_store): Likewise. (vectorizable_load): Likewise. From-SVN: r172423
-
Richard Sandiford authored
gcc/ * tree-vect-stmts.c (vectorizable_load): Allocate and free dr_chain within the per-copy loop. From-SVN: r172422
-
Richard Sandiford authored
From-SVN: r172421
-
Richard Sandiford authored
gcc/ * tree-vect-stmts.c (vectorizable_load): Print the number of copies in the dump file. From-SVN: r172420
-
Richard Sandiford authored
gcc/ * doc/options.texi (Negative): Explicitly mention that the Negative chain must be circular. From-SVN: r172419
-
Nathan Froyd authored
gcc/ada/ * gcc-interface/utils.c (gnat_poplevel): Use block_chainon. gcc/ * function.h (block_chainon): Declare. * function.c (block_chainon): Define. gcc/cp/ * decl.c (poplevel): Use block_chainon. gcc/fortran// * f95-lang.c (poplevel): Use BLOCK_CHAIN and block_chainon. gcc/java/ * decl.c (poplevel): Use BLOCK_CHAIN and block_chainon. From-SVN: r172418
-
Georg-Johann Lay authored
* gcc.target/avr/trivial.c: Fix line endings. Make PROGMEM variables const. * gcc.target/avr/torture/trivial.c: Ditto. From-SVN: r172417
-
Anatoly Sokolov authored
* config/avr/avr.c: ("insn-codes.h", "optabs.h", "langhooks.h"): New Includes (avr_init_builtins, avr_expand_builtin, avr_expand_delay_cycles, avr_expand_unop_builtin, avr_expand_binop_builtin ): New functions. (avr_builtin_id): New enum (struct avr_builtin_description): New struct (bdesc_1arg, bdesc_2arg): New arrays describing some RTL builtins. (TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Define. * config/avr/avr.md (UNSPEC_FMUL, UNSPEC_FMULS, UNSPEC_FMULSU, UNSPECV_ENABLE_IRQS, UNSPECV_NOP, UNSPECV_SLEEP, UNSPECV_WDR, UNSPECV_DELAY_CYCLES): new enumeration values (UNSPEC_SEI, UNSPEC_CLI): Remove enumeration values ("enable_interrupt"): Use UNSPECV_ENABLE_IRQS ("disable_interrupt"): Use UNSPECV_ENABLE_IRQS ("*rotlqi3_4"): rename insn to "rotlqi3_4" ("delay_cycles_1", "delay_cycles_2", "delay_cycles_3", "delay_cycles_4", "nopv", "sleep", "wdr", "fmul", "fmuls", "fmulsu"): New insns * config/avr/avr-c.c: fix line endings (avr_cpu_cpp_builtins): New builtin defines: __BUILTIN_AVR_NOP, __BUILTIN_AVR_SEI, __BUILTIN_AVR_CLI, __BUILTIN_AVR_WDR, __BUILTIN_AVR_SLEEP, __BUILTIN_AVR_SWAP, __BUILTIN_AVR_DELAY_CYCLES, __BUILTIN_AVR_FMUL, __BUILTIN_AVR_FMULS, __BUILTIN_AVR_FMULSU. * doc/extend.texi (AVR Built-in Functions): New node (Target Builtins): Add documentation of AVR built-in functions. Co-Authored-By:
Eric Weddington <eric.weddington@atmel.com> Co-Authored-By:
Georg-Johann Lay <avr@gjlay.de> From-SVN: r172416
-
Georg-Johann Lay authored
PR target/44643 * config/avr/avr.c (avr_insert_attributes): Leave TREE_READONLY alone. Error if non-const data has attribute progmem. From-SVN: r172415
-
Nathan Froyd authored
* tree.h (struct tree_constructor): Include tree_typed instead of tree_common. * tree.c (initialize_tree_contains_struct): Mark TS_CONSTRUCTOR as TS_TYPED instead of TS_COMMON. From-SVN: r172409
-
GCC Administrator authored
From-SVN: r172408
-
- Apr 13, 2011
-
-
Uros Bizjak authored
* config/i386/sse.md (*sse2_uavgv16qi3): Merge with *avx_uavgv16qi3. (*sse2_uavgv8hi3): Merge with *avx_uavgv8hi3. (sse2_psadbw): Merge with *avx_psadbw. (ssse3_phaddwv8hi3): Merge with *avx_phaddwv8hi3. (ssse3_phadddv4si3): Merge with *avx_phadddv4si3. (ssse3_phaddswv8hi3): Merge with *avx_phaddswv8hi3. (ssse3_phsubwv8hi3): Merge with *avx_phsubwv8hi3. (ssse3_phsubdv4si3): Merge with *avx_phsubdv4si3. (ssse3_phsubswv8hi3): Merge with *avx_phsubswv8hi3. (ssse3_pmaddubsw128): Merge with *avx_pmaddubsw128. (*ssse3_pmulhrswv8hi3): Merge with *avx_pmulhrswv8hi3. (ssse3_pshufbv16qi3): Merge with *avx_pshufbv16qi3. (ssse3_psign<mode>3): Merge with *avx_psign<mode>3. (ssse3_palignrti): Merge with *avx_palignrti. From-SVN: r172403
-
Ian Lance Taylor authored
Change defer stack from tree to Expression. From-SVN: r172402
-
Paolo Carlini authored
2011-04-13 Daniel Krugler <daniel.kruegler@googlemail.com> Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/48526 * include/std/type_traits (struct is_constructible): Re-implement, according to n3290. (struct is_default_constructible): Add. (struct is_destructible): Likewise. (struct __and_, __or_, __not_): Add and use throughout; reorder some facilities, other minor tweaks. * testsuite/util/testsuite_tr1.h: Add test types. * testsuite/20_util/is_constructible/value-2.cc: New. * testsuite/20_util/is_default_constructible/value.cc: Likewise. * testsuite/20_util/is_default_constructible/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_default_constructible/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_destructible/value.cc: Likewise. * testsuite/20_util/is_destructible/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_destructible/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise. 2011-04-13 Paolo Carlini <paolo.carlini@oracle.com> * testsuite/20_util/is_function/value.cc: Add, adapted from the tr testsuite. * testsuite/20_util/is_function/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_function/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_function/24808.cc: Likewise. * testsuite/20_util/is_function/35637.cc: Likewise. * testsuite/20_util/is_object/value.cc: Likewise. * testsuite/20_util/is_object/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_object/requirements/explicit_instantiation.cc: : Likewise. * testsuite/20_util/is_object/24808.cc: Likewise. * testsuite/20_util/is_compound/value.cc: Likewise. * testsuite/20_util/is_compound/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_compound/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_member_object_pointer/value.cc: Likewise. * testsuite/20_util/is_member_object_pointer/requirements/ typedefs.cc: Likewise. * testsuite/20_util/is_member_object_pointer/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_fundamental/value.cc: Likewise. * testsuite/20_util/is_fundamental/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_fundamental/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_member_pointer/value.cc: Likewise. * testsuite/20_util/is_member_pointer/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_member_pointer/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_member_function_pointer/value.cc: Likewise. * testsuite/20_util/is_member_function_pointer/ requirements/typedefs.cc: Likewise. * testsuite/20_util/is_member_function_pointer/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_convertible/value.cc: Minor tweak, adjust Copyright years. From-SVN: r172401
-