- 18 Oct, 2013 9 commits
-
-
* tree-cfg.h: Rename from tree-flow.h. Remove #includes. * tree-ssa.h: Relocate required #includes from tree-cfg.h. * tree-ssa-operands.h: Remove prototype. * tree-ssa-operands.c (virtual_operand_p): Move to gimple.c. * gimple.c (virtual_operand_p): Relocate from gimple.c. * gimple.h: Add prototype. * gimple-ssa.h: Include tree-ssa-operands.h. * tree-dump.c: Add tree-cfg.h to include list. * tree-ssa-alias.c: Add ipa-reference.h to include list. * config/alpha/alpha.c: Include gimple-ssa.h instead of tree-flow.h. * config/i386/i386.c: Don't include tree-flow.h. * config/rs6000/rs6000.c: Likewise. * lto/lto.c: Remove tree-flow.h from include list. * testsuite/g++.dg/plugin/header_plugin.c: Don't include tree-flow.h. From-SVN: r203817
Andrew Macleod committed -
2013-10-18 Jan-Benedict Glaw <jbglaw@lug-owl.de> * config/frv/frv.c (frv_init_cumulative_args): Fix wrong cast. From-SVN: r203814
Jan-Benedict Glaw committed -
2013-10-18 Richard Biener <rguenther@suse.de> * stor-layout.c (layout_type): Do not change TYPE_PRECISION or TYPE_UNSIGNED of integral types. (set_min_and_max_values_for_integral_type): Leave TYPE_MIN/MAX_VALUE NULL_TREE for zero-precision integral types. From-SVN: r203813
Richard Biener committed -
gcc/ * config/aarch64/arm_neon.h (vcvt<ds>_n_<fsu><32,64>_<fsu><32,64>): Correct argument types. From-SVN: r203812
James Greenhalgh committed -
From-SVN: r203811
Uros Bizjak committed -
* elf.c (elf_add): Don't get the wrong offsets if a debug section is missing. From-SVN: r203810
Ian Lance Taylor committed -
* gcc.dg/tree-ssa/gen-vect-11.c: Use dynamic vector cost model. gcc.dg/tree-ssa/gen-vect-11a.c: Likewise. gcc.dg/tree-ssa/gen-vect-2.c: Likewise. gcc.dg/tree-ssa/gen-vect-25.c: Likewise. From-SVN: r203809
Hans-Peter Nilsson committed -
* opth-gen.awk: Define target_flags_explicit. From-SVN: r203808
Sriraman Tallam committed -
From-SVN: r203807
GCC Administrator committed
-
- 17 Oct, 2013 31 commits
-
-
2013-10-03 Michael Meissner <meissner@linux.vnet.ibm.com> * gcc.target/powerpc/p8vector-fp.c: New test for floating point scalar operations when using -mupper-regs-sf and -mupper-regs-df. * gcc.target/powerpc/ppc-target-1.c: Update tests to allow either VSX scalar operations or the traditional floating point form of the instruction. * gcc.target/powerpc/ppc-target-2.c: Likewise. * gcc.target/powerpc/recip-3.c: Likewise. * gcc.target/powerpc/recip-5.c: Likewise. * gcc.target/powerpc/pr72747.c: Likewise. * gcc.target/powerpc/vsx-builtin-3.c: Likewise. From-SVN: r203800
Michael Meissner committed -
2013-10-17 Charles Bayis <charles.baylis@linaro.org> * gcc.dg/builtin-apply2.c: Skip test on arm hardfloat ABI targets. * gcc.dg/tls/pr42894.c: Remove dg-options for arm*-*-* targets. * gcc.target/arm/thumb-ltu.c: Remove dg-skip-if and require effective target arm_thumb1_ok. * lib/target-supports.exp (check_effective_target_arm_fp16_ok_nocache): Don't force -mfloat-abi=soft when building for hardfloat target. From-SVN: r203799
Charles Baylis committed -
regex.h (regex_token_iterator<>::regex_token_iterator): Fix initialization orders in initialization list and add explicit braces for... 2013-10-17 Tim Shen <timshen91@gmail.com> * include/bits/regex.h (regex_token_iterator<>::regex_token_iterator): Fix initialization orders in initialization list and add explicit braces for potentially ambiguous(actually not) `else` branch to eliminate warnings. * include/bits/regex_automaton.h (_NFA<>::_NFA): Likewise. * include/bits/regex_compiler.h (_CharMatcher<>::_CharMatcher, _BracketMatcher<>::_BracketMatcher): Likewise. * include/bits/regex_compiler.tcc (_Compiler<>::_Compiler, _Compiler<>::_M_atom): Likewise. * include/bits/regex_executor.h (_Executor<>::_Executor): Likewise. * include/bits/regex_executor.tcc (_DFSExecutor<>::_M_dfs, _Executor<>::_M_word_boundry): Likewise. * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner, _Scanner<>::_M_eat_class): Likewise. * include/bits/regex.tcc (__regex_algo_impl<>, regex_iterator<>::operator++): Likewise, and remove unused typedef. From-SVN: r203798
Tim Shen committed -
From-SVN: r203797
Michael Meissner committed -
From-SVN: r203795
Ian Lance Taylor committed -
rs6000.c (enum rs6000_reload_reg_type): Add new fields to the reg_addr array that describes the valid addressing mode... 2013-10-17 Michael Meissner <meissner@linux.vnet.ibm.com> * config/rs6000/rs6000.c (enum rs6000_reload_reg_type): Add new fields to the reg_addr array that describes the valid addressing mode for any register, general purpose registers, floating point registers, and Altivec registers. (FIRST_RELOAD_REG_CLASS): Likewise. (LAST_RELOAD_REG_CLASS): Likewise. (struct reload_reg_map_type): Likewise. (reload_reg_map_type): Likewise. (RELOAD_REG_VALID): Likewise. (RELOAD_REG_MULTIPLE): Likewise. (RELOAD_REG_INDEXED): Likewise. (RELOAD_REG_OFFSET): Likewise. (RELOAD_REG_PRE_INCDEC): Likewise. (RELOAD_REG_PRE_MODIFY): Likewise. (reg_addr): Likewise. (mode_supports_pre_incdec_p): New helper functions to say whether a given mode supports PRE_INC, PRE_DEC, and PRE_MODIFY. (mode_supports_pre_modify_p): Likewise. (rs6000_debug_vector_unit): Rearrange the -mdebug=reg output to print the valid address mode bits for each mode. (rs6000_debug_print_mode): Likewise. (rs6000_debug_reg_global): Likewise. (rs6000_setup_reg_addr_masks): New function to set up the address mask bits for each type. (rs6000_init_hard_regno_mode_ok): Use memset to clear arrays. Call rs6000_setup_reg_addr_masks to set up the address mask bits. (rs6000_legitimate_address_p): Use mode_supports_pre_incdec_p and mode_supports_pre_modify_p to determine if PRE_INC, PRE_DEC, and PRE_MODIFY are supported. (rs6000_output_move_128bit): Change to use {src,dest}_vmx_p for altivec registers, instead of {src,dest}_av_p. (rs6000_print_options_internal): Tweak the debug output slightly. From-SVN: r203791
Michael Meissner committed -
rs6000.c (enum rs6000_reload_reg_type): Add new fields to the reg_addr array that describes the valid addressing mode... 2013-10-07 Michael Meissner <meissner@linux.vnet.ibm.com> * config/rs6000/rs6000.c (enum rs6000_reload_reg_type): Add new fields to the reg_addr array that describes the valid addressing mode for any register, general purpose registers, floating point registers, and Altivec registers. (FIRST_RELOAD_REG_CLASS): Likewise. (LAST_RELOAD_REG_CLASS): Likewise. (struct reload_reg_map_type): Likewise. (reload_reg_map_type): Likewise. (RELOAD_REG_VALID): Likewise. (RELOAD_REG_MULTIPLE): Likewise. (RELOAD_REG_INDEXED): Likewise. (RELOAD_REG_OFFSET): Likewise. (RELOAD_REG_PRE_INCDEC): Likewise. (RELOAD_REG_PRE_MODIFY): Likewise. (reg_addr): Likewise. (mode_supports_pre_incdec_p): New helper functions to say whether a given mode supports PRE_INC, PRE_DEC, and PRE_MODIFY. (mode_supports_pre_modify_p): Likewise. (rs6000_debug_vector_unit): Rearrange the -mdebug=reg output to print the valid address mode bits for each mode. (rs6000_debug_print_mode): Likewise. (rs6000_debug_reg_global): Likewise. (rs6000_setup_reg_addr_masks): New function to set up the address mask bits for each type. (rs6000_init_hard_regno_mode_ok): Use memset to clear arrays. Call rs6000_setup_reg_addr_masks to set up the address mask bits. (rs6000_legitimate_address_p): Use mode_supports_pre_incdec_p and mode_supports_pre_modify_p to determine if PRE_INC, PRE_DEC, and PRE_MODIFY are supported. (rs6000_print_options_internal): Tweak the debug output slightly. From-SVN: r203790
Michael Meissner committed -
From-SVN: r203788
Ian Lance Taylor committed -
* config/i386/sse.md (*vec_widen_smult_even_v8si): Remove isa attribute. From-SVN: r203787
Uros Bizjak committed -
* tree-flow.h (struct omp_region): Move to omp-low.c. Remove omp_ prototypes and variables. * gimple.h (omp_reduction_init): Move prototype to omp-low.h. (copy_var_decl): Relocate prototype from tree-flow.h. * gimple.c (copy_var_decl): Relocate from omp-low.c. * tree.h: Move prototype to omp-low.h. * omp-low.h: New File. Relocate prototypes here. * omp-low.c (struct omp_region): Make local here. (root_omp_region): Make static. (copy_var_decl) Move to gimple.c. (new_omp_region): Make static. (make_gimple_omp_edges): New. Refactored from tree-cfg.c make_edges. * tree-cfg.c: Include omp-low.h. (make_edges): Factor out OMP specific bits to make_gimple_omp_edges. * gimplify.c: Include omp-low.h. * tree-parloops.c: Likewise. c * c-parser.c: Include omp-low.h. * c-typeck.c: Likewise. cp * parser.c: Include omp-low.h. * semantics.c: Likewise. fortran * trans-openmp.c: Include omp-low.h. From-SVN: r203786
Andrew MacLeod committed -
* config/i386/i386.c (ix86_fixup_binary_operands): When both source operands are in memory, prefer to force non-matched operand 1 to the register. From-SVN: r203785
Uros Bizjak committed -
2013-10-17 Bernd Edlinger <bernd.edlinger@hotmail.de> PR libmudflap/58230 * testsuite/lib/mfdg.exp: Use C locale. From-SVN: r203783
Bernd Edlinger committed -
[gcc] 2013-10-17 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/58673 * config/rs6000/rs6000.c (rs6000_legitimate_address_p): Only restrict TImode addresses to single indirect registers if both -mquad-memory and -mvsx-timode are used. (rs6000_output_move_128bit): Use quad_load_store_p to determine if we should emit load/store quad. Remove using %y for quad memory addresses. * config/rs6000/rs6000.md (mov<mode>_ppc64, TI/PTImode): Add constraints to allow load/store quad on machines where TImode is not allowed in VSX registers. Use 'n' instead of 'F' constraint for TImode to load integer constants. [gcc/testsuite] 2013-10-17 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/58673 * gcc.target/powerpc/pr58673-1.c: New file to test whether -mquad-word + -mno-vsx-timode causes errors. * gcc.target/powerpc/pr58673-2.c: Likewise. From-SVN: r203782
Michael Meissner committed -
[gcc] 2013-10-17 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/58673 * config/rs6000/rs6000.c (rs6000_legitimate_address_p): Only restrict TImode addresses to single indirect registers if both -mquad-memory and -mvsx-timode are used. (rs6000_output_move_128bit): Use quad_load_store_p to determine if we should emit load/store quad. Remove using %y for quad memory addresses. * config/rs6000/rs6000.md (mov<mode>_ppc64, TI/PTImode): Add constraints to allow load/store quad on machines where TImode is not allowed in VSX registers. Use 'n' instead of 'F' constraint for TImode to load integer constants. [gcc/testsuite] 2013-10-17 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/58673 * gcc.target/powerpc/pr58673-1.c: New file to test whether -mquad-word + -mno-vsx-timode causes errors. * gcc.target/powerpc/pr58673-2.c: Likewise. From-SVN: r203781
Michael Meissner committed -
/cp 2013-10-17 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58596 * lambda.c (lambda_expr_this_capture): Handle NSDMIs in the cp_unevaluated_operand case. /testsuite 2013-10-17 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58596 * g++.dg/cpp0x/lambda/lambda-nsdmi5.C: New From-SVN: r203780
Paolo Carlini committed -
[gcc/] 2013-10-17 Kyrylo Tkachov <kyrylo.tkachov@arm.com> * config/aarch64/aarch64.c (aarch64_print_operand): Handle 'c'. [gcc/testsuite/] 2013-10-17 Kyrylo Tkachov <kyrylo.tkachov@arm.com> * gcc.target/aarch64/c-output-template.c: New testcase. * gcc.target/aarch64/c-output-template-2.c: Likewise. * gcc.target/aarch64/c-output-template-3.c: Likewise. From-SVN: r203779
Kyrylo Tkachov committed -
From-SVN: r203778
Marcus Shawcroft committed -
From-SVN: r203774
Michael Hudson-Doyle committed -
From-SVN: r203773
Michael Hudson-Doyle committed -
From-SVN: r203772
Ian Lance Taylor committed -
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Check_Dependency_Clause): Recognize the scenario where successful clause matching has depleted the available refinement items and the clause to match technically refines to null => null. 2013-10-17 Tristan Gingold <gingold@adacore.com> * exp_prag.adb (Expand_Pragma_Import_Or_Interface): Specify External_Name instead of Link_Name for the RTTI declaration. From-SVN: r203769
Arnaud Charlet committed -
2013-10-17 Yannick Moy <moy@adacore.com> * sem_res.adb (Resolve_Short_Circuit): Only generate expression-with-action when full expansion is set. 2013-10-17 Yannick Moy <moy@adacore.com> * debug.adb Remove obsolete comment. 2013-10-17 Thomas Quinot <quinot@adacore.com> * exp_ch4.adb (Process_Transient_Object.Find_Enclosing_Contexts): Avoid late insertion when expanding an expression with action nested within a transient block; Do not inconditionally generate a finalization call if the generated object is from a specific branch of a conditional expression. 2013-10-17 Pascal Obry <obry@adacore.com> * g-arrspl.adb: Ensure Finalize call is idempotent. * g-arrspl.adb (Finalize): Makes the call idempotent. From-SVN: r203768
Arnaud Charlet committed -
2013-10-17 Robert Dewar <dewar@adacore.com> * sem_prag.adb (Record_Possible_Body_Reference): Fix test for being in body. (Add_Constituent): Merged into Check_Refined_Global_Item. (Check_Matching_Constituent): A constituent that has the proper Part_Of option and comes from a private child or a sibling is now collected. (Check_Matching_Modes): Merged into Check_Refined_Global_Item. (Check_Refined_Global_Item): Code cleanup. (Collect_Constituent): New routine. (Inconsistent_Mode_Error): Moved out from Check_Matching_Modes. 2013-10-17 Ed Schonberg <schonberg@adacore.com> * freeze.adb (Check_Current_Instance, Process): Add RM reference and mention immutably limited types, when the current instance is illegal in Ada 2012. 2013-10-17 Ed Schonberg <schonberg@adacore.com> * sem_warn.adb (Check_Unused_Withs): If the main unit is a subunit, apply the check to the units mentioned in its context only. This provides additional warnings on with_clauses that are superfluous. 2013-10-17 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch3.adb (Analyze_Declarations): Emit an error message concerning state refinement when the spec defines at least one non-null abstract state and the body's SPARK mode is On. (Requires_State_Refinement): New routine. 2013-10-17 Robert Dewar <dewar@adacore.com> * sem_ch7.ads: Comment fixes. 2013-10-17 Robert Dewar <dewar@adacore.com> * sem_ch7.adb (Analyze_Package_Specification): Remove circuit for ensuring that a package spec requires a body for some other reason than that it contains the declaration of an abstract state. 2013-10-17 Tristan Gingold <gingold@adacore.com> * exp_ch11.adb (Expand_N_Raise_Expression): Fix call of Possible_Local_Raise. 2013-10-17 Thomas Quinot <quinot@adacore.com> * exp_pakd.adb (Expand_Bit_Packed_Element_Set): Unchecked conversion of Or_Rhs to Etype of New_Rhs is required only when the latter is the result of a byte swap operation. 2013-10-17 Thomas Quinot <quinot@adacore.com> * exp_dist.adb (Build_To_Any_Function): For a type with opaque representation that is not transmitted as an unconstrained value, use 'Write, not 'Output, to generate the opaque representation. 2013-10-17 Yannick Moy <moy@adacore.com> * sem_res.adb (Resolve_Short_Circuit): Only generate expression-with-action when full expansion is set. 2013-10-17 Yannick Moy <moy@adacore.com> * debug.adb Remove obsolete comment. 2013-10-17 Thomas Quinot <quinot@adacore.com> * exp_ch4.adb (Process_Transient_Object.Find_Enclosing_Contexts): Avoid late insertion when expanding an expression with action nested within a transient block; Do not inconditionally generate a finalization call if the generated object is from a specific branch of a conditional expression. 2013-10-17 Pascal Obry <obry@adacore.com> * g-arrspl.adb: Ensure Finalize call is idempotent. * g-arrspl.adb (Finalize): Makes the call idempotent. From-SVN: r203767
Arnaud Charlet committed -
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Is_Matching_Input): Account for the case where a state with a null refinement appears as the last input of a refinement clause. 2013-10-17 Robert Dewar <dewar@adacore.com> * sem_aux.ads, sem_aux.adb: Minor reformatting. From-SVN: r203766
Arnaud Charlet committed -
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com> * aspects.adb, aspects.ads, sem_prag.ads: Remove all entries for Refined_Pre from the various tables. * par-prag.adb: Remove the entry for Refined_Pre from the list of pragmas not needing special processing by the parser. * sem_ch13.adb (Analyze_Aspect_Specifications): Remove the processing for aspect Refined_Pre. (Check_Aspect_At_Freeze_Point): Remove the entry for aspect Refined_Pre. * sem_prag.adb (Analyze_Pragma): Refined_Pre is no longer a valid assertion kind. Remove the analysis of pragma Refined_Pre. (Analyze_Refined_Pragma): Update the comment on usage. (Find_Related_Subprogram_Or_Body): Update the comment on usage. Pragma Refined_Pre is no longer processed by this routine. (Is_Valid_Assertion_Kind): Refined_Pre is no longer a valid assertion kind. * snames.ads-tmpl: Remove predefined name Refined_Pre. Remove the pragma id for Refined_Pre. From-SVN: r203765
Hristian Kirtchev committed -
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com> * exp_util.adb, exp_util.ads (Entity_Of): Moved to Sem_Util. * sem_prag.adb (Analyze_Global_In_Decl_List): Mark a null item list as being analyzed. (Analyze_Global_List): Mark a null global list and multiple global items as being analyzed. (Analyze_Input_Item): Check the unit that defines the input variable or state, not the reference to it. * sem_util.ads, sem_util.adb (Entity_Of): Moved from Exp_Util. Ensure that the input has an entity. From-SVN: r203764
Hristian Kirtchev committed -
exp_util.adb (Get_Current_Value_Condition, [...]): Handle the case of expressions with actions * exp_util.adb (Insert_Actions):... 2013-10-17 Thomas Quinot <quinot@adacore.com> * exp_util.adb (Get_Current_Value_Condition, Set_Current_Value_Condition): Handle the case of expressions with actions * exp_util.adb (Insert_Actions): Handle the case of an expression with actions whose Actions list is empty. * exp_util.adb (Remove_Side_Effects.Side_Effect_Free): An expression with actions that has no Actions and whose Expression is side effect free is itself side effect free. * exp_util.adb (Remove_Side_Effects): Do not set an incorrect etype on temporary 'R' (Def_Id), which is in general an access to Exp_Type, not an Exp_Type. * sem_res.adb (Resolve): For an expression with actions, resolve the expression early. * sem_res.adb (Resolve_Expression_With_Actions): Rewrite an expression with actions whose value is compile time known and which has no actions into just its expression, so that its constant value is available downstream. * sem_res.adb (Resolve_Short_Circuit): Wrap the left operand in an expression with actions to contain any required finalization actions. * exp_ch4.adb (Expand_Expression_With_Actions): For an expression with actions returning a Boolean expression, ensure any finalization action is kept within the Actions list. * sem_warn.adb (Check_References, Check_Unset_Reference): add missing circuitry to handle expressions with actions. * checks.adb (Ensure_Valid): For an expression with actions, insert the validity check on the Expression. * sem_ch13.adb (Build_Static_Predicate.Get_RList): An expression with actions that has a non-empty Actions list is not static. An expression with actions that has an empty Actions list has the static ranges of its Expression. * sem_util.adb (Has_No_Obvious_Side_Effects): An expression with actions with an empty Actions list has no obvious side effects if its Expression itsekf has no obvious side effects. From-SVN: r203763
Thomas Quinot committed -
2013-10-17 Ed Schonberg <schonberg@adacore.com> * sem_aux.ads, sem_aux.adb (Is_Immutably_Limited_Type): Make predicate compatible with Ada 2012 definition (Is_Limited_View): New name for previous version of Is_Immutably_Limited_Type. Predicate is true for an untagged record type with a limited component. * exp_ch7.adb, exp_ch6.adb, exp_ch4.adb, exp_ch3.adb, exp_aggr.adb, sem_util.adb, sem_res.adb, sem_prag.adb, sem_attr.adb, sem_ch8.adb, sem_ch6.adb, sem_ch3.adb, exp_util.adb: Use Is_Limited_View * freeze.adb Use Is_Immutably_Limited_Type to check the legality of references to the current instance, Is_Limited_View otherwise. From-SVN: r203762
Ed Schonberg committed -
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications): Flag aspect Refined_Pre as not supported. * sem_prag.adb (Analyze_Pragma): Ignore pragma Refined_Pre. From-SVN: r203761
Hristian Kirtchev committed -
2013-10-17 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Validated_Access_Subprogram_Instance): According to AI05-288, actuals for access_to_subprograms must be subtype conformant with the generic formal. Previous to AI05-288 only mode conformance was required, but the AI is a binding interpretation that applies to previous versions of the language, 2013-10-17 Robert Dewar <dewar@adacore.com> * gnat_ugn.texi: Minor text correction. * ug_words: Add entry for -gnateu /IGNORE_UNRECOGNIZED. * vms_data.ads: Add /IGNORE_UNRECOGNIZED for -gnateu. 2013-10-17 Tristan Gingold <gingold@adacore.com> * impunit.adb (Non_Imp_File_Names_95): Add g-cppexc. 2013-10-17 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Analyze_Constituent): Move the check concerning option Part_Of to routine Check_Matching_Constituent. (Check_Matching_Constituent): Verify that an abstract state that acts as a constituent has the prope Part_Op option in its aspect/pragma Abstract_State. Account for the case when a constituent comes from a private child or private sibling. * sem_util.ads, sem_util.adb (Is_Child_Or_Sibling): New routine. From-SVN: r203760
Arnaud Charlet committed -
2013-10-17 Tristan Gingold <gingold@adacore.com> * g-cppexc.adb, g-cppexc.ads: New files. * gcc-interface/Makefile.in: Add g-cppexc when building zcx runtimes. From-SVN: r203757
Tristan Gingold committed
-