- 22 Oct, 2010 28 commits
-
-
charlet authored
* a-except-2005.adb (Rmsg_18): New message text. * a-except.adb (Rmsg_18): New message text. * atree.adb (List25): New function (Set_List25): New procedure * atree.ads (List25): New function (Set_List25): New procedure * einfo.adb (Static_Predicate): Is now a list (OK_To_Reference): Present in all entities * einfo.ads (Static_Predicate): Is now a list (OK_To_Reference): Applies to all entities * exp_ch13.adb (Build_Predicate_Function): Moved to Sem_Ch13 * sem_attr.adb (Bad_Attribute_For_Predicate): Call Bad_Predicated_Subtype_Use. * sem_case.ads, sem_case.adb: Major surgery to deal with predicated subtype case. * sem_ch13.adb (Build_Predicate_Function): Moved from Exp_Ch13 to Sem_Ch13. (Build_Static_Predicate): New procedure handles static predicates. * sem_ch3.adb (Analyze_Subtype_Declaration): Delay freeze on subtype with no constraint if ancestor subtype has predicates. (Analyze_Variant_Part): New calling sequence for Analyze_Choices * sem_ch4.adb (Junk_Operand): Don't complain about OK_To_Reference entity. (Analyze_Case_Expression): New calling sequence for Analyze_Choices * sem_ch5.adb (Analyze_Case_Statement): New calling sequence for Analyze_Choices. * sem_util.ads, sem_util.adb (Bad_Predicated_Subtype_Use): New procedure * types.ads (PE_Bad_Predicated_Generic_Type): Replaces PE_Bad_Attribute_For_Predicate. * atree.h: Add definition of List25. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165828 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* gnatlink.adb (Process_Binder_File): Remove CLI-specific code, now moved to dotnet-ld. (Gnatlink): Remove CLI-specific code, moved to dotnet-ld * bindgen.adb (Gen_Object_Files_Options): Do not issue -L switches with the .NET compiler, useless and unsupported. 2010-10-22 Robert Dewar <dewar@adacore.com> * sem_util.ads (Get_Num_Lit_From_Pos): Fix errors in documentation, this returns a Node_Id for a reference to the entity, not the entity itself! 2010-10-22 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Iteration_Scheme): use Insert_Actions when bounds require a temporary. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165827 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* sem_ch4.adb: Minor reformatting. * sinfo.ads: Minor comment fixes for Ada 2012 syntax. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165826 138bc75d-0d04-0410-961f-82ee72b054a4
-
irar authored
PR tree-optimization/46126 * tree-vect-stmts.c (vect_analyze_stmt): Pass NODE to vectorizable_shift in case of basic block vectorization. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165825 138bc75d-0d04-0410-961f-82ee72b054a4
-
jsm28 authored
* target.def (handle_ofast): Remove hook. (target_option.optimization): Change to target_option.optimization_table. * doc/tm.texi.in (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. (CAN_DEBUG_WITHOUT_FP): Remove. * doc/tm.texi: Regenerate. * opts.c (maybe_default_option, maybe_default_options, default_options_table): New. (default_options_optimization): Take extra parameters. Don't assert that global_options and global_options_set are in use. Use maybe_default_options. (decode_options): Pass extra parameters to default_options_optimization. * common.opt (falign-loops): Use value 0 with Var. (frerun-cse-after-loop, ftree-ter): Remove Init. * system.h (CAN_DEBUG_WITHOUT_FP, TARGET_HANDLE_OFAST, TARGET_OPTION_OPTIMIZATION): Remove. * targhooks.c (empty_optimization_table): New. * targhooks.h (empty_optimization_table): Declare. * toplev.c (process_options): Don't set flag_rerun_cse_after_loop. * config/alpha/alpha.c (alpha_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/alpha/alpha.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/arm/arm.c (arm_option_optimization: Change to arm_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/arm/arm.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/avr/avr.c (avr_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/avr/avr.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/cris/cris.c (cris_option_optimization): Change to cris_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/crx/crx.c (crx_option_optimization): Change to crx_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/crx/crx.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/fr30/fr30.c (fr30_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/fr30/fr30.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/frv/frv.c (frv_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/frv/frv.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/h8300/h8300.c (h8300_option_optimization): Change to h8300_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/h8300/h8300.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/i386/i386.c (ix86_option_optimization): Change to ix86_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/i386/sol2-10.h (SUBTARGET_OPTIMIZATION_OPTIONS): Define as initializer. * config/ia64/ia64.c (ia64_option_optimization): Change to ia64_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/ia64/ia64.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/ia64/vms.h (SUBTARGET_OPTIMIZATION_OPTIONS): Define as initializer. * config/iq2000/iq2000.c (iq2000_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/iq2000/iq2000.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/lm32/lm32.c (lm32_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/lm32/lm32.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/m32r/m32r.c (m32r_option_optimization): Change to m32r_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/m32r/m32r.h (SUBTARGET_OPTIMIZATION_OPTIONS, CAN_DEBUG_WITHOUT_FP): Remove. * config/mcore/mcore.c (mcore_option_optimization): Change to mcore_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/mep/mep.c (mep_option_optimization): Change to mep_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/mep/mep.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/microblaze/microblaze.c (microblaze_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/microblaze/microblaze.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/mips/mips.c (mips_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/mips/mips.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/mmix/mmix.c (mmix_option_optimization): Change to mmix_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/mmix/mmix.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/mn10300/mn10300.c (mn10300_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/mn10300/mn10300.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/pa/pa.c (pa_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/pa/pa.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/pdp11/pdp11.c (pdp11_option_optimization): Change to pdp11_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/picochip/picochip.c (picochip_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/picochip/picochip.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/rs6000/rs6000.c (rs6000_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/rs6000/rs6000.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/rx/rx.c (rx_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/rx/rx.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/s390/s390.c (s390_option_optimization): Change to s390_option_optimization_table. (s390_option_override): Update comment. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/s390/s390.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/score/score.c (score_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/score/score.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/sh/sh.c (sh_option_optimization): Change to sh_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. (sh_option_override): Set MASK_SAVE_ALL_TARGET_REGS here. (sh_option_override, expand_block_move, multcosts, find_barrier, barrier_align): Use optimize_size instead of TARGET_SMALLCODE. * config/sh/sh.h (CAN_DEBUG_WITHOUT_FP): Remove. (LOOP_ALIGN, TRAMPOLINE_ALIGNMENT, MOVE_BY_PIECES_P, STORE_BY_PIECES_P, SH_DYNAMIC_SHIFT_COST): Use optimize_size instead of TARGET_SMALLCODE. * config/sh/sh.opt (mspace): Make into an alias for -Os. * config/sparc/sparc.c (sparc_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/sparc/sparc.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/stormy16/stormy16.c (xstorym16_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE): New. * config/stormy16/stormy16.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/v850/v850.c (v850_option_optimization): Change to v850_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/v850/v850.h (CAN_DEBUG_WITHOUT_FP): Remove. * config/xtensa/xtensa.c (xtensa_option_optimization): Change to xtensa_option_optimization_table. (TARGET_OPTION_OPTIMIZATION): Change to TARGET_OPTION_OPTIMIZATION_TABLE. * config/xtensa/xtensa.h (CAN_DEBUG_WITHOUT_FP): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165823 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* par-ch5.adb: Minor reformatting. * gcc-interface/Make-lang.in: Update dependencies. 2010-10-22 Robert Dewar <dewar@adacore.com> * a-except.adb, a-except-2005.adb: Add new Rcheck entry. * exp_ch13.adb (Add_Call): Make sure subtype is marked with Has_Predicates set to True if it inherits predicates. * sem_attr.adb: Handle 'First/'Last/'Range for predicated types * types.ads (PE_Bad_Attribute_For_Predicate): New reason code * types.h: Add new Rcheck entry. * einfo.ads, einfo.adb (Static_Predicate): New field. Minor code reorganization (file float routines in proper section) Fix bad field name in comments. 2010-10-22 Robert Dewar <dewar@adacore.com> * sem_eval.adb (Subtypes_Statically_Compatible): Check null exclusion case. 2010-10-22 Vincent Celier <celier@adacore.com> * prj-conf.adb (Get_Config_Switches): Detect if there is at least one declaration of IDE'Compiler_Command for one of the language in the main project. (Do_Autoconf): ...
-
iains authored
CFStrings for Darwin gcc/testsuite: Based on the CFString implementation in FSF apple/trunk branch. * lib/objc-dg.exp (objc-dg-runtest): Merge flags and additional flags so that the latter can be used in dg-skip and dg-xfail clauses. * lib/obj-c++-dg.exp (obj-c++-dg-runtest): Likewise. * obj-c++.dg/template-4.mm: Don't use CFStrings on Darwin. Update test to use dg-additional-files for Object1. * obj-c++.dg/const-str-7.mm: Don't use CFStrings on Darwin. Update test to use dg-additional-files for Object1, move to torture/strings/. * obj-c++.dg/const-str-4.mm: Likewise. * obj-c++.dg/const-str-3.mm: Likewise. * obj-c++.dg/const-str-8.mm: Likewise. * obj-c++.dg/const-str-9.mm: Likewise. * obj-c++.dg/const-str-10.mm: Likewise. * obj-c++.dg/const-str-10.mm: Likewise. * obj-c++.dg/const-str-1.mm: Don't use CFStrings on Darwin. Update test to use dg-additional-files for Object1, move to strings/. * obj-c++.dg/const-str-2.mm: Likewise. * obj-c++.dg/const-str-5.mm: Likewise. * obj-c++.dg/const...
-
iains authored
CFStrings for Darwin. gcc: Based on the CFString implementation in FSF apple/trunk branch. * target.def (objc_construct_string): New Hook. * doc/tm.texi (objc_construct_string): Document. * doc/tm.texi.in (TARGET_OBJC_CONSTRUCT_STRING): New. * config/t-darwin: Amend build rules for darwin.o. * config/darwin.opt: Add cfstrings flags. * config/darwin-c.c: Define __CONSTANT_CFSTRINGS__. (darwin_objc_construct_string): New. * config/i386/darwin.h (SUBTARGET_INIT_BUILTINS): Define. * config/i386/i386.c (ix86_init_builtins): Add SUBTARGET_INIT_BUILTINS. * config/darwin-protos.h (darwin_init_cfstring_builtins): New prototype. (darwin_fold_builtin): Likewise. (darwin_build_constant_cfstring): Likewise. (darwin_objc_construct_string): Likewise. (darwin_cfstring_p): Likewise. (darwin_enter_string_into_cfstring_table): Likewise. * config/rs6000/darwin.h (SUBTARGET_INIT_BUILTINS) Update for CFString. * config/darwin.c (darwin_running_cxx): New var. (machopic_select_section): Return cfstring_co...
-
charlet authored
* sem_ch3.adb (Check_Or_Process_Discriminants): In Ada 2012, allow limited tagged types to have defaulted discriminants. Customize the error message for the Ada 2012 case. (Process_Discriminants): In Ada 2012, allow limited tagged types to have defaulted discriminants. Customize the error message for the Ada 2012 case. * sem_ch6.adb (Create_Extra_Formals): Suppress creation of the extra formal for out formals of discriminated types in the case where the underlying type is a limited tagged type. * exp_attr.adb (Expand_N_Attribute_Reference, case Attribute_Constrained): Return True for 'Constrained when the underlying type of the prefix is a limited tagged type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165819 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* sem_ch3.adb (Complete_Private_Subtype): The full view of the subtype may already have a rep item chain inherited from the full view of the base type, so do not overwrite it when propagating rep items from the partial view of the subtype. * sem_ch3.adb: Minor code reorganization. Minor reformatting. 2010-10-22 Sergey Rybin <rybin@adacore.com> * gnat_ugn.texi (gnatmetric): Remove description of debug option. 2010-10-22 Tristan Gingold <gingold@adacore.com> * adaint.c (__gnat_number_of_cpus): Add implementation for VMS. 2010-10-22 Ed Schonberg <schonberg@adacore.com> * par-ch5.adb: Set properly starting sloc of loop parameter. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165818 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* sem_util.adb (May_Be_Lvalue): An actual in a function call can be an lvalue in Ada2012, if the function has in-out parameters. 2010-10-22 Robert Dewar <dewar@adacore.com> * cstand.adb, einfo.adb, exp_attr.adb, sem_prag.adb, sem_vfpt.adb, sem_ch10.adb: Minor reformatting. 2010-10-22 Sergey Rybin <rybin@adacore.com> * gnat_ugn.texi: Remove most of the content of gnatcheck chapter. 2010-10-22 Ed Schonberg <schonberg@adacore.com> * sem_attr.adb: Handle indexed P'old. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165817 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* cstand.adb (Build_Float_Type): Set Float_Rep according to platform. * einfo.ads (Float_Rep): New attribute. (Float_Rep_Kind): Move from body. Add comments. * einfo.adb (Float_Rep_Kind): Move to spec (Float_Rep): Now a real field instead of local function. (Set_Float_Rep): New procedure to set floating point representation (Set_Vax_Float): Remove. (Write_Entity_Flags): Remove Vax_Float flag. (Write_Field10_Name): Add E_Floating_Point_Type case for Float_Rep. * exp_attr.adb (Attribute_Valid): Use case statement for representation specific processing. * sem_ch3.adb (Build_Derived_Numeric_Type, Floating_Point_Type_Declaration): Set Float_Rep instead of Vax_Float attribute. * sem_util.ads, sem_util.adb (Is_AAMP_Float): Remove. * sem_vfpt.adb (Set_D_Float, Set_F_Float, Set_G_Float, Set_IEEE_Long, Set_IEEE_Short): Set Float_Rep instead of Vax_Float attribute. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165816 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* sprint.adb: Minor reformatting. 2010-10-22 Robert Dewar <dewar@adacore.com> * exp_ch3.adb (Expand_N_Object_Declaration): Do required predicate checks. * sem_ch3.adb (Complete_Private_Subtype): Propagate predicates to full view. * sem_ch6.adb (Invariants_Or_Predicates_Present): New name for Invariants_Present. (Process_PPCs): Handle predicates generating post conditions * sem_util.adb (Is_Partially_Initialized_Type): Add Include_Null parameter. * sem_util.ads (Is_Partially_Initialized_Type): Add Include_Null parameter. 2010-10-22 Sergey Rybin <rybin@adacore.com> * gnat_ugn.texi (gnatelim): Add description for '--ignore' option 2010-10-22 Thomas Quinot <quinot@adacore.com> * sem_prag.adb (Check_First_Subtype): Specialize error messages for case where argument is not a type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165815 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* exp_ch5.adb, par-ch4.adb, par-ch5.adb, sem_ch5.adb, sinfo.ads: Minor reformatting. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165814 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* a-locale.adb: Minor code clean up. 2010-10-22 Thomas Quinot <quinot@adacore.com> * exp_ch4.adb: Minor code reorganization and factoring. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165813 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* exp_ch5.adb, sem_ch5.adb, sinfo.ads, snames.ads-tmpl, par-ch5.adb: Minor reformatting. 2010-10-22 Geert Bosch <bosch@adacore.com> * stand.ads: Fix typo in comment. 2010-10-22 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb: Enable in-out parameter for functions. 2010-10-22 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Analyze_Quantified_Expression): Handle properly loop iterators that are transformed into container iterators after analysis. * exp_ch4.adb (Expand_N_Quantified_Expression): Handle properly both iterator forms before rewriting as a loop. 2010-10-22 Brett Porter <porter@adacore.com> * a-locale.adb, a-locale.ads, locales.c: New files. * Makefile.rtl: Add a-locale * gcc-interface/Makefile.in: Add locales.c git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165812 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* sem_util.ads, sem_util.adb, sem_aux.ads, sem_aux.adb (Is_Generic_Formal): Moved from Sem_Util to Sem_Aux. 2010-10-22 Ed Schonberg <schonberg@adacore.com> * exp_ch5.adb (Expand_Iterator_Loop): New subprogram, implements new iterator forms over arrays and containers, in loops and quantified expressions. * exp_util.adb (Insert_Actions): include N_Iterator_Specification. * par-ch4.adb (P_Quantified_Expression): Handle iterator specifications. * par-ch5.adb (P_Iterator_Specification): New subprogram. Modify P_Iteration_Scheme to handle both loop forms. * sem.adb: Handle N_Iterator_Specification. * sem_ch5.adb, sem_ch5.ads (Analyze_Iterator_Specification): New subprogram. * sinfo.adb, sinfo.ads: New node N_Iterator_Specification. N_Iteration_Scheme can now include an Iterator_Specification. Ditto for N_Quantified_Expression. * snames.ads-tmpl: Add names Cursor, Element, Element_Type, No_Element, and Previous, to support iterators over predefined containers. * sprint.adb: Handle N_Iterator_Specification. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165811 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* sem_prag.adb, sem_ch12.adb, sem_util.adb, sem_util.ads (Is_Generic_Formal): Move from body of Sem_Ch12 to Sem_Util. (Check_Arg_Is_Local_Name): Fix check in the case of a pragma appearing immediately after a library unit. (Analyze_Pragma, case Preelaborable_Initialization): Pragma may apply to a formal derived type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165810 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* gcc-interface/Make-lang.in: Remove ttypef.ads * checks.adb: Use Machine_Mantissa_Value and Machine_Radix_Value instead of Machine_Mantissa and Machine_Radix. * cstand.adb (P_Float_Range): Directly print the Type_Low_Bound and Type_High_Bound of the type, instead of choosing constants from Ttypef. (Set_Float_Bounds): Compute the bounds based on Machine_Radix_Value, Machine_Emax_Value and Machine_Mantissa_Value instead of special-casing each type. * einfo.ads (Machine_Emax_Value, Machine_Emin_Value, Machine_Mantissa_Value, Machine_Radix_Value, Model_Emin_Value, Model_Epsilon_Value, Model_Mantissa_Value, Model_Small_Value, Safe_Emax_Value, Safe_First_Value, Safe_Last_Value): Add new synthesized floating point attributes. * einfo.adb (Float_Rep): Determine the kind of floating point representation used for a given type. (Machine_Emax_Value, Machine_Emin_Value, Machine_Mantissa_Value, Machine_Radix_Value): Implement based on Float_Rep_Kind of a type and the number of digits in the type. (Model_Emin_Value, Model_Epsilon_Value, Model_Mantissa_Value, Model_Small_Value, Safe_Emax_Value, Safe_First_Value, Safe_Last_Value): Implement new synthesized floating point attributes based on the various machine attributes. * eval_fat.ads: Remove Machine_Mantissa and Machine_Radix. * eval_fat.adb (Machine_Mantissa, Machine_Radix): Remove. Use the Machine_Mantissa_Value and Machine_Radix_Value functions instead. * exp_vfpt.adb (VAXFF_Digits, VAXDF_Digits, VAXFG_Digits): Define local constants, instead of using constants from Ttypef. * gnat_rm.texi: Reword comments referencing Ttypef. * sem_attr.ads: Reword comment referencing Ttypef. * sem_attr.adb (Float_Attribute_Universal_Integer, Float_Attribute_Universal_Real): Remove. (Attribute_Machine_Emax, Attribute_Machine_Emin, Attribute_Machine_Mantissa, Attribute_Model_Epsilon, Attribute_Model_Mantissa, Attribute_Model_Small, Attribute_Safe_Emax, Attribute_Safe_First, Attribute_Safe_Last, Model_Small_Value): Use attributes in Einfo instead of Float_Attribute_Universal_Real and Float_Attribute_Universal_Integer and all explicit constants. * sem_util.ads, sem_util.adb (Real_Convert): Remove. * sem_vfpt.adb (VAXDF_Digits, VAXFF_Digits, VAXGF_Digits, IEEEL_Digits, IEEES_Digits): New local constants, in order to remove dependency on Ttypef. * tbuild.ads (Make_Float_Literal): New function. * tbuild.adb (Make_Float_Literal): New function to create a new N_Real_Literal, constructing it as simple as possible for best output of constants in -gnatS. * ttypef.ads: Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165808 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* checks.adb (Apply_Predicate_Check): Remove attempt at optimization when subtype is the same, caused legitimate checks to be missed. * exp_ch13.adb (Build_Predicate_Function): Use Nearest_Ancestor to get inheritance from right entity. * freeze.adb (Freeze_Entity): Use Nearest_Ancestor to freeze in the derived type case if the ancestor type has predicates. * sem_aux.ads, sem_aux.adb (Nearest_Ancestor): New function. * sem_prag.adb (Check_Enabled): Minor code reorganization. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165807 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165806 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* einfo.ads (Declaration_Node): Clarify documentation, in particular regarding what is returned for subprogram entities. 2010-10-22 Arnaud Charlet <charlet@adacore.com> * exp_attr.adb (Make_Range_Test): Generate a Range node instead of explicit comparisons, generates simpler expanded code. * a-except-2005.adb (Rcheck_06_Ext): New. * gcc-interface/trans.c (gigi, gnat_to_gnu): Handle validity checks like range checks. * gcc-interface/Make-lang.in: Update dependencies. 2010-10-22 Robert Dewar <dewar@adacore.com> * sem_ch3.adb (Array_Type_Declaration): Error for subtype wi predicate for index type (Constrain_Index): Error of subtype wi predicate in index constraint * sem_ch9.adb (Analyze_Entry_Declaration): Error of subtype wi predicate in entry family. * sem_res.adb (Resolve_Slice): Error of type wi predicate in slice. 2010-10-22 Javier Miranda <miranda@adacore.com> * sem_util.ads, sem_util.adb (Collect_Parents): New subprogram. (Original_Corresponding_Operation): New subprogram. (Visible_Ancestors): New subprogram. * sem_ch6.adb (New_Overloaded_Entity): Handle new case of dispatching operation that overrides a hidden inherited primitive. * sem_disp.adb (Find_Hidden_Overridden_Primitive): New subprogram. (Check_Dispatching_Operation): if the new dispatching operation does not override a visible primtive then check if it overrides some hidden inherited primitive. 2010-10-22 Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Analyze_With_Clause): If the parent_unit_name in a with clause is a child unit that denotes a renaming, replace the parent_unit_name with a reference to the renamed unit, because the prefix is irrelevant to subsequent visibility.. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165805 138bc75d-0d04-0410-961f-82ee72b054a4
-
charlet authored
* einfo.ads, einfo.adb (Has_Predicates): Flag is now on all entities (simplifies code). * exp_ch13.adb (Build_Predicate_Function): Output info msgs for inheritance. * sem_ch13.adb (Analyze_Aspect_Specifications): Make sure we have a freeze node for entities for which a predicate is specified. (Analyze_Aspect_Specifications): Avoid duplicate calls * sem_ch3.adb (Analyze_Full_Type_Declaration): Remove attempt to avoid duplicate calls to Analye_Aspect_Specifications. 2010-10-22 Thomas Quinot <quinot@adacore.com> * a-exextr.adb, atree.ads, freeze.adb: Minor reformatting. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165804 138bc75d-0d04-0410-961f-82ee72b054a4
-
nicola authored
* objc-act.c (get_objc_string_decl): Use a switch instead of a chain of ifs. Use gcc_unreachable instead of abort. (add_objc_string): Same change. (generate_protocol_list): Same change - twice. (synth_id_with_class_suffix): Same change. (build_keyword_selector): Same change - twice. (objc_build_message_expr): Same change. (objc_build_selector_expr): Same change. (check_methods): Same change - and added missing gcc_unreachable for default case. (check_methods_accessible): Same change - twice, and added missing gcc_unreachable for default case in one of them. (start_class): Same change - and added missing gcc_unreachable for default case. (continue_class): Same change. (objc_gen_property_data): Same change. (finish_class): Same change. (encode_type_qualifiers): Added missing gcc_unreachable. (encode...
-
mshawcroft authored
* gcc.target/arm/synchronize.c: Permit dmb or mcr in assembler scan. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165802 138bc75d-0d04-0410-961f-82ee72b054a4
-
froydnj authored
TYPE_STUB_DECL instead of TREE_CHAIN. * config/i386/i386.c (ix86_build_builtin_va_list_abi): Likewise. * config/rs6000/rs6000.c (rs6000_build_builtin_va_list): Likewise. * config/s390/s390.c (s390_build_builtin_va_list): Likewise. * config/sh/sh.c (sh_build_builtin_va_list): Likewise. * config/spu/spu.c (spu_build_builtin_va_list): Likewise. * config/stormy16/stormy16.c (xstormy16_build_builtin_va_list): Likewise. * config/xtensa/xtensa.c (xtensa_build_builtin_va_list): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165800 138bc75d-0d04-0410-961f-82ee72b054a4
-
jiez authored
(copy_blkmode_from_reg): Likewise. (read_complex_part): Likewise. (expand_expr_real_1): Calculate packedp and pass it to extract_bit_field. * expr.h (extract_bit_field): Update declaration. * calls.c (store_unaligned_arguments_into_pseudos): Update call to extract_bit_field. * expmed.c (extract_fixed_bit_field): Update calls to extract_fixed_bit_field. (store_split_bit_field): Likewise. (extract_bit_field_1): Add new argument packedp. (extract_bit_field): Add new argument packedp. (extract_fixed_bit_field): Add new argument packedp and let packed attribute override volatile. * stmt.c (expand_return): Update call to extract_bit_field. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165799 138bc75d-0d04-0410-961f-82ee72b054a4
-
gccadmin authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165798 138bc75d-0d04-0410-961f-82ee72b054a4
-
- 21 Oct, 2010 12 commits
-
-
paolo authored
2010-10-21 Paolo Carlini <paolo.carlini@oracle.com> PR c++/46117 * call.c (add_function_candidate): Don't use TREE_VALUE on null parmnode. /testsuite 2010-10-21 Paolo Carlini <paolo.carlini@oracle.com> PR c++/46117 * g++.dg/parse/crash57.C: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165794 138bc75d-0d04-0410-961f-82ee72b054a4
-
uros authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165793 138bc75d-0d04-0410-961f-82ee72b054a4
-
froydnj authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165792 138bc75d-0d04-0410-961f-82ee72b054a4
-
froydnj authored
of gcc_checking_assert. * sel-sched.c (code_motion_process_successors): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165790 138bc75d-0d04-0410-961f-82ee72b054a4
-
ebotcazou authored
when stopping because of a different locus on edge or insn. (try_optimize_cfg): Add comment. * cfgrtl.c (rtl_merge_blocks): Tweak log message. If the destination block is a forwarder block, propagate locus on the edge. (cfg_layout_merge_blocks): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165789 138bc75d-0d04-0410-961f-82ee72b054a4
-
uros authored
* config/i386/i386.md (*pushti2): New insn pattern. (pushti2 splitter): New insn splitter. (*push<mode>2): Macroize insn pattern from *push{di,ti}2 using DWI mode iterator. testsuite/ChangeLog: PR target/45946 * gcc.target/i386/pr45946.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165787 138bc75d-0d04-0410-961f-82ee72b054a4
-
pkoning authored
const_immediate_operand, expand_shift_operand, immediate15_operand): Delete * config/pdp11/pdp11.c: Ditto. * config/pdp11/pdp11.h (REG_CLASS_FROM_LETTER, CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P, EXTRA_CONSTRAINT): Delete. * config/pdp11/pdp11.md (various): Use standard constraints instead of removed ones. * config/pdp11/constraints.md: New file. * config/pdp11/predicates.md: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165784 138bc75d-0d04-0410-961f-82ee72b054a4
-
meibf authored
PR c/45834 * alias.c (true_dependence_1): Remove obsolete check for QImode. (may_alias_p): Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165781 138bc75d-0d04-0410-961f-82ee72b054a4
-
jamborm authored
PR tree-optimization/45875 * tree.c (get_binfo_at_offset): Remove initial zero offset test. * testsuite/g++.dg/ipa/pr45875.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165780 138bc75d-0d04-0410-961f-82ee72b054a4
-
froydnj authored
variables. (create_new_def_for): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165779 138bc75d-0d04-0410-961f-82ee72b054a4
-
nickc authored
Replace GET_CODE (foo) == REG with REG_P (foo). Likewise for MEM, CONST_INT and CONST_DOUBLE. (targetm): Move initialization to end of file. (print_operand): Rename to mn10300_print_operand. (print_operand_address): Rename to mn10300_print_operand_address. (can_use_return_insn): Rename to mn10300_can_use_return_insn. (expand_prologue): Rename to mn10300_expand_prologue. (expand_epilogue): Rename to mn10300_expand_epilogue. (initial_offset): Rename to mn10300_initial_offset. (function_arg): Rename to mn10300_function_arg. (mask_ok_for_mem_btst): Rename to mn10300_mask_ok_for_mem_btst. (symbolic_operand): Rename to mn10300_symbolic_operand. (legitimize_pic_address): Rename to mn10300_legitimize_pic_address. (legitimate_pic_operand_p): Rename to mn10300_legitimate_pic_operand_p. * config/mn10300/mn10300-protos.h: Update prototypes. * config/mn10300/mn10300.h: Fold code to 80-character width. Replace GET_CODE (foo) == REG with REG_P (foo). Likewise for MEM, CONST_INT and CONST_DOUBLE. (CPP_SPEC): Move to... (TARGET_CPU_CPP_BUILTINS): ... here. * config/mn10300/mn10300.md: Fold code to 80-character width. Replace GET_CODE (foo) == REG with REG_P (foo). Likewise for MEM, CONST_INT and CONST_DOUBLE. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165778 138bc75d-0d04-0410-961f-82ee72b054a4
-
irar authored
PR tree-optimization/46049 PR tree-optimization/46052 * tree-vectorizer.h (enum stmt_vec_info_type): Add new value for shift. (vect_get_slp_defs): Add arguments. * tree-vect-loop.c (vect_create_epilog_for_reduction): Pass scalar operands to vect_get_slp_defs. (vectorizable_reduction): Fix comment, pass scalar operands to vect_get_slp_defs. * tree-vect-stmts.c (vect_get_vec_def_for_operand): Use operand's type to determine number of units in the created vector. (vect_get_vec_defs): Pass scalar operands to vect_get_slp_defs. (vectorizable_conversion): Fix comment. (vectorizable_shift): New function. (vectorizable_operation): Move code that handles shifts to vectorizable_shift. (vectorizable_type_demotion): Fix comment, pass scalar operands to vect_get_slp_defs. (vectorizable_type_promotion, vectorizable_store): Likewise. (vectorizable_condition): Fix comment. (vect_analyze_stmt): Call vectorizable_shift. (vect_transform_stmt): Likewise. * tree-vect-slp.c (vect_get_constant_vectors): Add new argument. Use it as the operand to create vectors for, except reduction initial definition and store. Use operands type. (vect_get_slp_defs): Add new arguments. Pass them to vect_get_constant_vectors. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165777 138bc75d-0d04-0410-961f-82ee72b054a4
-