platform/upstream/linaro-gcc.git
12 years agoFix powerpc breakage
meissner [Mon, 1 Oct 2012 21:47:36 +0000 (21:47 +0000)]
Fix powerpc breakage

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191942 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Dehao Chen <dehao@google.com>
dehao [Mon, 1 Oct 2012 16:33:23 +0000 (16:33 +0000)]
2012-10-01  Dehao Chen  <dehao@google.com>

PR middle-end/54759
* gcc/tree-vect-loop-manip.c (slpeel_make_loop_iterate_ntimes): Use
LOCATION_LOCUS to compare with UNKNOWN_LOCATION.
(slpeel_tree_peel_loop_to_edge): Likewise.
* gcc/tree-vectorizer.c (vectorize_loops): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191931 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Daniel Krugler <daniel.kruegler@googlemail.com>
paolo [Mon, 1 Oct 2012 16:02:57 +0000 (16:02 +0000)]
2012-10-01  Daniel Krugler  <daniel.kruegler@googlemail.com>

* include/std/type_traits (result_of): Provide "SFINAE-friendly"
(see N3436) implementation.
* testsuite/20_util/result_of/sfinae_friendly_1.cc: New.
* testsuite/20_util/result_of/sfinae_friendly_2.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Tweak
dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191930 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Andrew MacLeod <amacleod@redhat.com>
amacleod [Mon, 1 Oct 2012 15:50:09 +0000 (15:50 +0000)]
2012-10-01  Andrew MacLeod  <amacleod@redhat.com>

PR target/54087
* optabs.c (expand_atomic_fetch_op_no_fallback): New.  Factored code
from expand_atomic_fetch_op.
(expand_atomic_fetch_op):  Try atomic_{add|sub} operations in terms of
the other one if direct opcode fails.
* testsuite/gcc.dg/pr54087.c:  New testcase for atomic_sub ->
atomic_add when atomic_sub fails.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191929 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR rtl-optimization/54457
uros [Mon, 1 Oct 2012 15:00:41 +0000 (15:00 +0000)]
    PR rtl-optimization/54457
        * simplify-rtx.c (simplify_subreg):
Simplify (subreg:M (op:N ((x:N) (y:N)), 0)
      to (op:M (subreg:M (x:N) 0) (subreg:M (x:N) 0)), where
the outer subreg is effectively a truncation to the original mode M.

testsuite/ChangeLog:

        PR rtl-optimization/54457
        * gcc.target/i386/pr54457.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191928 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 1 Oct 2012 14:15:00 +0000 (14:15 +0000)]
2012-10-01  Richard Guenther  <rguenther@suse.de>

* builtins.def (ATTR_MATHFN_FPROUNDING): Do not use no-vops
with -frounding-math.
* builtin-attrs.def (ATTR_PURE_NOTHROW_NOVOPS_LIST): Remove.
(ATTR_PURE_NOTHROW_NOVOPS_LEAF_LIST): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191925 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree.h (copy_mem_ref_info): Delete.
ebotcazou [Mon, 1 Oct 2012 13:40:35 +0000 (13:40 +0000)]
* tree.h (copy_mem_ref_info): Delete.
* tree-ssa-address.c (copy_mem_ref_info): Likewise.
(maybe_fold_tmr): Copy flags manually.
* tree-ssa-loop-im.c (simple_mem_ref_in_stmt): Rewrite.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191924 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Vincent Pucci <pucci@adacore.com>
charlet [Mon, 1 Oct 2012 13:23:22 +0000 (13:23 +0000)]
2012-10-01  Vincent Pucci  <pucci@adacore.com>

* sem_aggr.adb (New_Copy_Tree_And_Copy_Dimensions): New routine.
(Resolve_Record_Aggregate): New_Copy_Tree calls replaced by
New_Copy_Tree_And_Copy_Dimensions calls. Move_Dimensions call
replaced by Copy_Dimensions call.
* sem_dim.adb (Analyze_Dimension_Component_Declaration): Don't
remove the dimensions of expression in component declaration anymore.
(Copy_Dimensions): New routine.
(Move_Dimensions): Add call to Copy_Dimensions.
* sem_dim.ads (Copy_Dimensions): New routine.
(Move_Dimensions): Spec moved to body of Sem_Dim.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191922 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 1 Oct 2012 13:21:34 +0000 (13:21 +0000)]
2012-10-01  Ed Schonberg  <schonberg@adacore.com>

* checks.adb (Apply_Predicate_Check): If the predicate is a
static one and the operand is static, evaluate the predicate at
compile time.
* sem_eval.ads, sem_eval.adb (Eval_Static_Predicate_Check): new
procedure, to evaluate a static predicate check whenever possible.
* sem_res.adb (Resolve_Type_Conversion): Apply predicate check
on the conversion if the target type has predicates.

2012-10-01  Vincent Pucci  <pucci@adacore.com>

* sem_dim.adb (Has_Symbols): Complain if parameter Symbol has been
provided by the user in the dimension output call.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191921 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Robert Dewar <dewar@adacore.com>
charlet [Mon, 1 Oct 2012 13:18:22 +0000 (13:18 +0000)]
2012-10-01  Robert Dewar  <dewar@adacore.com>

* checks.adb (Apply_Divide_Checks): New name for
Apply_Divide_Check (Minimize_Eliminate_Overflow_Checks):
Add code to handle division (and rem and mod) properly.
(Apply_Division_Check): New procedure (Apply_Divide_Checks):
Use Apply_Division_Check (Apply_Divide_Checks): Use
Apply_Arithmetic_Overflow_Minimized_Eliminated.
* checks.ads (Apply_Divide_Checks): New name for
Apply_Divide_Check, also add clearer documentation for this
routine and put in alfa order.
* exp_ch4.adb (Apply_Divide_Checks): New name for
Apply_Divide_Check.
* s-bignum.adb (To_Bignum): Handle largest negative integer
properly.
* sem.adb (Analyze): Handle overflow suppression correctly
(Analyze_List): Handle overflow suppression correctly
* sem_res.adb (Analyze_And_Resolve): Handle overflow suppression
correctly.

2012-10-01  Vasiliy Fofanov  <fofanov@adacore.com>

* s-oscons-tmplt.c, g-socket.ads: Revert previous change, breaks VMS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191920 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Robert Dewar <dewar@adacore.com>
charlet [Mon, 1 Oct 2012 13:15:21 +0000 (13:15 +0000)]
2012-10-01  Robert Dewar  <dewar@adacore.com>

* checks.adb (Minimize_Eliminate_Overflow_Checks): Changes
for exponentiation.
* exp_ch4.adb (Expand_N_Op_Expon): Changes for Minimize/Eliminate
overflow checks.
* s-bignum.adb (Compare): Fix bad precondition.

2012-10-01  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Build_Derived_Record_Type): If the derived
type has new discriminantss that constrain inherited ones, use
the discriminant type in the original declaration to check for
conformance, because in the presence of array components with a
smaller range that are constrained by the origina discriminant,
the compiler will have created a narrower subtype for that
discriminant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191919 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Robert Dewar <dewar@adacore.com>
charlet [Mon, 1 Oct 2012 13:12:26 +0000 (13:12 +0000)]
2012-10-01  Robert Dewar  <dewar@adacore.com>

* checks.adb (Apply_Arithmetic_Overflow_Minimized_Eliminated):
Handle case of appearing in range in membership test.
* exp_ch4.adb (Expand_Membership_Minimize_Eliminate_Overflow):
New procedure (Expand_N_In): Use
Expand_Membership_Minimize_Eliminate_Overflow.
* rtsfind.ads: Add RE_Bignum_In_LLI_Range.
* s-bignum.ads, s-bignum.adb (Bignum_In_LLI_Range): New function.
* sinfo.ads, sinfo.adb (No_Minimize_Eliminate): New flag.

2012-10-01  Robert Dewar  <dewar@adacore.com>

* uintp.ads: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191918 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.dg/lower-subreg-1.c: Disable on arm*-*-* targets.
uweigand [Mon, 1 Oct 2012 12:24:04 +0000 (12:24 +0000)]
* gcc.dg/lower-subreg-1.c: Disable on arm*-*-* targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191917 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 1 Oct 2012 10:24:00 +0000 (10:24 +0000)]
2012-10-01  Ed Schonberg  <schonberg@adacore.com>

* checks.adb: Improve warning message.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191915 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Robert Dewar <dewar@adacore.com>
charlet [Mon, 1 Oct 2012 10:22:31 +0000 (10:22 +0000)]
2012-10-01  Robert Dewar  <dewar@adacore.com>

* checks.adb: Minor reformatting.

2012-10-01  Javier Miranda  <miranda@adacore.com>

* exp_ch3.adb (Expand_N_Object_Declaration): Suppress tag
assignment for initializations that are aggregates.

2012-10-01  Robert Dewar  <dewar@adacore.com>

* exp_ch4.adb (Expand_Compare_Minimize_Eliminate_Overflow):
New procedure.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191914 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Robert Dewar <dewar@adacore.com>
charlet [Mon, 1 Oct 2012 10:20:28 +0000 (10:20 +0000)]
2012-10-01  Robert Dewar  <dewar@adacore.com>

* checks.adb (Minimize_Eliminate_Checks): Changes from testing.
(Apply_Arithmetic_Overflow_Minimized_Eliminated): Changes
from testing.
* sinfo.ads: Remove note on not setting Entity field in overflow
case since this is no longer true.
* Makefile.rtl: Add s-bignum.o

2012-10-01  Thomas Quinot  <quinot@adacore.com>

* Make-generated.in: Correction to previous change for s-oscons
target.

2012-10-01  Thomas Quinot  <quinot@adacore.com>

* s-bignum.adb (Allocate_Bignum): Reorganize to kill strict
aliasing warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191913 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Robert Dewar <dewar@adacore.com>
charlet [Mon, 1 Oct 2012 10:17:59 +0000 (10:17 +0000)]
2012-10-01  Robert Dewar  <dewar@adacore.com>

* checks.adb (Overflow_Check_Mode): New function
(Apply_Overflow_Check): New procedure (Is_Check_Suppressed):
Moved here from Sem, Overflow_Check case now specially treated.
* checks.ads (Overflow_Check_Mode): New function
(Is_Check_Suppressed): Moved here from Sem (more logical)
* exp_ch4.adb (Substitute_Valid_Check): Suppress warning about
optimization if we are in MINIMIZED or ELIMINATED overflow
checking mode and within an assertiom expression.
* rtsfind.ads: Add entries for Bignum stuff.
* s-bignum.ads, s-bignum.adb: New files.
* sem.ads, sem.adb (Is_Check_Suppressed): Moved to Checks, more logical.
* sem_prag.adb (Process_Suppress_Unsuppress): New behavior for
Unsuppress of Overflow_Check (sets Checked instead of Minimized)
* sem_res.adb: Update comments.
* sinfo.ads (N_Op): Add documentation on overflow handling.
* tbuild.ads, tbuild.adb (Convert_To_And_Rewrite): New procedure.
* types.ads (Minimized_Or_Eliminated): New subtype.

2012-10-01  Eric Botcazou  <ebotcazou@adacore.com>

* layout.adb (Layout_Type): Do not set twice the address size
on an access-to-unconstrained array if Debug_Flag_6 is set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191912 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 1 Oct 2012 10:08:51 +0000 (10:08 +0000)]
2012-10-01  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch3.adb (Analyze_Declarations): Remove the specialized
code which prevents freezing when the declarative list contains
a _postconditions body. This is no longer needed because the
body is now inserted at the end of the declarations.
* sem_ch6.adb (Insert_After_Last_Declaration): New routine.
(Insert_Before_First_Source_Declaration): Removed.
(Process_PPCs): Insert the _postconditions body at the end of
the declarative list to prevent premature freezing of types that
appear in the declarations.

2012-10-01  Robert Dewar  <dewar@adacore.com>

* sem_aggr.adb, sem_dim.adb: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191911 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 1 Oct 2012 10:07:24 +0000 (10:07 +0000)]
2012-10-01  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Process_Convention, Process_Import_Or_Interface):
Adjust test so that when the pragma comes from an aspect
specification it only applies to the entity in the original
declaration.

2012-10-01  Thomas Quinot  <quinot@adacore.com>

* gnat_ugn.texi: Document new command line switch -fada-spec-parent.

2012-10-01  Thomas Quinot  <quinot@adacore.com>

* s-oscons-tmplt.c, g-socket.ads: Minor code improvement: use gcc
builtin __alignof__ to get the alignment of struct fd_set.

2012-10-01  Vincent Pucci  <pucci@adacore.com>

* exp_ch6.adb (Expand_Call): Remove call to
Remove_Dimension_In_Call.
* sem_aggr.adb (Resolve_Array_Aggregate): Analyze dimension of
components in array aggregate.
(Resolve_Aggr_Expr): Propagate dimensions from the original expression
Expr to the new created expression New_Expr when resolving the
expression of a component in record aggregates.
(Resolve_Record_Aggregate): Analyze
dimension of components in record (or extension) aggregate.
* sem_ch6.adb (Analyze_Subprogram_Specification): Analyze
dimension of formals with default expressions in subprogram
specification.
* sem_ch8.adb (Analyze_Expanded_Name): Analyze dimension of
expanded names.
(Find_Selected_Component): Analyze dimension of selected component.
* sem_dim.adb: Several dimension error messages reformatting.
(Dimensions_Msg_Of): New flag Description_Needed in order to
differentiate two different sort of dimension error messages.
(Dim_Warning_For_Numeric_Literal): New routine.
(Exists): New routine.
(Move_Dimensions): Routine spec moved to spec file.
* sem_dim.ads (String_From_Numeric_Literal): New routine.
(Analyze_Dimension): Analyze dimension only when the
node comes from source.  Dimension analysis for expanded names added.
(Analyze_Dimension_Array_Aggregate): New routine.
(Analyze_Dimension_Call): New routine.
(Analyze_Dimension_Component_Declaration): Warning if default
expression is a numeric literal.
(Analyze_Dimension_Extension_Or_Record_Aggregate): New routine.
(Analyze_Dimension_Formals): New routine.
(Analyze_Dimension_Object_Declaration): Warning if default
expression is a numeric literal.
(Symbol_Of): Return either the dimension subtype symbol or the
dimension symbol built by From_Dim_To_Str_Of_Unit_Symbols.
* sem_dim.ads (Analyze_Dimension_Array_Aggregate): New routine.
(Analyze_Dimension_Call): New routine.
(Analyze_Dimension_Extension_Or_Record_Aggregate): New routine.
(Analyze_Dimension_Formals): New routine.
(Move_Dimensions): Moved from sem_dim.adb.
* s-dimmks.ads: Turn off the warnings for dimensioned object
declaration.  Dimensioned subtypes sorted in alphabetical
order. New subtypes Area, Speed, Volume.
* s-dmotpr.ads: Turn off the warnings for dimensioned object
declaration.
* sem_res.adb (Resolve_Call): Analyze dimension for calls.

2012-10-01  Thomas Quinot  <quinot@adacore.com>

* Make-generated.in: Minor cleanup of all targets: use
MOVE_IF_CHANGE to put generated files in place, to avoid useless
recompilations.

2012-10-01  Javier Miranda  <miranda@adacore.com>

* exp_disp.adb (Expand_Dispatching_Call): For functions returning
interface types add an implicit conversion to the returned object
to force the displacement of the pointer to the returned object
to reference the corresponding secondary dispatch table. This
is needed to handle well combined calls involving secondary
dispatch tables (for example Obj.Prim1.Prim2).
* exp_ch4.adb (Expand_Allocator_Expression): Declare internal
access type as access to constant or access to variable depending
on the context. Found working in this ticket.

2012-10-01  Ed Schonberg  <schonberg@adacore.com>

* checks.adb (Apply_Predicate_Check): Do not apply check to
actual of predicate checking procedure, to prevent infinite
recursion.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191910 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Marc Glisse <marc.glisse@inria.fr>
glisse [Mon, 1 Oct 2012 09:53:26 +0000 (09:53 +0000)]
2012-10-01  Marc Glisse  <marc.glisse@inria.fr>

gcc/
* simplify-rtx.c (simplify_binary_operation_1) <VEC_SELECT>:
Detect the identity.
<VEC_CONCAT>: Handle VEC_SELECTs from the same vector.

gcc/testsuite/
* gcc.target/i386/vect-rebuild.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191909 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc-interface/Make-lang.in: Update dependencies.
charlet [Mon, 1 Oct 2012 09:46:39 +0000 (09:46 +0000)]
* gcc-interface/Make-lang.in: Update dependencies.
(GCC_LINK): Add -static-libstdc++.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191908 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc-interface/trans.c (gigi): Adjust previous change to avoid a
charlet [Mon, 1 Oct 2012 09:45:13 +0000 (09:45 +0000)]
* gcc-interface/trans.c (gigi): Adjust previous change to avoid a
typecast that discards a const qualifier.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191907 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Arnaud Charlet <charlet@adacore.com>
charlet [Mon, 1 Oct 2012 09:41:22 +0000 (09:41 +0000)]
2012-10-01  Arnaud Charlet  <charlet@adacore.com>

* a-catizo.adb, a-stwiun.adb, a-cdlili.adb, a-cihama.adb, a-direct.adb,
a-coinve.adb, a-calend.adb, a-ciorse.adb, a-coorma.adb, a-cfdlli.adb,
a-stzunb-shared.adb, a-cfhase.adb, bindgen.adb, ceinfo.adb, a-tags.adb,
einfo.adb, checks.adb, eval_fat.adb, a-cborma.adb, a-stwifi.adb,
a-tifiio.adb, a-textio.adb, a-cidlli.adb, a-strunb-shared.adb,
a-cimutr.adb, a-calcon.adb, a-exexpr-gcc.adb, a-ciormu.adb,
a-stzunb.adb, a-stzsea.adb, a-ngelfu.adb, a-stzfix.adb,
a-cihase.adb, a-cohama.adb, a-exetim-posix.adb, a-dirval-vms.adb,
a-caldel-vms.adb, a-coorse.adb, errout.adb,
a-except.adb, butil.adb, a-dirval-mingw.adb, a-cforma.adb,
a-except-2005.adb, a-wtedit.adb, cstand.adb, a-stwiun-shared.adb,
a-cbhama.adb, a-direio.adb, clean.adb, a-cborse.adb, back_end.adb,
binde.adb, a-exexda.adb, a-comutr.adb, a-ciorma.adb, a-cobove.adb,
a-coormu.adb, a-teioed.adb, a-convec.adb, a-wtenau.adb, exp_aggr.adb,
a-ztedit.adb, a-cohase.adb, a-exetim-mingw.adb, bcheck.adb,
a-dynpri.adb, a-cfhama.adb, a-calfor.adb, a-cbdlli.adb,
a-crdlli.adb, a-cbmutr.adb, a-sequio.adb, a-ngcoar.adb, a-cforse.adb,
a-strunb.adb, a-calend-vms.adb, a-clrefi.adb, a-cofove.adb,
a-ztenau.adb, a-strfix.adb, a-cbhase.adb, a-stzsup.adb: Minor
reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191905 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Vincent Pucci <pucci@adacore.com>
charlet [Mon, 1 Oct 2012 09:21:46 +0000 (09:21 +0000)]
2012-10-01  Vincent Pucci  <pucci@adacore.com>

* s-gearop.adb (Vector_Matrix_Product): Dimensions check fixed. Index
of Left in S evaluation fixed.

2012-10-01  Javier Miranda  <miranda@adacore.com>

* sem_ch3.adb (Analyze_Declarations): Avoid
premature freezing caused by the internally generated subprogram
_postconditions.
* checks.adb (Expr_Known_Valid): Float literals are assumed to be valid
in VM targets.

2012-10-01  Thomas Quinot  <quinot@adacore.com>

* sinput.ads, sinput.adb, sinput-l.adb sinput-c.adb (Sinput): New
Instances table, tracking all generic instantiations. Source file
attribute Instance replaces previous Instantiation attribute with an
index into the Instances table.
(Iterate_On_Instances): New generic procedure.
(Create_Instantiation_Source): Record instantiations in Instances.
(Tree_Read, Tree_Write): Read/write the instance table.
* scils.ads, scos.adb (SCO_Instance_Table): New table, contains
information copied from Sinput.Instance_Table, but self-contained
within the SCO data structures.
* par_sco.ads, par_sco.adb (To_Source_Location): Move to library level.
(Record_Instance): New subprogram, used by...
(Populate_SCO_Instance_Table): New subprogram to fill
the SCO instance table from the Sinput one (called by SCO_Output).
* opt.ads (Generate_SCO_Instance_Table): New option.
* put_scos.adb (Write_Instance_Table): New subprogram, used by...
(Put_SCOs): Dump the instance table at the end of SCO information
if requested.
* get_scos.adb (Get_SCOs): Read SCO_Instance_Table.
* types.h: Add declaration for Instance_Id.
* back_end.adb (Call_Back_End): Pass instance ids in source file
information table.
(Scan_Back_End_Switches): -fdebug-instances sets
Opt.Generate_SCO_Instance_Table.
* gcc-interface/gigi.h: File_Info_Type includes instance id.
* gcc-interface/trans.c: Under -fdebug-instances, set instance
id in line map from same in file info.

2012-10-01  Thomas Quinot  <quinot@adacore.com>

* sem_elab.adb: Minor reformatting
(Check_Elab_Call): Minor fix to debugging code
(add special circuit for the valid case where a 'Access attribute
reference is passed to Check_Elab_Call).

2012-10-01  Thomas Quinot  <quinot@adacore.com>

* exp_ch3.adb: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191904 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 1 Oct 2012 08:49:03 +0000 (08:49 +0000)]
2012-10-01  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.ads (Build_Array_Invariant_Proc): moved to body.
* exp_ch3.adb (Build_Array_Invariant_Proc,
Build_Record_Invariant_Proc): transform into functions.
(Insert_Component_Invariant_Checks): for composite types that have
components with specified invariants, build a checking procedure,
and make into the invariant procedure of the composite type,
or incorporate it into the user- defined invariant procedure if
one has been created.
* sem_ch3.adb (Array_Type_Declaration): Checking for invariants
on the component type is defered to the expander.

2012-10-01  Thomas Quinot  <quinot@adacore.com>

* xsnamest.adb, namet.h, sem_ch10.adb, s-oscons-tmplt.c,
xoscons.adb: Minor reformatting.

2012-10-01  Hristian Kirtchev  <kirtchev@adacore.com>

* checks.adb (Apply_Parameter_Aliasing_And_Validity_Checks):
Do not process subprogram renaminds because a) those cannot
have PPC pragmas b) the renamed entity already has the PPCs.
(Build_PPC_Pragma): Prepend a PPC pragma for consistency with
Process_PPCs.
* sem_ch6.adb (Last_Implicit_Declaration): Removed.
(Process_PPCs): Insert a post condition body at the start of the
declarative region of the related subprogram. This way the body
will not freeze anything it shouldn't.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191903 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Robert Dewar <dewar@adacore.com>
charlet [Mon, 1 Oct 2012 08:45:43 +0000 (08:45 +0000)]
2012-10-01  Robert Dewar  <dewar@adacore.com>

* freeze.adb, sem_ch6.adb, opt.ads, sem_ch13.adb,
exp_ch3.adb: Minor reformatting.

2012-10-01  Hristian Kirtchev  <kirtchev@adacore.com>

* checks.adb (Build_PPC_Pragma): A PPC pragma can now be properly
associated with a subprogram body.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191902 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 1 Oct 2012 08:39:43 +0000 (08:39 +0000)]
2012-10-01  Ed Schonberg  <schonberg@adacore.com>

* aspects.ads: Type_Invariant'class is a valid aspect.
* sem_ch6.adb (Is_Public_Subprogram_For): with the exception of
initialization procedures, subprograms that do not come from
source are not public for the purpose of invariant checking.
* sem_ch13.adb (Build_Invariant_Procedure): Handle properly the
case of a non-private type in a package without a private part,
when the type inherits invariants from its ancestor.

2012-10-01  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.adb (Build_Record_Invariant_Proc): new procedure to
generate a checking procedure for record types that may have
components whose types have type invariants declared.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191901 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Vincent Pucci <pucci@adacore.com>
charlet [Mon, 1 Oct 2012 08:37:25 +0000 (08:37 +0000)]
2012-10-01  Vincent Pucci  <pucci@adacore.com>

* system-solaris-sparcv9.ads, system-mingw.ads, system-vms_64.ads: Flag
Support_Atomic_Primitives set to True.

2012-10-01  Robert Dewar  <dewar@adacore.com>

* impunit.adb: Ada.Locales is a language defined unit.

2012-10-01  Hristian Kirtchev  <kirtchev@adacore.com>

* checks.adb (Apply_Parameter_Aliasing_Checks): Removed.
(Apply_Parameter_Aliasing_And_Validity_Checks): New routine.
(Apply_Parameter_Validity_Checks): Removed.
* checks.ads (Apply_Parameter_Aliasing_Checks): Removed.
(Apply_Parameter_Aliasing_And_Validity_Checks): New routine.
(Apply_Parameter_Validity_Checks): Removed.
* exp_ch6.adb (Expand_Call): Remove the generation of parameter
aliasing checks.
* freeze.adb: Remove with and use clauses for Validsw.
(Freeze_Entity): Update the guard and generation of aliasing
and scalar initialization checks for subprogram parameters.
* opt.ads: Add new flags Check_Aliasing_Of_Parameters and
Check_Validity_Of_Parameters along with comments on usage.
* sem_attr.adb (Analyze_Attribute): Pragma Overlaps_Storage is
no longer an Ada 2012 feature.
* sem_ch4.adb: Remove with and use clauses for Checks and Validsw.
(Analyze_Call): Remove the generation of aliasing checks for
subprogram parameters.
* sem_ch13.adb: Remove with and use clauses for Validsw.
(Analyze_Aspect_Specifications): Remove the generation of scalar
initialization checks.
* switch-c.adb (Scan_Front_End_Switches): Add processing for
-gnateA and -gnateV.
* usage.adb (Usage): Add information on switches -gnateA and
-gnateV. Remove information on validity switches 'l', 'L',
'v' and 'V'.
* validsw.adb (Reset_Validity_Check_Options): Remove the
reset of flags Validity_Check_Non_Overlapping_Params
and Validity_Check_Valid_Scalars_On_Params.
(Save_Validity_Check_Options): Remove the processing
for flags Validity_Check_Non_Overlapping_Params
and Validity_Check_Valid_Scalars_On_Params.
(Set_Validity_Check_Options): Remove the processing
for flags Validity_Check_Non_Overlapping_Params and
Validity_Check_Valid_Scalars_On_Params.
* validsw.ads: Remove flags Validity_Check_Non_Overlapping_Params
and Validity_Check_Valid_Scalars_On_Params along with their
comments on usage.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191900 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/50457
olegendo [Mon, 1 Oct 2012 08:34:02 +0000 (08:34 +0000)]
PR target/50457
* config/sh/sh.opt (matomic-model): New option.
(msoft-atomic): Mark as deprecated and alias to matomic-model=soft-gusa.
(mhard-atomic): Delete.
* config/sh/predicates.md (gbr_displacement): New predicate.
* config/sh/sh-protos.h (sh_atomic_model): New struct.
(selected_atomic_model): New declaration.
(TARGET_ATOMIC_ANY, TARGET_ATOMIC_STRICT, TARGET_ATOMIC_SOFT_GUSA,
TARGET_ATOMIC_HARD_LLCS, TARGET_ATOMIC_SOFT_TCB,
TARGET_ATOMIC_SOFT_TCB_GBR_OFFSET_RTX, TARGET_ATOMIC_SOFT_IMASK):
New macros.
* config/sh/linux.h (SUBTARGET_OVERRIDE_OPTIONS): Adapt setting to
default atomic model.
* config/sh/sh.c (selected_atomic_model_): New global variable.
(selected_atomic_model, parse_validate_atomic_model_option): New
functions.
(sh_option_override): Replace atomic selection checks with call to
parse_validate_atomic_model_option.
* config/sh/sh.h (TARGET_ANY_ATOMIC, UNSUPPORTED_ATOMIC_OPTIONS,
UNSUPPORTED_HARD_ATOMIC_CPU): Delete.
(DRIVER_SELF_SPECS): Remove atomic checks.
config/sh/sync.md: Update documentation comments.
(atomic_compare_and_swap<mode>, atomic_exchange<mode>,
atomic_fetch_<fetchop_name><mode>, atomic_fetch_nand<mode>,
atomic_<fetchop_name>_fetch<mode>, atomic_nand_fetch<mode>): Use
TARGET_ATOMIC_ANY as condition.  Add TARGET_ATOMIC_STRICT check for
SH4A case.  Handle new TARGET_ATOMIC_SOFT_TCB and
TARGET_ATOMIC_SOFT_IMASK cases.
(atomic_test_and_set): Handle new TARGET_ATOMIC_SOFT_TCB and
TARGET_ATOMIC_SOFT_IMASK cases.
(atomic_compare_and_swapsi_hard, atomic_exchangesi_hard,
atomic_fetch_<fetchop_name>si_hard, atomic_fetch_nandsi_hard,
atomic_<fetchop_name>_fetchsi_hard, atomic_nand_fetchsi_hard):
Add TARGET_ATOMIC_STRICT check.
(atomic_compare_and_swap<mode>_hard, atomic_exchange<mode>_hard,
atomic_fetch_<fetchop_name><mode>_hard, atomic_fetch_nand<mode>_hard,
atomic_<fetchop_name>_fetch<mode>_hard, atomic_nand_fetch<mode>_hard,
atomic_test_and_set_hard): Use TARGET_ATOMIC_HARD_LLCS condition.
(atomic_compare_and_swap<mode>_soft, atomic_exchange<mode>_soft,
atomic_fetch_<fetchop_name><mode>_soft, atomic_fetch_nand<mode>_soft,
atomic_<fetchop_name>_fetch<mode>_soft, atomic_nand_fetch<mode>_soft,
atomic_test_and_set_soft): Append _gusa to the insn names and use
TARGET_ATOMIC_SOFT_GUSA as condition.
(atomic_compare_and_swap<mode>_soft_tcb, atomic_exchange<mode>_soft_tcb,
atomic_fetch_<fetchop_name><mode>_soft_tcb,
atomic_fetch_nand<mode>_soft_tcb,
atomic_<fetchop_name>_fetch<mode>_soft_tcb,
atomic_nand_fetch<mode>_soft_tcb, atomic_test_and_set_soft_tcb):
New insns.
(atomic_compare_and_swap<mode>_soft_imask,
atomic_exchange<mode>_soft_imask,
atomic_fetch_<fetchop_name><mode>_soft_imask,
atomic_fetch_nand<mode>_soft_imask,
atomic_<fetchop_name>_fetch<mode>_soft_imask,
atomic_nand_fetch<mode>_soft_imask, atomic_test_and_set_soft_imask):
New insns.
* doc/invoke.texi (SH Options): Document new matomic-model option.
Remove msoft-atomic and mhard-atomic options.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191899 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Yannick Moy <moy@adacore.com>
charlet [Mon, 1 Oct 2012 08:33:04 +0000 (08:33 +0000)]
2012-10-01  Yannick Moy  <moy@adacore.com>

* sem_ch13.adb (Add_Invariants): Analyze the invariant expression
as an assertion expression.
* sem_ch3.adb / sem_ch3.ads (Preanalyze_Assert_Expression):
New procedure that wraps a call to Preanalyze_Spec_Expression
for assertion expressions, so that In_Assertion_Expr can be
properly adjusted.
* sem_prag.adb (Analyze_PPC_In_Decl_Part
Check_Precondition_Postcondition Preanalyze_CTC_Args): Call the
new Preanalyze_Assert_Expression.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191898 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Robert Dewar <dewar@adacore.com>
charlet [Mon, 1 Oct 2012 08:30:49 +0000 (08:30 +0000)]
2012-10-01  Robert Dewar  <dewar@adacore.com>

* checks.ads: Minor reformatting.

2012-10-01  Yannick Moy  <moy@adacore.com>

* types.ads, sem_prag.adb, sem.ads: Correct minor typos in comments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191897 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Vincent Celier <celier@adacore.com>
charlet [Mon, 1 Oct 2012 08:27:31 +0000 (08:27 +0000)]
2012-10-01  Vincent Celier  <celier@adacore.com>

* make.adb (Scan_Make_Arg): Only test for "vP" of the option
includes at least 3 characters.
* gnatcmd.adb (GNATCmd): Ditto.

2012-10-01  Eric Botcazou  <ebotcazou@adacore.com>

* exp_ch7.adb, sinfo.ads: Add comments.

2012-10-01  Robert Dewar  <dewar@adacore.com>

* checks.adb: Remove reference to Enable_Overflow_Checks Use
Suppress_Options rather than Scope_Suppress.
* gnat1drv.adb (Adjust_Global_Switches): Handle new overflow
settings (Adjust_Global_Switches): Initialize Scope_Suppress
from Suppress_Options.
* opt.adb: Remove Enable_Overflow_Checks (use Suppress_Options
instead).
* opt.ads: Remove Overflow_Checks_Unsuppressed (not used)
Remove Enable_Overflow_Checks (use Suppress_Options instead)
Suppress_Options is now current setting (replaces Scope_Suppress).
* osint.adb (Initialize): Deal with initializing overflow
checking.
* par-prag.adb: Add dummy entry for pragma Overflow_Checks.
* sem.adb (Semantics): Save and restore In_Assertion_Expr Use
Suppress_Options instead of Scope_Suppress.
* sem.ads (In_Assertion_Expr): New flag (Scope_Suppress):
Removed, use Suppress_Options instead.
* sem_eval.adb (Compile_Time_Compare): Return Unknown in
preanalysis mode.
* sem_prag.adb (Process_Suppress_Unsuppress): Setting of
Overflow_Checks_Unsuppressed removed (not used anywhere!)
(Analyze_Pragma, case Check): Set In_Assertion_Expression
(Analyze_Pragma, case Overflow_Checks): Implement new pragma
* snames.ads-tmpl: Add names needed for handling pragma
Overflow_Checks
* switch-c.adb (Scan_Front_End_Switches) Handle -gnato? and
-gnato?? where ? is 0-3
* types.ads: Updates and fixes to comment on Suppress_Record.

2012-10-01  Vincent Celier  <celier@adacore.com>

* prj-part.adb (Parse): Remove incorrect comment about checking
imported non extending projects from and "extending all"
one. Minor correction.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191895 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Robert Dewar <dewar@adacore.com>
charlet [Mon, 1 Oct 2012 08:24:12 +0000 (08:24 +0000)]
2012-10-01  Robert Dewar  <dewar@adacore.com>

* make.adb, exp_ch3.adb: Minor reformatting.

2012-10-01  Hristian Kirtchev  <kirtchev@adacore.com>

* validsw.adb (Save_Validity_Check_Options): Do not set
Validity_Check_Non_Overlapping_Params and
Validity_Check_Valid_Scalars_On_Params when -gnatVa is present
because the related checks are deemed too aggressive.

2012-10-01  Ed Schonberg  <schonberg@adacore.com>

* sem_util.ads sem_util.adb (Check_Internal_Protected_Use):
reject use of protected procedure or entry within the body of
a protected function of the same protected type, when usage is
a call, an actual in an instantiation, a or prefix of 'Access.
* sem_ch8.adb (Analyze_Subprogram_Renaming): Verify that target
object in renaming of protected procedure is a variable, and
apply Check_Internal_Protected_Use.
* sem_res.adb (Analyze_Call, Analyze_Entry_Call): apply
Check_Internal_Protected_Use rather than on-line code.
* sem_attr.adb (Analyze_Access_Attribute): Verify that target
object in accsss to protected procedure is a variable, and apply
Check_Internal_Protected_Use.

2012-10-01  Gary Dismukes  <dismukes@adacore.com>

* sem_ch4.adb (Find_Equality_Types.Try_One_Interp): Exclude the
predefined interpretation from consideration if it's for a "/="
operator of a tagged type. This will allow Analyze_Equality_Op to
rewrite the "/=" as a logical negation of a call to the appropriate
dispatching equality function. This needs to be done during
analysis rather than expansion for the benefit of ASIS, which
otherwise gets the unresolved N_Op_Ne operator from Standard.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191894 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 1 Oct 2012 08:14:49 +0000 (08:14 +0000)]
2012-10-01  Thomas Quinot  <quinot@adacore.com>

* gnatcmd.adb, make.adb (Scan_Make_Arg, Inspect_Switches): Recognize
and reject an invalid parameter passed to -vP.

2012-10-01  Yannick Moy  <moy@adacore.com>

* sem_warn.adb (Check_Infinite_Loop_Warning/Test_Ref): Improve
the detection of modifications to the loop variable by noting
that, if the type of variable is elementary and the condition
does not contain a function call, then the condition cannot be
modified by side-effects from a procedure call.

2012-10-01  Robert Dewar  <dewar@adacore.com>

* checks.adb: Add comments.

2012-10-01  Javier Miranda  <miranda@adacore.com>

* exp_ch3.adb (Expand_N_Object_Declaration): Improve condition catching
never-ending recursion. The previous condition erroneously disabled
silently the expansion of the class-wide interface object
initialization in cases not involving the recursion.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191892 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoMove PR c++/19351 ChangeLog entry to correct ChangeLog.
jakub [Mon, 1 Oct 2012 08:12:01 +0000 (08:12 +0000)]
Move PR c++/19351 ChangeLog entry to correct ChangeLog.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191891 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 1 Oct 2012 08:11:09 +0000 (08:11 +0000)]
2012-10-01  Thomas Quinot  <quinot@adacore.com>

* make.adb: Minor documentation fix: error messages are sent to
stderr, not stdout.

2012-10-01  Hristian Kirtchev  <kirtchev@adacore.com>

* checks.ads, checks.adb (Apply_Parameter_Aliasing_Checks): New routine.
(Apply_Parameter_Validity_Checks): New routines.
* exp_ch6.adb (Expand_Call): Add aliasing checks to detect
overlapping objects.
* freeze.adb: Add with and use clauses for Checks and Validsw.
(Freeze_Entity): Add checks to detect proper initialization
of scalars.
* sem_ch4.adb: Add with and use clauses for Checks and Validsw.
(Analyze_Call): Add aliasing checks to detect overlapping objects.
* sem_ch13.adb: Add with and use clauses for Validsw.
(Analyze_Aspect_Specifications): Add checks to detect proper
initialization of scalars.
* sem_prag.adb (Chain_PPC): Correct the extraction of the
subprogram name.
* sem_util.adb (Is_Object_Reference): Attribute 'Result now
produces an object.
* usage.adb (Usage): Add usage lines for validity switches 'l',
'L', 'v' and 'V'.
* validsw.adb (Reset_Validity_Check_Options): Include
processing for flags Validity_Check_Non_Overlapping_Params and
Validity_Check_Valid_Scalars_On_Params. Code reformatting.
(Save_Validity_Check_Options): Include processing
for flags Validity_Check_Non_Overlapping_Params
and Validity_Check_Valid_Scalars_On_Params.
(Set_Validity_Check_Options): Add processing for validity switches
'a', 'l', 'L', 'n', 'v' and 'V'. Code reformatting.
* validsw.ads: Add new flags Validity_Check_Non_Overlapping_Params
and Validity_Check_Valid_Scalars_On_Params along with comments
on usage.

2012-10-01  Thomas Quinot  <quinot@adacore.com>

* namet.ads, xsnamest.adb, prj-env.adb, sem_warn.adb,
errout.ads: Minor reformatting.
* prj-part.adb: Add comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191890 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Robert Dewar <dewar@adacore.com>
charlet [Mon, 1 Oct 2012 08:07:19 +0000 (08:07 +0000)]
2012-10-01  Robert Dewar  <dewar@adacore.com>

* sinfo.ads, exp_aggr.adb, sem_ch13.adb: Minor reformatting.

2012-10-01  Ed Schonberg  <schonberg@adacore.com>

* sem_aggr.adb (Resolve_Array_Aggregate): Handle properly
component associations given by subtypes that have static
predicates.  Improve error message for overlapping ranges in
array aggregates.

2012-10-01  Pascal Obry  <obry@adacore.com>

* snames.ads-tmpl (Name_Link_Lib_Subdir): New constant.

2012-10-01  Ed Schonberg  <schonberg@adacore.com>

* sem_ch9.adb (Analyze_Requeue): The target of a requeue
statement on a protected entry must be a variable. This is part
of AI05-0225.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191889 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-01 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Mon, 1 Oct 2012 07:23:12 +0000 (07:23 +0000)]
2012-10-01  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

PR target/54746
* config/s390/s390.c (s390_option_override): Add missing break.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191885 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-30 Sharad Singhai <singhai@google.com>
singhai [Mon, 1 Oct 2012 06:10:29 +0000 (06:10 +0000)]
2012-09-30  Sharad Singhai  <singhai@google.com>

* dumpfile.c: New file with parts moved from tree-dump.c.
(pflags): New variable.
(alt_flags): Ditto.
(alt_dump_file): Ditto.
(dump_files):  Update to include additional fields.
(struct dump_option_value_info): Add additional entries.
(get_dump_file_name): Use command line filename if available.
(dump_open_alternate_stream): New function.
(dump_loc): Ditto.
(dump_gimple_stmt): Ditto.
(dump_gimple_stmt_loc): Ditto.
(dump_generic_expr): Ditto.
(dump_generic_expr_loc): Ditto.
(dump_printf): Ditto.
(dump_printf_loc): Ditto.
(dump_start): Ditto.
(dump_finish): Ditto.
(dump_begin): Ditto.
(dump_enabled_p): Return true if either of the dump types is enabled.
(dump_initialized_p): Return true if either type of dump is initialized.
(dump_end): Do not close standard streams.
(dump_enable_all): Handle filenames for regular dumps.
(dump_switch_p_1): Handle command-line dump filenames.
(opt_info_enable_all): New function.
(opt_info_switch_p_1): Ditto.
(opt_info_switch_p): Ditto.
(dump_kind_p): Ditto.
(dump_basic_block): Ditto.
(dump_combine_total_stats): Ditto.
(dump_remap_tree_vectorizer_verbose): Ditto.
* gimple-pretty-print.h: Rename dump_gimple_stmt to
pp_gimple_stmt_1.  All callers updated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191884 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-30 Sharad Singhai <singhai@google.com>
singhai [Mon, 1 Oct 2012 05:43:06 +0000 (05:43 +0000)]
2012-09-30  Sharad Singhai  <singhai@google.com>

* doc/invoke.texi: Add documentation for the new option.
* tree-dump.c: Move general dump file related functionality into
dumpfile.c. Remove unneeded headers.
* tree-dump.h: Move function declarations into dumpfile.h.
* dumpfile.h: Include "line-map.h". Add defines for MSG flags.
(struct dump_file_info): Move here from tree-dump.c.  Rename flags
to pflags, state to pstate, stream to pstream, filename to
pfilename. All callers updated. Add alt_flags, alt_state,
alt_filenmae, alt_stream.
* tree-vectorizer.c: Include "dumpfile.h". Remove vect_dump.
(vect_set_dump_settings): Remove.
(vect_print_dump_info): Ditto.
* tree-vectorizer.h: Remove declaration of vect_dump and
vect_print_dump_info.
* tree-vect-loop.c: Include "dumpfile.h". Use new dump style.
* tree-vect-data-refs.c: Ditto.
* tree-vect-stmts.c: Ditto.
* tree-vect-slp.c: Ditto.
* tree-vect-patterns.c: Ditto.
* tree-vect-loop-manip.c: Ditto.
* testsuite/gcc.target/i386/vect-double-1.c: Fix test.
* opts.c (vect_set_verbosity_level): Remove.
(common_handle_option): Handle -fopt-info flag. Deprecate
-ftree-vectorizer-verbose.
* tree-parloops.c (gather_scalar_reductions): Remove reference to
vect_dump.
* flag-types.h: Remove vect_verbosity_levels.
* common.opt: Add -fopt-info. Deprecate -ftree-vectorizer-verbose.
* opts-global.c (dump_remap_tree_vectorizer_verbose): New
function.
(handle_common_deferred_options): Handle -fopt-info and
-ftree-vectorizer-verbose.
* Makefile.in: Add dumpfile.o.
(tree-dump.o): Update dependencies.
(tree-vect-loop.o): Ditto.
(tree-vect-loop-manip.o): Ditto.
(tree-vect-slp.o): Ditto.
(tree-vect-stmts.o): Ditto.
(tree-vectorizer.o): Ditto.
(opts.o): Ditto.
* passes.c (finish_optimization_passes): Instead of using
dump_begin/dump_end, use dump_start/dump_finish. Do not use dump_file.
(pass_init_dump_file): Ditto.
* c-decl.c (c_write_global_declarations): Use a different method
to determine if the dump has ben initialized.
* decl2.c (cp_write_global_declarations): Use a different method
to determine if the dump has ben initialized.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191883 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Mon, 1 Oct 2012 00:17:52 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191882 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.target/i386/pad-10.c (foo2): Return x - z.
uros [Sun, 30 Sep 2012 19:27:08 +0000 (19:27 +0000)]
* gcc.target/i386/pad-10.c (foo2): Return x - z.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191879 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR rtl-optimization/38449:
amylaar [Sun, 30 Sep 2012 19:25:49 +0000 (19:25 +0000)]
    PR rtl-optimization/38449:
        * hooks.c (hook_bool_const_rtx_const_rtx_true): New function.
        * hooks.h (hook_bool_const_rtx_const_rtx_true): Declare.
        * target.def: Merge in definitions and documentation for
        TARGET_CAN_FOLLOW_JUMP.
        * doc/tm.texi.in: Add documentation locations for the above.
        * doc/tm.texi: Regenerate.
        * reorg.c (follow_jumps): New parameters jump and crossing.
        Changed all callers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191878 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/testsuite/
rsandifo [Sun, 30 Sep 2012 18:52:44 +0000 (18:52 +0000)]
gcc/testsuite/
* gcc.target/mips/pr37362.c: Fix target selector.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191877 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-30 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Sun, 30 Sep 2012 17:56:49 +0000 (17:56 +0000)]
2012-09-30  Benjamin Kosnik  <bkoz@redhat.com>

* doc/doxygen/user.cfg.in: Update to doxygen 1.8.2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191876 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * reorg.c (relax_delay_slots): Use delay_insn consistently.
ebotcazou [Sun, 30 Sep 2012 17:54:46 +0000 (17:54 +0000)]
* reorg.c (relax_delay_slots): Use delay_insn consistently.

* config/sparc/sparc.c (gen_stack_pointer_dec): Delete.
(sparc_expand_epilogue): Use gen_stack_pointer_inc and adjust.
(sparc_flat_expand_epilogue): Likewise.
(emit_and_preserve): Likewise.
(sparc_fold_builtin): Fix thinko in latest change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191875 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/54083
danglin [Sun, 30 Sep 2012 17:41:49 +0000 (17:41 +0000)]
PR target/54083
* gcc.dg/torture/pr53922.c: Skip on 32-bit hppa-*-hpux*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191873 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago* config/m68k/m68k.md: Add names to bitfield insert and extract
schwab [Sun, 30 Sep 2012 17:29:16 +0000 (17:29 +0000)]
* config/m68k/m68k.md: Add names to bitfield insert and extract
insns.
(*insv_8_16_reg): Remove constraints and conditions that assume
that operand 0 could be a MEM.
(*extzv_8_16_reg, *extv_8_16_reg): Likewise, for operand 1.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191872 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago* gcc.dg/ucnid-8.c: Update line number.
schwab [Sun, 30 Sep 2012 17:13:04 +0000 (17:13 +0000)]
* gcc.dg/ucnid-8.c: Update line number.
* gcc.dg/torture/pr51106-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191871 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-30 Janus Weil <janus@gcc.gnu.org>
janus [Sun, 30 Sep 2012 16:36:02 +0000 (16:36 +0000)]
2012-09-30  Janus Weil  <janus@gcc.gnu.org>

PR fortran/54667
* intrinsic.texi (C_F_POINTER): Fix description.
* resolve.c (gfc_iso_c_sub_interface): Add a check for FPTR argument
of C_F_POINTER. Modify two error messages. Cleanup.

2012-09-30  Janus Weil  <janus@gcc.gnu.org>

PR fortran/54667
* gfortran.dg/c_funloc_tests_6.f90: Modified error message.
* gfortran.dg/c_f_pointer_shape_test.f90: Ditto.
* gfortran.dg/c_f_pointer_tests_5.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191870 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * include/ext/ropeimpl.h (__uninitialized_fill_n_a): Fix using
redi [Sun, 30 Sep 2012 15:36:18 +0000 (15:36 +0000)]
* include/ext/ropeimpl.h (__uninitialized_fill_n_a): Fix using
declaration.
* testsuite/ext/rope/5.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191869 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * cfgloop.c (scale_loop_profile): Move to...
hubicka [Sun, 30 Sep 2012 15:30:22 +0000 (15:30 +0000)]
* cfgloop.c (scale_loop_profile): Move to...
* cfgloopmanip.c (scale_loop_profile): .. here; use
scale_loop_frequencies.
(loopify): Use RDIV.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191868 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-30 Janus Weil <janus@gcc.gnu.org>
janus [Sun, 30 Sep 2012 14:54:28 +0000 (14:54 +0000)]
2012-09-30  Janus Weil  <janus@gcc.gnu.org>

* gfortran.dg/allocate_derived_1.f90: Re-enable class array checks,
partially reverting r170092.
* gfortran.dg/class_7.f03: Ditto.
* gfortran.dg/coarray_14.f90: Ditto.
* gfortran.dg/typebound_proc_13.f03: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191867 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR libstdc++/54577
redi [Sun, 30 Sep 2012 11:40:06 +0000 (11:40 +0000)]
PR libstdc++/54577
* doc/xml/manual/status_cxx2011.xml: N2350 changes are missing from
sequence containers.
* doc/html/*: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191866 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Sun, 30 Sep 2012 00:17:35 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191865 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago/cp
paolo [Sat, 29 Sep 2012 22:58:31 +0000 (22:58 +0000)]
/cp
2012-09-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54738
* decl2.c (build_offset_ref_call_from_tree): Add tsubst_flags_t
parameter.
* pt.c (tsubst_copy_and_build): Adjust.
* parser.c (cp_parser_postfix_expression): Likewise.
* cp-tree.h: Adjust declaration.

/testsuite
2012-09-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54738
* g++.dg/cpp0x/sfinae42.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191862 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoRemove extra blank line.
dje [Sat, 29 Sep 2012 22:17:59 +0000 (22:17 +0000)]
Remove extra blank line.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191861 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.target/powerpc/405-dlmzb-strlen-1.c: Skip on AIX.
dje [Sat, 29 Sep 2012 22:17:06 +0000 (22:17 +0000)]
    * gcc.target/powerpc/405-dlmzb-strlen-1.c: Skip on AIX.
        * gcc.target/powerpc/440-dlmzb-strlen-1.c: Same.
        * gcc.dg/ucnid-5.c: Remove XFAIL on AIX.
        * gcc.dg/pr42629.c: XFAIL on AIX.
        * gcc.dg/pr47684.c: Same.
        * gcc.dg/pr43670.c: Same.
        * gcc.dg/pr42916.c: Same.
        * gcc.dg/pr45449.c: Same.
        * gcc.dg/pr50017.c: Same.
        * gcc.dg/pr42728.c: Same.
        * gcc.dg/pr47881.c: Same.
        * gcc.dg/pr44023.c: Same.
        * gcc.dg/pr41345.c: Same.
        * gcc.dg/pr42630.c: Same.
        * gcc.dg/pr44971.c: Same.
        * gcc.dg/pr46771.c: Same.
        * gcc.dg/ucnid-8.c: Same.
        * gcc.dg/ucnid-10.c: Same.
        * gcc.dg/ucnid-13.c: Same.
        * gcc.dg/torture/pr51106-2.c: Same.
        * gcc.dg/pr48768.c: Same.
        * gcc.dg/pr42631.c: Same.
        * gcc.dg/pr43084.c: Same.
        * gcc.dg/ucnid-7.c: Same.
        * gcc.dg/pr42889.c: Same.
        * gcc.dg/pr41241.c: Same.
        * gcc.dg/pr42719.c: Same.
        * g++.dg/debug/pr46583.C: Same.
        * g++.dg/debug/pr47106.C: Same.
        * g++.dg/opt/pr48549.C: Same.
        * g++.dg/other/pr42685.C: Same.
        * c-c++-common/pr43942.c: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191860 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * inclhack.def (AAB_aix_fcntl): New fix.
dje [Sat, 29 Sep 2012 21:02:42 +0000 (21:02 +0000)]
    * inclhack.def (AAB_aix_fcntl): New fix.
        * fixincl.x: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191859 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoUpdate to current version of Go testsuite.
ian [Sat, 29 Sep 2012 18:16:01 +0000 (18:16 +0000)]
Update to current version of Go testsuite.

* go.test/go-test.exp: Update for latest version of Go testsuite.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191858 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix ChangeLog date
redi [Sat, 29 Sep 2012 18:00:54 +0000 (18:00 +0000)]
Fix ChangeLog date

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191857 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR libstdc++/34106
redi [Sat, 29 Sep 2012 17:58:34 +0000 (17:58 +0000)]
PR libstdc++/34106
* include/parallel/compatibility.h: Remove non-GCC code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191856 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR other/54749
ian [Sat, 29 Sep 2012 17:50:54 +0000 (17:50 +0000)]
PR other/54749
* fileline.c (fileline_initialize): Pass errnum as -1 when
reporting that we could not read executable information after a
previous failure.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191855 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-29 Thomas König <tkoenig@gcc.gnu.org>
tkoenig [Sat, 29 Sep 2012 17:38:46 +0000 (17:38 +0000)]
2012-09-29  Thomas König  <tkoenig@gcc.gnu.org>

PR fortran/52724
* list_read.c (next_char):  Handle kind=4 characters.
* unix.c (open_internal4):  Correct lenth of internal file.

2012-09-29  Thomas König  <tkoenig@gcc.gnu.org>

PR fortran/52724
* gfortran.dg/internal_readwrite_3.f90:  New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191854 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoMove GCC ChangeLog entry to gcc/ChangeLog
hjl [Sat, 29 Sep 2012 15:15:16 +0000 (15:15 +0000)]
Move GCC ChangeLog entry to gcc/ChangeLog

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191853 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree-call-cdce.c (shrink_wrap_one_built_in_call): Update profile.
hubicka [Sat, 29 Sep 2012 12:33:19 +0000 (12:33 +0000)]
* tree-call-cdce.c (shrink_wrap_one_built_in_call): Update profile.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191852 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * function.c (dup_block_and_redirect): Update profile.
hubicka [Sat, 29 Sep 2012 12:31:49 +0000 (12:31 +0000)]
* function.c (dup_block_and_redirect): Update profile.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191851 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-29 Andreas Tobler <andreast@fgznet.ch>
andreast [Sat, 29 Sep 2012 10:28:24 +0000 (10:28 +0000)]
2012-09-29  Andreas Tobler  <andreast@fgznet.ch>

* config.gcc: Replace 'host' with 'target' when configuring for
powerpc64*-*-freebsd.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191849 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-29 Marc Glisse <marc.glisse@inria.fr>
glisse [Sat, 29 Sep 2012 08:23:23 +0000 (08:23 +0000)]
2012-09-29  Marc Glisse  <marc.glisse@inria.fr>

* tree.c (truth_type_for): New function.
* tree.h (truth_type_for): Declare.
* gimple-fold.c (and_comparisons_1): Call it.
(or_comparisons_1): Likewise.
* tree-ssa-forwprop.c (forward_propagate_into_cond): Don't use
boolean_type_node for vectors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191848 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-28 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Sat, 29 Sep 2012 04:08:17 +0000 (04:08 +0000)]
2012-09-28  Benjamin Kosnik  <bkoz@redhat.com>

* fragment.am (CONFIG_CXXFLAGS): Remove EXTRA_CXX_FLAGS.
* libsupc++/Makefile.am (LTCXXCOMPILE): Add EXTRA_CXX_FLAGS here.
* src/Makefile.am: Same.
* src/c++98/Makefile.am: Same.
* src/c++11/Makefile.am: Same.
* Makefile.in: Regenerated.
* src/Makefile.am: Same.
* src/c++11/Makefile.in: Same.
* src/c++98/Makefile.in: Same.
* include/Makefile.in: Same.
* po/Makefile.in: Same.
* python/Makefile.in: Same.
* testsuite/Makefile.in: Same.

2012-09-28  Benjamin Kosnik  <bkoz@redhat.com>

* src/c++98/Makefile.am: Fixup PARALLEL_FLAGS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191847 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Sat, 29 Sep 2012 00:18:40 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191846 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agocompiler: Fix handling of omitted expression in switch.
ian [Fri, 28 Sep 2012 22:20:39 +0000 (22:20 +0000)]
compiler: Fix handling of omitted expression in switch.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191842 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoruntime: Better detection of memory allocation request overflow.
ian [Fri, 28 Sep 2012 21:25:20 +0000 (21:25 +0000)]
runtime: Better detection of memory allocation request overflow.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191841 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * basic-block.h (RDIV): Define.
hubicka [Fri, 28 Sep 2012 21:14:23 +0000 (21:14 +0000)]
* basic-block.h (RDIV): Define.
(EDGE_FREQUENCY): Simplify.
(check_probability, combine_probabilities, apply_probability,
inverse_probability): New.
* cfgloop.c (scale_loop_profile): New function.
* cfgloop.h (scale_loop_profile): Declare.
(slpeel_add_loop_guard): Add probability parameter.
(set_prologue_iterations): Add probability parameter.
(slpeel_tree_peel_loop_to_edge): Add bound1 and bound2 parameters;
update probabilities correctly.
(vect_do_peeling_for_alignment, vect_gen_niters_for_prolog_loop): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191839 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR bootstrap/54688
bernds [Fri, 28 Sep 2012 20:32:55 +0000 (20:32 +0000)]
PR bootstrap/54688
* sched-deps.c (parse_add_or_inc): Remove MINUS handling.  Take
STACK_GROWS_DOWNWARD into account.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191838 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-28 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Fri, 28 Sep 2012 19:48:27 +0000 (19:48 +0000)]
2012-09-28  Benjamin Kosnik  <bkoz@redhat.com>

* acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Remove ENABLE_PARALLEL.
* include/Makefile.am: Same.
* src/c++98/Makefile.am: Same.
* src/Makefile.am: Same.
* Makefile.in: Regenerated.
* aclocal.m4: Same.
* configure: Same.
* doc/Makefile.in: Same.
* include/Makefile.in: Same.
* libsupc++/Makefile.in: Same.
* po/Makefile.in: Same.
* python/Makefile.in: Same.
* src/Makefile.in: Same.
* testsuite/Makefile.in: Same.
* src/c++11/Makefile.in: Same.
* src/c++98/Makefile.in: Same.

* src/c++98/compatibility-debug_list-2.cc: Update comments.
* src/c++98/compatibility-debug_list.cc: Same.
* src/c++98/compatibility-list-2.cc: Renamed to src/c++98/list-aux-2.cc
* src/c++98/compatibility-list.cc: Renamed to src/c++98/list-aux.cc
* src/c++98/compatibility-parallel_list-2.cc: Renamed to
src/c++98/list_associated-2.cc.
* src/c++98/compatibility-parallel_list.cc: Renamed to
src/c++98/list_associated.cc.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191837 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoruntime: runtime.Caller should succeed even without debug info.
ian [Fri, 28 Sep 2012 17:42:53 +0000 (17:42 +0000)]
runtime: runtime.Caller should succeed even without debug info.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191833 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoMove testsuite/c-c++-common/Wunused-local-typedefs-2.c to testsuite/g++.dg/warn/Wunus...
dodji [Fri, 28 Sep 2012 16:41:59 +0000 (16:41 +0000)]
Move testsuite/c-c++-common/Wunused-local-typedefs-2.c to testsuite/g++.dg/warn/Wunused-local-typedefs-3.C

gcc/testsuite/

* g++.dg/warn/Wunused-local-typedefs-3.C: Move the c++-only test
gcc/testsuite/c-c++-common/Wunused-local-typedefs-2.c to here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191832 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agolibgo: Use libbacktrace rather than debug/elf registration.
ian [Fri, 28 Sep 2012 14:48:30 +0000 (14:48 +0000)]
libgo: Use libbacktrace rather than debug/elf registration.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191831 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR c++/54372 - unused attribute inactive on dependant entities
dodji [Fri, 28 Sep 2012 13:32:41 +0000 (13:32 +0000)]
PR c++/54372 - unused attribute inactive on dependant entities

In the example of this patch, gcc/g++ invoked with
-Wunused-local-typedefs warns on dependant entities even when those
are decorated with the 'unused' attribute.

This is because in cplus_decl_attributes, save_template_attributes
makes so that the 'unused' attribute is applied to its appertaining
entity only at instantiation time.  But then at parsing time
maybe_warn_unused_local_typedefs checks for TREE_USED before warning.

This patch applies the 'unused' attribute at compilation time.

Tested on x86_64-unknown-linux-gnu against trunk.

gcc/cp/

* decl2.c (is_late_template_attribute): "unused" attribute is to
be applied at compile time.

gcc/testsuite/

* c-c++-common/Wunused-local-typedefs-2.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191830 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR c++/29028 - Missed unused warning on using declaration
dodji [Fri, 28 Sep 2012 12:51:30 +0000 (12:51 +0000)]
PR c++/29028 - Missed unused warning on using declaration

In the example of the patch, g++ fails to warn that the variable N::i
(introduced via a using declaration) is unused.

This is because as we want to emit the warning in poplevel, when we
walk the local bindings returned by getdecls, we forget that a
VAR_DECL introduced by a using declaration is represented by a
TREE_LIST which TREE_VALUE is the VAR_DECL, and we wrongly look for a
bare VAR_DECL.

Fixed thus and tested on x86_64-unknown-linux-gnu against trunk.

gcc/cp/

* decl.c (poplevel<warn_unused*>): Do not forget that some local
bindings are represented by a TREE_LIST.

gcc/testsuite/

* g++.dg/warn/Wunused-var-18.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191829 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR c++/53551 - -Wunused-local-typedefs misses uses
dodji [Fri, 28 Sep 2012 12:21:33 +0000 (12:21 +0000)]
PR c++/53551 - -Wunused-local-typedefs misses uses

We don't record the use of a typedef when it's used through a
typename.  Fixed thus.

Tested on x86_64-unknown-linux-gnu against trunk.

gcc/cp/

* decl.c (make_typename_type): Record the use of typedefs.

gcc/testsuite/

* g++.dg/warn/Wunused-local-typedefs-2.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191828 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/54716
jakub [Fri, 28 Sep 2012 12:20:54 +0000 (12:20 +0000)]
PR target/54716
* config/i386/predicates.md (nonimmediate_or_const_vector_operand):
New predicate.
* config/i386/i386.c (ix86_expand_vector_logical_operator): New
function.
* config/i386/i386-protos.h (ix86_expand_vector_logical_operator): New
prototype.
* config/i386/sse.md (<code><mode>3 VI logic): Use it.

* gcc.target/i386/xorps-sse2.c: Remove xfails.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191827 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR tree-optimization/54713
jakub [Fri, 28 Sep 2012 12:18:57 +0000 (12:18 +0000)]
PR tree-optimization/54713
* fold-const.c (vec_cst_ctor_to_array): Give up if vector CONSTRUCTOR
has vector elements.
(fold_ternary_loc) <case BIT_FIELD_REF>: Likewise.
* tree-vect-generic.c (vector_element): Don't rely on CONSTRUCTOR elts
indexes.  Use BIT_FIELD_REF if CONSTRUCTOR has vector elements.
(lower_vec_perm): Use NULL_TREE CONSTRUCTOR indexes.

* gcc.c-torture/compile/pr54713-1.c: New test.
* gcc.c-torture/compile/pr54713-2.c: New test.
* gcc.c-torture/compile/pr54713-3.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191826 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/avr/avr.md (adjust_len): Add lpm.
gjl [Fri, 28 Sep 2012 11:37:46 +0000 (11:37 +0000)]
* config/avr/avr.md (adjust_len): Add lpm.
(reload_in<mode>): Use avr_out_lpm for output.  Use "lpm" for
adjust_len.
* config/avr/avr-protos.h (avr_out_lpm): New prototype.
* config/avr/avr.c (avr_out_lpm): Make global.
(adjust_insn_length): Handle ADJUST_LEN_LPM.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191825 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-28 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 28 Sep 2012 11:07:17 +0000 (11:07 +0000)]
2012-09-28  Richard Guenther  <rguenther@suse.de>

PR lto/47799
* lto-streamer-out.c (tree_is_indexable): Make PARM_DECLs global.
(lto_output_tree_ref): Handle references to them.
(output_function): Do not output function arguments again.
* lto-streamer-in.c (input_function): Do not input arguments
again, nor overwrite them.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191824 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-28 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 28 Sep 2012 09:03:00 +0000 (09:03 +0000)]
2012-09-28  Richard Guenther  <rguenther@suse.de>

* cgraph.h (symtab_node_base): Re-order and pack fields.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191823 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/avr/avr.c (avr_pgm_check_var_decl): Fix non-error diagnostic.
gjl [Fri, 28 Sep 2012 08:31:55 +0000 (08:31 +0000)]
* config/avr/avr.c (avr_pgm_check_var_decl): Fix non-error diagnostic.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191821 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR rtl-optimization/52543
gjl [Fri, 28 Sep 2012 08:21:06 +0000 (08:21 +0000)]
PR rtl-optimization/52543
* config/avr/avr.c (avr_mode_dependent_address_p): Return true for
all non-generic address spaces.
(TARGET_SECONDARY_RELOAD): New hook define to...
(avr_secondary_reload): ...this new static function.
* config/avr/avr.md (reload_in<mode>): New insns.
Undo r185605 (mostly):
* config/avr/avr-protos.h (avr_load_lpm): Remove.
* config/avr/avr.c (avr_load_libgcc_p): Don't restrict to __flash loads.
(avr_out_lpm): Also handle loads > 1 byte.
(avr_load_lpm): Remove.
(avr_find_unused_d_reg): New static function.
(avr_out_lpm_no_lpmx): New static function.
(adjust_insn_length): Remove ADJUST_LEN_LOAD_LPM.
* config/avr/avr.md (unspec): Remove UNSPEC_LPM.
(load_<mode>_libgcc): Use MEM instead of UNSPEC_LPM.
(load_<mode>, load_<mode>_clobber): Remove.
(mov<mode>): For multi-byte move from non-generic
16-bit address spaces: Expand to *mov<mode> again.
(load<mode>_libgcc): New expander.
(split-lpmx): Remove split.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191820 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR bootstrap/54732
ian [Fri, 28 Sep 2012 06:13:00 +0000 (06:13 +0000)]
PR bootstrap/54732
* configure.ac: Add no-dependencies to AM_INIT_AUTOMAKE.
* Makefile.am: Add dependencies for all objects.
* configure, aclocal.m4, Makefile.in: Rebuild.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191819 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Fri, 28 Sep 2012 00:18:37 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191816 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR other/54726
ian [Thu, 27 Sep 2012 19:20:49 +0000 (19:20 +0000)]
PR other/54726
* elf.c (backtrace_initialize): Set *fileln_fn, not
state->fileln_fn.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191811 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-27 Dehao Chen <dehao@google.com>
dehao [Thu, 27 Sep 2012 17:06:22 +0000 (17:06 +0000)]
2012-09-27  Dehao Chen  <dehao@google.com>

* tree.h (tree_constructor): Remove IS_UNKNOWN_LOCATION.
(extern void protected_set_expr_location): Likewise.
(function_args_iter_next): Likewise.
(inlined_function_outer_scope_p): Likewise.
* input.h (IS_UNKNOWN_LOCATION): Likewise.
* fold-const.c (expr_location_or): Likewise.
* lto-cgraph.c (output_node_opt_summary): Likewise.
* dwarf2out.c (add_src_coords_attributes): Likewise.
* tree-eh.c (lower_try_finally_dup_block): Likewise.
* profile.c (branch_prob):
* cfgexpand.c (expand_gimple_cond): Likewise.
(expand_gimple_basic_block): Likewise.
(construct_exit_block): Likewise.
(gimple_expand_cfg): Likewise.
* cfgcleanup.c (try_forward_edges): Likewise.
* tree-ssa-live.c (remove_unused_scope_block_p): Likewise.
(dump_scope_block): Likewise.
* ipa-prop.c (ipa_write_jump_function): Likewise.
* rtl.h (extern void rtl_check_failed_flag): Likewise.
* gimple.h (gimple_set_location): Likewise.
(gimple_has_location): Likewise.
* cfgrtl.c (unique_locus_on_edge_between_p): Likewise.
(force_nonfallthru_and_redirect): Likewise.
(fixup_reorder_chain): Likewise.
(cfg_layout_merge_blocks): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191810 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-27 Meador Inge <meadori@codesourcery.com>
meadori [Thu, 27 Sep 2012 16:05:38 +0000 (16:05 +0000)]
2012-09-27  Meador Inge  <meadori@codesourcery.com>

* gcc-ar.c (main): Handle the returning of the sub-process error
code correctly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191809 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.target/arm/unsigned-extend-1.c: Omit -march option.
janis [Thu, 27 Sep 2012 15:49:41 +0000 (15:49 +0000)]
* gcc.target/arm/unsigned-extend-1.c: Omit -march option.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191808 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-27 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 27 Sep 2012 12:53:46 +0000 (12:53 +0000)]
2012-09-27  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/54727
* config/cpu/i486/opt/bits/opt_random.h: Avoid UINT64_C.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191806 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoChangeLog:
uweigand [Thu, 27 Sep 2012 11:10:08 +0000 (11:10 +0000)]
ChangeLog:

* lower-subreg.c (enum classify_move_insn): Rename
SIMPLE_PSEUDO_REG_MOVE to DECOMPOSABLE_SIMPLE_MOVE.
(find_decomposable_subregs): Update.
(decompose_multiword_subregs): Add DECOMPOSE_COPIES parameter.
Only mark pseudo-to-pseudo copies as DECOMPOSABLE_SIMPLE_MOVE
if that parameter is true.
(rest_of_handle_lower_subreg): Call decompose_multiword_subregs
with DECOMPOSE_COPIES false.
(rest_of_handle_lower_subreg2): Call decompose_multiword_subregs
with DECOMPOSE_COPIES true.

testsuite/ChangeLog:

* gcc.dg/lower-subreg-1.c: Disable on arm-*-* targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191805 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix a typo in gcov.texi.
mpolacek [Thu, 27 Sep 2012 11:06:38 +0000 (11:06 +0000)]
Fix a typo in gcov.texi.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191804 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * init.c (build_new_1): Don't test TREE_CONSTANT
jakub [Thu, 27 Sep 2012 11:01:17 +0000 (11:01 +0000)]
* init.c (build_new_1): Don't test TREE_CONSTANT
of INTEGER_CST.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191803 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/54703
jakub [Thu, 27 Sep 2012 10:48:07 +0000 (10:48 +0000)]
PR target/54703
* simplify-rtx.c (simplify_binary_operation_1): Perform
(x - (x & y)) -> (x & ~y) optimization only for integral
modes.

* gcc.target/i386/pr54703.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191801 138bc75d-0d04-0410-961f-82ee72b054a4