platform/upstream/linaro-gcc.git
11 years ago2012-08-06 Robert Dewar <dewar@adacore.com>
charlet [Mon, 6 Aug 2012 08:41:41 +0000 (08:41 +0000)]
2012-08-06  Robert Dewar  <dewar@adacore.com>

* xoscons.adb: Minor code reorganization (remove unused variable
E at line 331).
* g-sercom.ads, exp_attr.adb: Minor reformatting.
* sinfo.adb, sinfo.ads: Minor cleanup, remove unused flag
Static_Processing_OK.

2012-08-06  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Build_Derived_Concurrent_Type): Copy discriminant
constraint when building a constrained subtype, to prevent
undesirable tree sharing betweeb geberated subtype and derived
type definition.

2012-08-06  Thomas Quinot  <quinot@adacore.com>

* g-sercom-mingw.adb, s-oscons-tmplt.c: Add missing constants
on Windows.

2012-08-06  Sergey Rybin  <rybin@adacore.com frybin>

* tree_io.ads: Update ASIS_Version_Number because of the tree fix
for discriminant constraints for concurrent types.

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

11 years ago2012-08-06 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 6 Aug 2012 08:35:47 +0000 (08:35 +0000)]
2012-08-06  Thomas Quinot  <quinot@adacore.com>

* sem_ch4.adb: Minor reformatting.

2012-08-06  Thomas Quinot  <quinot@adacore.com>

* s-oscons-tmplt.c, xoscons.adb: Per the Single UNIX Specification,
types cc_t, speed_t, and tcflag_t defined in <termios.h> all are
unsigned types. Add required special handling to have their correct
unsigned values in s-oscons.ads.

2012-08-06  Thomas Quinot  <quinot@adacore.com>

* par-ch13.adb: Minor reformatting.

2012-08-06  Thomas Quinot  <quinot@adacore.com>

* g-sercom.adb, g-sercom.ads, g-sercom-mingw.adb, g-sercom-linux.adb
(Set): Add Local and Flow_Control settings.

2012-08-06  Ed Schonberg  <schonberg@adacore.com>

* exp_attr.adb: Suppress saving of 'Old if assertions are not
enabled.

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

11 years ago2012-08-06 Tom de Vries <tom@codesourcery.com>
vries [Mon, 6 Aug 2012 08:32:27 +0000 (08:32 +0000)]
2012-08-06  Tom de Vries  <tom@codesourcery.com>

* gcc.dg/tree-ssa/vrp78.c: New test.

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

11 years ago2012-08-06 Tom de Vries <tom@codesourcery.com>
vries [Mon, 6 Aug 2012 08:32:20 +0000 (08:32 +0000)]
2012-08-06  Tom de Vries  <tom@codesourcery.com>

* tree-switch-conversion.c (emit_case_bit_tests): Generate MINUS_EXPR in
unsigned type.

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

11 years ago2012-08-06 Yannick Moy <moy@adacore.com>
charlet [Mon, 6 Aug 2012 08:32:05 +0000 (08:32 +0000)]
2012-08-06  Yannick Moy  <moy@adacore.com>

* sem_ch4.adb (Analyze_Selected_Component): Issue an error in
Alfa mode for component not present.

2012-08-06  Thomas Quinot  <quinot@adacore.com>

* exp_ch7.adb (Insert_Actions_In_Scope_Around): Do not
use a renaming of Scope_Stack.Table (Scope_Stack.Last), as
Process_Transient_Object may introduce new scopes and cause
Scope_Stack.Table to be reallocated.

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

11 years ago2012-08-06 Robert Dewar <dewar@adacore.com>
charlet [Mon, 6 Aug 2012 08:26:27 +0000 (08:26 +0000)]
2012-08-06  Robert Dewar  <dewar@adacore.com>

* exp_util.adb, switch-c.adb, inline.ads, sem_ch10.adb, types.ads,
checks.adb, sem_prag.adb, sem.adb, sem.ads, sem_res.adb, sem_attr.adb,
gnat1drv.adb, exp_ch4.adb, exp_ch6.adb, opt.ads, osint.adb: Implement
extended overflow checks (step 1).
(Overflow_Check_Type, Suppress_Record, Suppress_All): New types.
(Suppress_Array): Extended to include switches to control extended
overflow checking (and renamed to Suppress_Record).
Update all uses of Suppress_Array.

2012-08-06  Thomas Quinot  <quinot@adacore.com>

* makeutl.ads: Minor documentation fix.

2012-08-06  Thomas Quinot  <quinot@adacore.com>

* exp_ch7.adb: Minor reformatting.

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

11 years ago2012-08-06 Geert Bosch <bosch@adacore.com>
charlet [Mon, 6 Aug 2012 08:17:25 +0000 (08:17 +0000)]
2012-08-06  Geert Bosch  <bosch@adacore.com>

* a-ngelfu.adb: Change obsolete comment that this is a non-strict
implementation.

2012-08-06  Steve Baird  <baird@adacore.com>

* exp_ch7.adb (Build_Finalizer.Process_Object_Declaration): If
CodePeer_Mode = True then omit exception handlers for finalization calls

2012-08-06  Robert Dewar  <dewar@adacore.com>

* exp_aggr.adb: Minor reformatting.

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

11 years ago2012-08-06 Robert Dewar <dewar@adacore.com>
charlet [Mon, 6 Aug 2012 08:12:36 +0000 (08:12 +0000)]
2012-08-06  Robert Dewar  <dewar@adacore.com>

* sem_ch6.adb: Remove useless flag Body_Deleted.

2012-08-06  Thomas Quinot  <quinot@adacore.com>

* sinfo.ads (End_Span): Change default from No_Uint to Uint_0,
as this is what all usage occurrences of this attribute are
expecting.
* uintp.adb (UI_To_Int): Add assertion to guard against calling
with No_Uint.

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

11 years ago2012-08-06 Vincent Pucci <pucci@adacore.com>
charlet [Mon, 6 Aug 2012 08:12:10 +0000 (08:12 +0000)]
2012-08-06  Vincent Pucci  <pucci@adacore.com>

PR ada/54125
* exp_attr.adb (Expand_N_Attribute_Reference): Expand new
Atomic_Always_Lock_Free attribute.
* sem_attr.adb (Analyze_Attribute): Analyze new
Atomic_Always_Lock_Free attribute.
(Eval_Attribute): Nothing to do with new Atomic_Always_Lock_Free
attribute.
* sem_ch9.adb (Allows_Lock_Free_Implementation):
Support_Atomic_Primitives check replaces previous erroneous
size check.
* sem_util.adb, sem_util.ads (Support_Atomic_Primitives):
New routine.
* snames.ads-tmpl: New name Name_Atomic_Always_Lock_Free and
new attribute Attribute_Atomic_Always_Lock_Free defined.
* s-atopri.adb: Support_Atomic_Primitives checks replaced by
Atomic_Always_Lock_Free queries.
* system-aix64.ads, system-aix.ads, system-darwin-ppc.ads,
system-hpux.ads, system-linux-alpha.ads, system-linux-hppa.ads,
system-linux-ppc.ads, system-linux-s390.ads,
system-linux-s390x.ads, system-linux-sh4.ads,
system-linux-sparc.ads, system-lynxos178-ppc.ads,
system-lynxos-ppc.ads, system-mingw.ads,
system-vxworks-arm.ads, system-solaris-sparc.ads,
system-solaris-sparcv9.ads, system-vms_64.ads,
system-vxworks-m68k.ads, system-vxworks-mips.ads,
system-vxworks-ppc.ads, system-vxworks-sparcv9.ads: Flag
Support_Atomic_Primitives removed.

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

11 years ago2012-08-06 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 6 Aug 2012 08:02:35 +0000 (08:02 +0000)]
2012-08-06  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_mech.adb (Set_Mechanisms): OUT and IN OUT parameters are
now unconditionally passed by reference. IN parameters subject
to convention C_Pass_By_Copy are passed by copy, otherwise they
are passed by reference.

2012-08-06  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Analyze_Object_Declaration): According to
AI95-0303, protected objects with interrupt handlers can be
declared in nested scopes. This is a binding interpretation,
and thus applies to all versions of the compiler.

2012-08-06  Robert Dewar  <dewar@adacore.com>

* frontend.adb, exp_aggr.adb: Minor reformatting.

2012-08-06  Thomas Quinot  <quinot@adacore.com>

* par-endh.adb: Minor reformatting.

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

11 years ago2012-08-06 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 6 Aug 2012 07:58:49 +0000 (07:58 +0000)]
2012-08-06  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb (Process_Transient_Objects): Remove obsolete loop
processing related to array initialization. The expansion of
loops already contains a mechanism to detect controlled objects
generated by expansion and introduce a block around the loop
statements for finalization purposes.

2012-08-06  Vincent Pucci  <pucci@adacore.com>

* sem_ch13.adb: Current scope must be within
or same as the scope of the entity while analysing aspect
specifications at freeze point.

2012-08-06  Thomas Quinot  <quinot@adacore.com>

* par_sco.adb: Add note about dubious SCO for TERMINATE
alternative.
* sem_ch8.adb, exp_ch11.adb: Minor reformatting.

2012-08-06  Ed Schonberg  <schonberg@adacore.com>

* exp_aggr.adb (Two_Dim_Packed_Array_Handled): New procedure to
transform an aggregate for a packed two-dimensional array into
a one-dimensional array of constant values, in order to avoid
the generation of component-by-component assignments.

2012-08-06  Thomas Quinot  <quinot@adacore.com>

* frontend.adb: Do not attempt to process deferred configuration
pragmas if the main unit failed to load, to avoid cascaded
inconsistencies that can lead to a compiler crash.

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

11 years ago2012-08-06 Vincent Pucci <pucci@adacore.com>
charlet [Mon, 6 Aug 2012 07:54:34 +0000 (07:54 +0000)]
2012-08-06  Vincent Pucci  <pucci@adacore.com>

* s-atopri.adb: Minor reformatting.

2012-08-06  Arnaud Charlet  <charlet@adacore.com>

* gnat-style.texi: Clarify that all subprograms should be
documented. Minor rewording.

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

11 years ago2012-08-06 Robert Dewar <dewar@adacore.com>
charlet [Mon, 6 Aug 2012 07:51:56 +0000 (07:51 +0000)]
2012-08-06  Robert Dewar  <dewar@adacore.com>

* aspects.ads: Define Aspect_Id_Exclude_No_Aspect.
* par-ch13.adb, restrict.adb: Use Aspect_Id_Exclude_No_Aspect to
simplify code.

2012-08-06  Yannick Moy  <moy@adacore.com>

* gnat-style.texi: Update style guide for declarations.

2012-08-06  Yannick Moy  <moy@adacore.com>

* sem_attr.adb (Analyze_Attribute): In the case for 'Old,
skip a special expansion which is not needed in Alfa mode.

2012-08-06  Yannick Moy  <moy@adacore.com>

* sem_ch5.adb (Analyze_Iterator_Specification): Do not perform
an expansion of the iterator in Alfa mode.

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

11 years ago2012-08-06 Robert Dewar <dewar@adacore.com>
charlet [Mon, 6 Aug 2012 07:46:43 +0000 (07:46 +0000)]
2012-08-06  Robert Dewar  <dewar@adacore.com>

* s-oscons-tmplt.c, sem_ch9.adb, osint.adb: Minor reformatting.

2012-08-06  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch5.adb (Analyze_Loop_Parameter_Specification): Remove obsolete
Alfa-specific guard. The code is a leftover from an early
implementation of iterators which is no longer in use.

2012-08-06  Vincent Celier  <celier@adacore.com>

* par-ch13.adb (Get_Aspect_Specifications): Do not consider
No_Aspect when checking for a mispelled aspect.

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

11 years ago2012-08-06 Robert Dewar <dewar@adacore.com>
charlet [Mon, 6 Aug 2012 07:43:45 +0000 (07:43 +0000)]
2012-08-06  Robert Dewar  <dewar@adacore.com>

* s-htable.adb: Minor reformatting.

2012-08-06  Thomas Quinot  <quinot@adacore.com>

* s-oscons-tmplt.c, g-socket.adb (System.OS_Constants.Target_OS):
Suppress warnings so that we don't have to do it at each usage.

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

11 years ago2012-08-06 Vincent Pucci <pucci@adacore.com>
charlet [Mon, 6 Aug 2012 07:33:43 +0000 (07:33 +0000)]
2012-08-06  Vincent Pucci  <pucci@adacore.com>

* exp_ch9.adb (Build_Lock_Free_Unprotected_Subprogram_Body):
Use of Known_Static_Esize instead of  Known_Esize and
Known_Static_RM_Size instead of Known_RM_Size in order to
properly call UI_To_Int. Don't check the size of the component
type in case of generic.
* sem_ch9.adb (Allows_Lock_Free_Implementation):
Use of Known_Static_Esize instead of Known_Esize and
Known_Static_RM_Size instead of Known_RM_Size in order to properly
call UI_To_Int. Don't check the size of the component type in
case of generic.

2012-08-06  Hristian Kirtchev  <kirtchev@adacore.com>

* checks.adb (Discrete_Range_Cond): Do not try to optimize on
the assumption that the type of an expression can always fit in
the target type of a conversion.

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

11 years agoDaily bump.
gccadmin [Mon, 6 Aug 2012 00:17:34 +0000 (00:17 +0000)]
Daily bump.

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

11 years agoDocument AMD btver2
vekumar [Sun, 5 Aug 2012 12:29:52 +0000 (12:29 +0000)]
Document AMD btver2

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

11 years ago2012-08-04 Sandra Loosemore <sandra@codesourcery.com>
sandra [Sun, 5 Aug 2012 00:35:05 +0000 (00:35 +0000)]
2012-08-04  Sandra Loosemore  <sandra@codesourcery.com>
    Richard Sandiford  <rdsandiford@googlemail.com>

gcc/
* config/mips/mips.c (mips_option_override): Check -fpic
for compatibility with -mabicalls and ABI.

gcc/testsuite/
* g++.dg/opt/enum2.C: Require fpic target.
* g++.dg/lto/20090303_0.C: Likewise.

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

11 years agoDaily bump.
gccadmin [Sun, 5 Aug 2012 00:18:19 +0000 (00:18 +0000)]
Daily bump.

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

11 years ago2012-08-04 Catherine Moore <clm@codesourcery.com>
sandra [Sat, 4 Aug 2012 22:16:57 +0000 (22:16 +0000)]
2012-08-04  Catherine Moore  <clm@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/mips/xlr.md (ir_xlr_alu_clz): New insn_reservation.
(ir_xlr_alu): Remove clz.
* config/mips/mips-cpus.def (xlr): Set PTF_AVOID_BRANCHLIKELY.

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

11 years ago2012-08-04 Sandra Loosemore <sandra@codesourcery.com>
sandra [Sat, 4 Aug 2012 22:05:55 +0000 (22:05 +0000)]
2012-08-04  Sandra Loosemore  <sandra@codesourcery.com>
    Catherine Moore  <clm@codesourcery.com>

gcc/testsuite/
* gcc.target/mips/clear-cache-1.c: Test for alternate cache
flush function names too.
* gcc.target/mips/clear-cache-1.c: Likewise.

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

11 years agoFix PR 54033, problems with -I, with test cases
hjl [Sat, 4 Aug 2012 18:26:56 +0000 (18:26 +0000)]
Fix PR 54033, problems with -I, with test cases

 PR fortran/54033
 * scanner.c (add_path_to_list):  New argument warn.  Don't
 warn if it is true.
 (gfc_add_include_path):  Warn if directory is missing.
 (gfc_add_intrinsic_modules_path):  Do not warn if directory
 is missing.
 * optinons.c (gfc_handle_option):  Do not add directory
 for intrinsic modules to normal include path.

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

11 years ago * arm.c (arm_gen_constant): Use SImode when preparing operands for
rearnsha [Sat, 4 Aug 2012 14:02:56 +0000 (14:02 +0000)]
* arm.c (arm_gen_constant): Use SImode when preparing operands for
gen_extzv_t2.

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

11 years ago2012-08-04 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sat, 4 Aug 2012 11:44:28 +0000 (11:44 +0000)]
2012-08-04  Paolo Carlini  <paolo.carlini@oracle.com>

Revert:
2012-08-03  Ollie Wild  <aaw@google.com>
    Richard Smith  <richardsmith@google.com>

* include/bits/stl_map.h (operator[](key_type&&)): Replace
std::make_pair with value_type.
* testsuite/23_containers/map/operators/2.cc: New test.

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

11 years ago * config/i386/i386.h (QI_REGNO_P): New define.
uros [Sat, 4 Aug 2012 08:37:50 +0000 (08:37 +0000)]
* config/i386/i386.h (QI_REGNO_P): New define.
(ANY_QI_REGNO_P): Ditto.
(GENERAL_REGNO_P): Use IN_RANGE macro.
(QI_REG_P): Use QI_REGNO_P.
(ANY_QI_REG_P): Use GENERAL_REGNO_P and QI_REGNO_P.
(HARD_REGNO_CALLER_SAVE_MODE): Use QI_REGNO_P.
* config/i386/i386.c (ix86_hard_regno_mode_ok): Ditto.
(x86_extended_QIreg_mentioned_p): Ditto.  Also check if
register is a general register.

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

11 years agoReplace top_srcdir with srcdir
hjl [Sat, 4 Aug 2012 05:33:27 +0000 (05:33 +0000)]
Replace top_srcdir with srcdir

PR driver/54171
* Makefile.in (version): Replace top_srcdir with srcdir.

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

11 years agoDaily bump.
gccadmin [Sat, 4 Aug 2012 00:18:21 +0000 (00:18 +0000)]
Daily bump.

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

11 years ago * Makefile.in (version): set to BASE-VER file from gcc directory.
ian [Fri, 3 Aug 2012 23:42:20 +0000 (23:42 +0000)]
* Makefile.in (version): set to BASE-VER file from gcc directory.

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

11 years ago2012-08-03 François Dumont <fdumont@gcc.gnu.org>
fdumont [Fri, 3 Aug 2012 19:34:49 +0000 (19:34 +0000)]
2012-08-03  François Dumont  <fdumont@gcc.gnu.org>

* include/debug/functions.h (__check_partition_lower_aux): Remove
redundant comparison with pivot value.
(__check_partition_upper_aux): Likewise.

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

11 years ago * config/i386/sync.md (*atomic_fetch_add_cmp<mode>): Use
uros [Fri, 3 Aug 2012 17:40:34 +0000 (17:40 +0000)]
* config/i386/sync.md (*atomic_fetch_add_cmp<mode>): Use
incdec_operand predicate to return INC or DEC insn mnemonic.
Add %K operand modifier.
(atomic_add<mode>): Use incdec_operand predicate to
return INC or DEC insn mnemonic.
(atomic_dec<mode>): Ditto.

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

11 years ago2012-08-03 Bill Schmidt <wschmidt@linux.ibm.com>
wschmidt [Fri, 3 Aug 2012 16:12:22 +0000 (16:12 +0000)]
2012-08-03  Bill Schmidt  <wschmidt@linux.ibm.com>

PR target/54156
* testsuite/gcc.dg/vect/pr53773.c: Change to use optimized dump.

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

11 years agofortran/
mikael [Fri, 3 Aug 2012 16:00:50 +0000 (16:00 +0000)]
fortran/
PR fortran/54166
* trans-array.c (set_loop_bounds): Access specinfo using spec_dim.

testsuite/
PR fortran/54166
* gfortran.dg/array_5.f90: New test.

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

11 years ago2012-08-03 Ollie Wild <aaw@google.com>
aaw [Fri, 3 Aug 2012 15:26:36 +0000 (15:26 +0000)]
2012-08-03  Ollie Wild  <aaw@google.com>
    Richard Smith  <richardsmith@google.com>

* include/bits/stl_map.h (operator[](key_type&&)): Replace
std::make_pair with value_type.
* testsuite/23_containers/map/operators/2.cc: New test.

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

11 years ago PR tree-optimization/54146
matz [Fri, 3 Aug 2012 14:43:09 +0000 (14:43 +0000)]
PR tree-optimization/54146
* cfgexpand.c (add_scope_conflicts_1): Use bitmap_ior_into.
(add_scope_conflicts): Iterate in RPO order.
(add_stack_protection_conflicts): Iterate over the other triangle.
(fini_vars_expansion): Clear stack_vars_sorted.

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

11 years agogcc/
glisse [Fri, 3 Aug 2012 12:21:14 +0000 (12:21 +0000)]
gcc/
2012-08-03 Marc Glisse <marc.glisse@inria.fr>

PR tree-optimization/30318
* double-int.c (mul_double_wide_with_sign): New function.
(mul_double_with_sign): Call the new function.
* double-int.h (mul_double_wide_with_sign): Declare the new function.
* tree-vrp.c (extract_range_from_binary_expr_1) [MULT_EXPR]:
Handle integer types that wrap on overflow.
(quad_int_cmp): New helper function.
(quad_int_pair_sort): Likewise.

gcc/testsuite/
2012-08-03 Marc Glisse <marc.glisse@inria.fr>

PR tree-optimization/30318
* gcc.dg/tree-ssa/vrp77.c: New testcase.

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

11 years agogcc/cp/ChangeLog
glisse [Fri, 3 Aug 2012 12:00:43 +0000 (12:00 +0000)]
gcc/cp/ChangeLog
2012-08-03  Marc Glisse  <marc.glisse@inria.fr>

* pt.c (tsubst_copy_and_build): Handle VECTOR_TYPE like scalars.
* cp-tree.h (scalarish_type_p): Declare.
* tree.c (scalarish_type_p): Make non-static.

gcc/testsuite/ChangeLog
2012-08-03  Marc Glisse  <marc.glisse@inria.fr>

* g++.dg/ext/vector17.C: New testcase.

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

11 years ago2012-08-03 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 3 Aug 2012 08:55:43 +0000 (08:55 +0000)]
2012-08-03  Richard Guenther  <rguenther@suse.de>

* tree-vect-loop-manip.c (vect_can_advance_ivs_p): Query
is_gimple_reg on the SSA name, not its variable.
(vect_update_ivs_after_vectorizer): Likewise.
* tree-ssa-copyrename.c (rename_ssa_copies): Likewise.
* tree-if-conv.c (if_convertible_phi_p): Likewise.
(predicate_scalar_phi): Likewise.
* tree-vect-loop.c (vect_analyze_scalar_cycles_1): Likewise.
(vect_analyze_scalar_cycles_1): Likewise.
* tree-ssa-live.c (register_ssa_partition_check): Likewise.
* tree-outof-ssa.c (eliminate_useless_phis): Likewise.
* tree-ssa-reassoc.c (phi_rank): Likewise.
* tree-parloops.c (separate_decls_in_region_name): Use
replace_ssa_name_symbol.
* tree-predcom.c (base_names_in_chain_on): Likewise.
* matrix-reorg.c (update_type_size): Query the type of the SSA name,
not its variable.
* gimple-ssa-strength-reduction.c (create_mul_ssa_cand): Likewise.
(create_mul_imm_cand): Likewise.
(create_add_ssa_cand): Likewise.
(create_add_imm_cand): Likewise.
(slsr_process_add): Likewise.
* tree-inline.c (remap_ssa_name): Do not set the type of the
new SSA_NAME.
* tree-ssa-structalias.c (get_constraint_for_ssa_var): Clarify
assert.  Check for default def first.

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

11 years ago * cfgrtl.c (print_rtl_with_bb): Do not print a newline between insns.
steven [Fri, 3 Aug 2012 08:00:24 +0000 (08:00 +0000)]
* cfgrtl.c (print_rtl_with_bb): Do not print a newline between insns.

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

11 years ago * sched-vis (print_pattern): Handle SEQUENCE also.
steven [Fri, 3 Aug 2012 07:58:49 +0000 (07:58 +0000)]
* sched-vis (print_pattern): Handle SEQUENCE also.

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

11 years agoRevert "PR 34548"
rth [Fri, 3 Aug 2012 03:28:36 +0000 (03:28 +0000)]
Revert "PR 34548"

This reverts commit 190051.

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

11 years ago * include/std/memory: Include auto_ptr.h later.
redi [Fri, 3 Aug 2012 00:27:48 +0000 (00:27 +0000)]
* include/std/memory: Include auto_ptr.h later.
* include/bits/shared_ptr.h (shared_ptr(auto_ptr<_Up>&&): Remove
definition.
* include/bits/shared_ptr_base.h (__shared_ptr(auto_ptr<_Up>&&):
Likewise.
* include/bits/unique_ptr.h (unique_ptr(auto_ptr<_Up>&&): Likewise.
* include/backward/auto_ptr.h (unique_ptr(auto_ptr<_Up>&&): Define.
(shared_ptr(auto_ptr<_Up>&&, __shared_ptr(auto_ptr<_Up>&&): Likewise.
* include/std/future: Reduce header dependencies.
* testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
numbers.
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.

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

11 years agoDaily bump.
gccadmin [Fri, 3 Aug 2012 00:17:34 +0000 (00:17 +0000)]
Daily bump.

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

11 years ago2012-08-02 Kenneth Zadeck <zadeck@naturalbridge.com>
zadeck [Thu, 2 Aug 2012 22:39:57 +0000 (22:39 +0000)]
2012-08-02  Kenneth Zadeck <zadeck@naturalbridge.com>

* cfgexpand.c (expand_debug_locations):  Encapsulate test for
CONST_DOUBLE in macro.
* combine.c (try_combine, gen_lowpart_for_combine): Ditto.
* cprop.c (implicit_set_cond_p): Ditto.
* cselib.c (rtx_equal_for_cselib_1): Ditto.
* expmed.c (expand_mult): Ditto.
* expr.c (convert_modes): Ditto.
* ira-costs.c (record_reg_classes): Ditto.
* ira-lives.c (single_reg_class): Ditto.
* optabs.c (expand_copysign_absneg, expand_copysign): Ditto.
* print-rtl.c (print_rtx): Ditto.
* recog.c (simplify_while_replacing, const_double_operand)
(asm_operand_ok, constrain_operands): Ditto.
* reg-stack.c (subst_stack_regs_pat): Ditto.
* reload.c (find_reloads, find_equiv_reg): Ditto.
* rtlanal.c (replace_rtx): Remove test.
* rtlanal.c (constant_pool_constant_p, split_double): Encapsulate test for
CONST_DOUBLE in macro.
* simplify-rtx.c (mode_signbit_p, avoid_constant_pool_reference)
(simplify_unary_operation_1, simplify_const_unary_operation)
(simplify_binary_operation_1, simplify_const_binary_operation)
(simplify_relational_operation_1)
(simplify_const_relational_operations)
(implify_subreg): Ditto.
* varasm.c (output_constant_pool_2): Ditto.
* rtl.h (CONST_DOUBLE_AS_INT_P, CONST_DOUBLE_AS_FLOAT_P): New
macros.
* rtl.def (CONST_DOUBLE):  Updated comments.

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

11 years agogcc/
rsandifo [Thu, 2 Aug 2012 21:31:57 +0000 (21:31 +0000)]
gcc/
PR target/51931
* config/mips/mips-protos.h (mips_strip_unspec_address): Declare.
* config/mips/mips.c (mips_strip_unspec_address): Make extern.
(mips16_rewrite_pool_constant): Make a copy of the pool constant
before adding to a PC-relative table.
(mips16_lay_out_constants): Add a SPLIT_P parameter.
(mips16_load_branch_target, mips16_split_long_branches): New functions.
(mips_reorg): Update call to mips16_lay_out_constants.
Call mips16_split_long_branches.
* config/mips/predicates.md (pc_or_label_operand): Delete.
* config/mips/mips.md (length): Add a calculation for MIPS16 branches.
Move the extended_mips16 handling further down.
(*branch_equality<mode>_mips16): Replace use pc_or_label_operand
with explicit label_ref and pc.  Follow the usual operand numbering.
(*branch_equality<mode>_mips16_inverted): New pattern.
(*jump_mips16): Add length attribute.
(indirect_jump_and_restore_<mode>): New pattern.
(consttable_int): Call mips_strip_unspec_address on the operand.

gcc/testsuite/
PR target/51931
* gcc.c-torture/compile/20001226-1.c: Remove nomips16 attribute.
* g++.dg/opt/longbranch1.C: Likewise.

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

11 years agogcc/
rsandifo [Thu, 2 Aug 2012 20:44:38 +0000 (20:44 +0000)]
gcc/
* recog.c (split_insn): Copy the original SET_SRC before using
it as a note.

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

11 years agogcc/
rsandifo [Thu, 2 Aug 2012 20:40:10 +0000 (20:40 +0000)]
gcc/
* reorg.c (dbr_schedule): Delete REG_BR_PRED loop.

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

11 years ago2012-08-02 Marc Glisse <marc.glisse@inria.fr>
glisse [Thu, 2 Aug 2012 19:54:43 +0000 (19:54 +0000)]
2012-08-02  Marc Glisse  <marc.glisse@inria.fr>

PR tree-optimization/53805
* gcc/fold-const.c (invert_tree_comparison): Invert ORDERED_EXPR and
UNORDERED_EXPR even for trapping floating point.
* gcc/testsuite/gcc.dg/fold-notunord.c: New testcase.

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

11 years agoAdd the bug number in the ChangeLog
mikael [Thu, 2 Aug 2012 19:50:14 +0000 (19:50 +0000)]
Add the bug number in the ChangeLog

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

11 years agofortran/
mikael [Thu, 2 Aug 2012 19:48:50 +0000 (19:48 +0000)]
fortran/
PR fortran/48820
* trans-array.c (gfc_conv_ss_startstride): Set the intrinsic
result's lower and upper bounds according to the rank.
(set_loop_bounds): Set the loop upper bound in the intrinsic case.

testsuite/
PR fortran/48820
* gfortran.dg/assumed_rank_bounds_1.f90:  New test.
* gfortran.dg/assumed_rank_bounds_2.f90:  New test.

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

11 years ago * trans-array.c (set_loop_bounds): Allow non-array-section to be
mikael [Thu, 2 Aug 2012 19:38:58 +0000 (19:38 +0000)]
* trans-array.c (set_loop_bounds): Allow non-array-section to be
chosen using the stride and lower bound criteria.

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

11 years ago * trans-array.c (set_loop_bounds): Remove useless dimension check.
mikael [Thu, 2 Aug 2012 19:37:00 +0000 (19:37 +0000)]
* trans-array.c (set_loop_bounds): Remove useless dimension check.
Don't update loopspec if it would loose the wanted stride criterion.

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

11 years ago * trans-array.h (gfc_conv_descriptor_rank): New prototype.
mikael [Thu, 2 Aug 2012 19:20:43 +0000 (19:20 +0000)]
* trans-array.h (gfc_conv_descriptor_rank): New prototype.
* trans-array.c (gfc_conv_descriptor_rank): New function moved and
renamed ...
* trans-intrinsic.c (get_rank_from_desc): ... from this one.
(gfc_conv_intrinsic_rank, gfc_conv_intrinsic_bound,
gfc_conv_associated): Also rename function calls.

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

11 years ago * iresolve.c (resolve_bound, gfc_resolve_shape):
mikael [Thu, 2 Aug 2012 19:10:38 +0000 (19:10 +0000)]
* iresolve.c (resolve_bound, gfc_resolve_shape):
Don't set the shape for assumed rank arrays.
* simplify.c (gfc_simplify_shape): Don't try to simplify if the
argument is assumed rank.

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

11 years ago/cp
paolo [Thu, 2 Aug 2012 18:44:58 +0000 (18:44 +0000)]
/cp
2012-08-02  Jason Merrill  <jason@redhat.com>
    Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51213 (again)
* pt.c (type_unification_real): Call push_deferring_access_checks /
pop_deferring_access_checks around the substitution of default
template args.
(instantiate_template_1): When the specialization returned by
retrieve_specialization has FNDECL_HAS_ACCESS_ERRORS set and we
are in a SFINAE context, simply return error_mark_node.
* cp-tree.h (FNDECL_RECHECK_ACCESS_P): Rename FNDECL_HAS_ACCESS_ERRORS.

/testsuite
2012-08-02  Jason Merrill  <jason@redhat.com>
    Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51213 (again)
* g++.dg/cpp0x/sfinae37.C: Extend.

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

11 years ago * array.c (gfc_copy_array_ref): Don't copy the offset field.
mikael [Thu, 2 Aug 2012 18:30:02 +0000 (18:30 +0000)]
* array.c (gfc_copy_array_ref): Don't copy the offset field.
* expr.c (find_array_section): Ignore the offset field.
* trans-expr.c (gfc_find_interface_mapping_to_ref): Don't apply
any interface mapping to the offset field.
* gfortran.h (struct gfc_array_ref): Remove the offset field.

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

11 years agoAdd free inline summary pass after pass_early_local_passes
hjl [Thu, 2 Aug 2012 16:58:33 +0000 (16:58 +0000)]
Add free inline summary pass after pass_early_local_passes

PR middle-end/53321
PR middle-end/53865
* ipa-inline-analysis.c (inline_free_summary): Return if
inline_edge_summary_vec is NULL.

* ipa-split.c (execute_split_functions): Check if a function
is inlinable only if inline_edge_summary_vec != NULL.

* ipa.c (symtab_remove_unreachable_nodes): Restore
cgraph_propagate_frequency call when something was changed.
(free_inline_summary): New function.
(pass_ipa_free_inline_summary): New pass.

* passes.c (init_optimization_passes): Add
pass_ipa_free_inline_summary before pass_ipa_tree_profile.

* timevar.def (TV_IPA_FREE_INLINE_SUMMARY): New.

* tree-pass.h (pass_ipa_free_inline_summary): New.

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

11 years ago * arm.c (arm_gen_constant): Use UBFX for some AND operations when
rearnsha [Thu, 2 Aug 2012 16:20:22 +0000 (16:20 +0000)]
* arm.c (arm_gen_constant): Use UBFX for some AND operations when
available.

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

11 years ago2012-08-02 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 2 Aug 2012 14:00:29 +0000 (14:00 +0000)]
2012-08-02  Richard Guenther  <rguenther@suse.de>

* tree-into-ssa.c (struct common_info_d): New struct.
(struct var_info_d, struct ssa_name_info): Use it.
(get_ssa_name_ann): Adjust.
(get_phi_state, set_phi_state): Remove.
(get_common_info): New function.
(get_current_def, set_current_def): Adjust.
(get_def_blocks_for): Take a common info as param.
(set_def_block): Call get_common_info once.
(set_livein_block): Likewise.
(find_def_blocks_for): Adjust.
(insert_phi_nodes): Likewise.
(register_new_def): Call get_common_info once.
(get_reaching_def): Likewise.
(rewrite_debug_stmt_uses): Likewise.
(rewrite_leave_block): Likewise.
(dump_currdefs): Likewise.
(debug_var_infos_r): Adjust.
(register_new_update_single): Call get_common_info once.
(maybe_replace_use_in_debug_stmt): Likewise.
(rewrite_update_leave_block): Likewise.
(mark_use_interesting): Adjust.
(create_new_def_for): Likewise.
(update_ssa): Likewise.

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

11 years ago * tree-ssa-live.c (set_is_used): Return a bool.
matz [Thu, 2 Aug 2012 12:24:52 +0000 (12:24 +0000)]
* tree-ssa-live.c (set_is_used): Return a bool.
(mark_all_vars_used): Don't take data argument.
(mark_all_vars_used_1): Adjust calls to above, merge handling
of local and global vars.
(remove_unused_scope_block_p): Don't take global_unused_vars,
merge handling of local and global vars.
(remove_unused_locals): Don't allocate/fill/pass global_unused_vars,
use is_used_p for local and global vars.

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

11 years ago2012-08-02 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 2 Aug 2012 11:41:35 +0000 (11:41 +0000)]
2012-08-02  Richard Guenther  <rguenther@suse.de>

* tree-flow.h (make_rename_temp): Remove.
* tree-dfa.c (make_rename_temp): Likewise.
* cgraphunit.c (thunk_adjust, assemble_thunk): Use create_tmp_reg
instead of make_rename_temp.
* omp-low.c (expand_omp_for_generic, expand_omp_for_static_nochunk,
expand_omp_atomic_pipeline): Likewise.
* trans-mem.c (tm_log_emit_save_or_restores, build_tm_load,
build_tm_store, expand_call_tm, expand_transaction,
ipa_tm_insert_gettmclone_call): Likewise.
* tree-complex.c (expand_complex_div_wide): Likewise.
* tree-mudflap.c (mf_decl_cache_locals, mf_build_check_statement_for):
Likewise.
* tree-ssa-loop-im.c (execute_sm_if_changed_flag_set, execute_sm):
Likewise.
* tree-ssa-math-opts.c (insert_reciprocals): Likewise.
* value-prof.c (gimple_divmod_fixed_value, gimple_mod_pow2,
gimple_mod_subtract): Likewise.

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

11 years ago2012-08-02 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 2 Aug 2012 11:40:20 +0000 (11:40 +0000)]
2012-08-02  Richard Guenther  <rguenther@suse.de>

* tree-flow.h (set_default_def): Rename to ...
(set_ssa_default_def): ... this.  Take a struct function argument.
(gimple_default_def): Rename to ...
(ssa_default_def): ... this.
(get_or_create_ssa_default_def): New function.
* tree-dfa.c: Likewise.
(dump_variable): Adjust.
* ipa-prop.c (ipa_analyze_params_uses): Adjust, properly check
for used parameters.
* ipa-split.c (consider_split): Adjust, avoid repeated default-def
lookups.
(split_function): Likewise.
* lto-streamer-in.c (input_ssa_names): Adjust.
* omp-low.c (expand_omp_taskreg): Likewise.
* tree-cfg.c (replace_ssa_name): Adjust, no need to push/pop cfun.
* tree-complex.c (init_parameter_lattice_values): Adjust.
(get_component_ssa_name): Likewise.
(update_parameter_components): Likewise.
* tree-inline.c (remap_ssa_name): Likewise.
(setup_one_parameter): Likewise.
(initialize_inlined_parameters): Likewise.
(declare_return_variable): Likewise.
(expand_call_inline): Likewise.
(tree_function_versioning): Likewise.
* tree-into-ssa.c (get_default_def_for): Remove.
(get_reaching_def): Use get_or_create_ssa_default_def instead.
* tree-predcom.c (replace_ref_with): Adjust.
* tree-sra.c (get_repl_default_def_ssa_name): Likewise.
(is_unused_scalar_param): Likewise.
(ptr_parm_has_direct_uses): Likewise.
(sra_ipa_reset_debug_stmts): Likewise.
* tree-ssa-coalesce.c (create_outofssa_var_map): Adjust.
* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Likewise.
* tree-ssa-live.c (verify_live_on_entry): Likewise.
* tree-ssa-math-opts.c (execute_cse_reciprocals): Likewise,
avoid repeated default def lookups.
* tree-ssa-sccvn.c (run_scc_vn): Likewise.
* tree-tailcall.c (arg_needs_copy_p): Adjust.
(tree_optimize_tail_calls_1): Likewise.

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

11 years ago2012-08-02 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 2 Aug 2012 09:43:14 +0000 (09:43 +0000)]
2012-08-02  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/50672
Revert
2012-08-01  Richard Guenther  <rguenther@suse.de>

* tree-ssa-tail-merge.c (release_last_vdef): Remove.
(replace_block_by): Adjust.

* g++.dg/torture/pr50672.C: New testcase.

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

11 years ago2012-08-02 Janus Weil <janus@gcc.gnu.org>
janus [Thu, 2 Aug 2012 08:57:58 +0000 (08:57 +0000)]
2012-08-02  Janus Weil  <janus@gcc.gnu.org>

PR fortran/54147
* resolve.c (check_proc_interface): New routine for PROCEDURE interface
checks.
(resolve_procedure_interface,resolve_typebound_procedure,
resolve_fl_derived0): Call it.

2012-08-02  Janus Weil  <janus@gcc.gnu.org>

PR fortran/54147
* gfortran.dg/abstract_type_6.f03: Modified.
* gfortran.dg/proc_ptr_comp_3.f90: Modified.
* gfortran.dg/proc_ptr_comp_35.f90: New.
* gfortran.dg/typebound_proc_9.f03: Modified.
* gfortran.dg/typebound_proc_26.f90: New.

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

11 years ago2012-08-02 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 2 Aug 2012 08:14:54 +0000 (08:14 +0000)]
2012-08-02  Richard Guenther  <rguenther@suse.de>

* tree-dfa.c (referenced_var_lookup): Remove.
(find_referenced_vars): Remove.
(pass_referenced_vars): Likewise.
(make_rename_temp): Do not add referenced vars.
(dump_referenced_vars): Remove.
(debug_referenced_vars): Likewise.
(dump_dfa_stats): Do not dump referenced var stats.
(find_vars_r): Remove.
(find_referenced_vars_in): Likewise.
(referenced_var_check_and_insert): Likewise.
(add_referenced_var_1): Likewise.
(remove_referenced_var): Likewise.
* tree-flow.h (referenced_var_lookup): Likewise.
(struct gimple_df): Remove referenced_vars member.
(typedef referenced_var_iterator): Remove.
(FOR_EACH_REFERENCED_VAR): Likewise.
(num_referenced_vars): Likewise.
(debug_referenced_vars, dump_referenced_vars): Likewise.
(add_referenced_var_1, add_referenced_var): Likewise.
(remove_referenced_var): Likewise.
(find_referenced_vars_in): Likewise.
* tree-flow-inline.h (gimple_referenced_vars): Remove.
(first_referenced_var): Likewise.
(end_referenced_vars_p): Likewise.
(next_referenced_var): Likewise.
* cfgexpand.c (update_alias_info_with_stack_vars): Remove assert.
* gimple-pretty-print.c (pp_points_to_solution): Dump UIDs
unconditionally.
* tree-into-ssa.c (dump_decl_set): Likewise.
(pass_build_ssa): Do not require PROP_referenced_vars.
* tree-ssa.c (target_for_debug_bind): Virtual operands are
not suitable, but all register type vars are.
(init_tree_ssa): Do not allocate referenced vars.
(delete_tree_ssa): Do not free referenced vars.
* cgraphunit.c (init_lowered_empty_function): Do not set
PROP_referenced_vars.
(assemble_thunk): Do not add referenced vars.
* gimple-fold.c (canonicalize_constructor_val): Likewise.
(gimplify_and_update_call_from_tree): Likewise.
* gimple-streamer-in.c (input_bb): Likewise.
* passes.c (init_optimization_passes): Do not run
pass_referenced_vars.
(dump_properties): Do not dump PROP_referenced_vars.
* tree-inline.c (remap_decl): Do not add referenced vars.
(remap_gimple_op_r): Likewise.
(copy_tree_body_r): Likewise.
(copy_bb): Likewise.
(setup_one_parameter): Likewise.
(declare_return_variable): Likewise.
(copy_decl_for_dup_finish): Likewise.
(copy_arguments_for_versioning): Likewise.
(tree_function_versioning): Likewise.
* tree-pass.h (PROP_referenced_vars): Remove.
(pass_referenced_vars): Likewise.
* tree-profile.c (gimple_gen_edge_profiler): Do not add referenced vars.
(gimple_gen_interval_profiler): Likewise.
(gimple_gen_pow2_profiler): Likewise.
(gimple_gen_one_value_profiler): Likewise.
(gimple_gen_ic_profiler): Likewise.
(gimple_gen_average_profiler): Likewise.
(gimple_gen_ior_profiler): Likewise.
* tree-ssa-live.c (remove_unused_locals): Do not touch referenced vars.
* tree-cfg.c (replace_ssa_name): Do not add referenced vars.
(move_stmt_op): Likewise.
* tree-ssa-operands.c (create_vop_var): Likewise.
* gimple-low.c (record_vars_into): Likewise.
* gimplify.c (gimple_regimplify_operands): Likewise.
(force_gimple_operand_1): Likewise.
* omp-low.c (expand_omp_for_generic): Likewise.
(expand_omp_for_static_chunk): Likewise.
(expand_omp_atomic_pipeline): Likewise.
* graphite-clast-to-gimple.c (graphite_create_new_loop): Likewise.
(translate_clast_assignment): Likewise.
* graphite-sese-to-poly.c (create_zero_dim_array): Likewise.
(handle_scalar_deps_crossing_scop_limits): Likewise.
* ipa-prop.c (ipa_modify_formal_parameters): Likewise.
* ipa-split.c (split_function): Likewise.
* matrix-reorg.c (transform_access_sites): Likewise.
* trans-mem.c (tm_log_add): Likewise.
(ipa_tm_insert_gettmclone_call): Likewise.
* tree-complex.c (create_one_component_var): Likewise.
* tree-if-conv.c (ifc_temp_var): Likewise.
* tree-parloops.c (take_address_of): Likewise.
(initialize_reductions): Likewise.
(separate_decls_in_region_name): Likewise.
(create_call_for_reduction_1): Likewise.
(separate_decls_in_region): Likewise.
* tree-predcom.c (predcom_tmp_var): Likewise.
(reassociate_to_the_same_stmt): Likewise.
* tree-sra.c (build_ref_for_offset): Likewise.
(create_access_replacement): Likewise.
(get_replaced_param_substitute): Likewise.
(sra_ipa_reset_debug_stmts): Likewise.
* tree-ssa-loop-im.c (rewrite_reciprocal): Likewise.
(rewrite_bittest): Likewise.
* tree-ssa-loop-ivopts.c (create_new_iv): Likewise.
* tree-ssa-loop-manip.c (create_iv): Likewise.
(tree_transform_and_unroll_loop): Likewise.
* tree-ssa-math-opts.c (powi_as_mults): Likewise.
(build_and_insert_call): Likewise.
(gimple_expand_builtin_cabs): Likewise.
(execute_optimize_bswap): Likewise.
* tree-ssa-phiopt.c (conditional_replacement): Likewise.
(abs_replacement): Likewise.
(cond_store_replacement): Likewise.
(cond_if_else_store_replacement_1): Likewise.
* tree-ssa-phiprop.c (phiprop_insert_phi): Likewise.
* tree-ssa-pre.c (get_representative_for): Likewise.
(create_expression_by_pieces): Likewise.
(insert_into_preds_of_block): Likewise.
* tree-ssa-propagate.c (update_call_from_tree): Likewise.
* tree-ssa-reassoc.c (undistribute_ops_list): Likewise.
(eliminate_redundant_comparison): Likewise.
(rewrite_expr_tree_parallel): Likewise.
(get_reassoc_pow_ssa_name): Likewise.
* tree-ssa-strlen.c (get_string_length): Likewise.
* tree-switch-conversion.c (emit_case_bit_tests): Likewise.
(build_arrays): Likewise.
* tree-tailcall.c (adjust_return_value_with_ops): Likewise.
(create_tailcall_accumulator): Likewise.
* tree-vect-data-refs.c (vect_get_new_vect_var): Likewise.
(vect_create_addr_base_for_vector_ref): Likewise.
(vect_permute_store_chain): Likewise.
(vect_permute_load_chain): Likewise.
* tree-vect-generic.c (expand_vector_divmod): Likewise.
* tree-vect-loop-manip.c (set_prologue_iterations): Likewise.
(vect_build_loop_niters): Likewise.
(vect_generate_tmps_on_preheader): Likewise.
(vect_update_ivs_after_vectorizer): Likewise.
(vect_gen_niters_for_prolog_loop): Likewise.
(vect_do_peeling_for_alignment): Likewise.
(vect_create_cond_for_align_checks): Likewise.
* tree-vect-patterns.c (vect_recog_temp_ssa_var): Likewise.
(vect_handle_widen_op_by_const): Likewise.
(vect_operation_fits_smaller_type): Likewise.
(vect_recog_over_widening_pattern): Likewise.
* tree-vect-stmts.c (vect_init_vector): Likewise.

* gcc.dg/torture/pta-callused-1.c: Adjust.
* gcc.dg/torture/pta-ptrarith-3.c: Likewise.
* gcc.dg/torture/ssa-pta-fn-1.c: Likewise.
* gcc.dg/tree-ssa/alias-19.c: Likewise.
* gcc.dg/tree-ssa/pta-escape-1.c: Likewise.
* gcc.dg/tree-ssa/pta-escape-2.c: Likewise.
* gcc.dg/tree-ssa/pta-escape-3.c: Likewise.
* gcc.dg/tree-ssa/pta-ptrarith-1.c: Likewise.
* gcc.dg/tree-ssa/pta-ptrarith-2.c: Likewise.

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

11 years agoPR debug/52983
aoliva [Thu, 2 Aug 2012 00:34:41 +0000 (00:34 +0000)]
PR debug/52983
* valtrack.c (dead_debug_insert_temp): Use cleanup_auto_inc_dec.

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

11 years agoPR debug/52983
aoliva [Thu, 2 Aug 2012 00:34:26 +0000 (00:34 +0000)]
PR debug/52983
* valtrack.c (cleanup_auto_inc_dec): Implement unconditionally,
falling back to copy_rtx on non-autoinc machines.
(propagate_for_debug_subst): Always use cleanup_auto_inc_dec.

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

11 years agoPR debug/52983
aoliva [Thu, 2 Aug 2012 00:34:11 +0000 (00:34 +0000)]
PR debug/52983
* valtrack.h, valtrack.c: New.
* Makefile.in (VALTRACK_H): New.
(OBJS): Add valtrack.o.
(valtrack.o): New.
(cselib.o, dce.o, df-problems.o, combine.o): Add VALTRACK_H.
* combine.c: Include valtrack.h.
(make_compound_operation): Publish.
(cleanup_auto_inc_dec): Move to valtrack.c.
(struct rtx_subst_pair, propagate_for_debug_subst): Likewise.
(propagate_for_debug): Likewise.  Add this_basic_block parameter.
Adjust all callers.
* cselib.c: Include valtrack.h.
* dce.c: Likewise.
* df-problems.c: Likewise.
(dead_debug_init, dead_debug_reset_uses): Move to valtrack.c.
(dead_debug_finish, dead_debug_add): Likewise.
(dead_debug_insert_temp): Likewise.
* df.h (struct dead_debug_use): Move to valtrack.h.
(struct dead_debug, enum debug_temp_where): Likewise.
(dead_debug_init, dead_debug_reset_uses): Move to valtrack.h.
(dead_debug_finish, dead_debug_add): Likewise.
(dead_debug_insert_temp): Likewise.
* rtl.h (make_compound_operation): Declare.

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

11 years agoDaily bump.
gccadmin [Thu, 2 Aug 2012 00:17:20 +0000 (00:17 +0000)]
Daily bump.

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

11 years ago2012-08-01 Thomas König <tkoenig@gcc.gnu.org>
tkoenig [Wed, 1 Aug 2012 21:43:50 +0000 (21:43 +0000)]
2012-08-01  Thomas König  <tkoenig@gcc.gnu.org>

PR fortran/54033
* scanner.c (add_path_to_list): Emit warning if an error occurs
for an include path, if it is not present or if it is not a
directory.  Do not add the path in these cases.

2012-08-01  Thomas König  <tkoenig@gcc.gnu.org>

PR fortran/54033
* gfortran.dg/include_6.f90:  New test case.
* gfortran.dg/include_7.f90:  New test case.
* gfortran.dg/include_3.f90:  Add dg-warning for missing directory.

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

11 years ago2012-08-01 Catherine Moore <clm@codesourcery.com>
sandra [Wed, 1 Aug 2012 20:59:31 +0000 (20:59 +0000)]
2012-08-01  Catherine Moore  <clm@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/mips/mips-cpus.def (34kn): New.
* config/mips/mips.h (MIPS_ARCH_FLOAT_SPEC): Add 34kn.
(BASE_DRIVER_SELF_SPECS): Do not imply -mdsp for the 34kn.
* config/mips/mips-tables.opt: Regenerate.
* doc/invoke.texi (MIPS Options): Document -march=34kn.

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

11 years agoPR 34548
rth [Wed, 1 Aug 2012 20:41:16 +0000 (20:41 +0000)]
PR 34548

* function.h (struct rtl_data): Add max_dynamic_stack_alignment.
* cfgexpand.c (gimple_expand_cfg): Initialise it.
* explow.c (allocate_dynamic_stack_space): Set it.  Simplify
alignment requirements given the known alignment of dynamic_offset.
* function.c (instantiate_virtual_regs): Align dtnamic_offset.

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

11 years agoAllow MODE_PARTIAL_INT in expmed costs
rth [Wed, 1 Aug 2012 20:26:58 +0000 (20:26 +0000)]
Allow MODE_PARTIAL_INT in expmed costs

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

11 years agom32c: Don't use set_optab_handler
rth [Wed, 1 Aug 2012 20:26:49 +0000 (20:26 +0000)]
m32c: Don't use set_optab_handler

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

11 years ago2012-08-01 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 1 Aug 2012 17:25:56 +0000 (17:25 +0000)]
2012-08-01  Richard Guenther  <rguenther@suse.de>

* tree-flow-inline.h (referenced_var): Remove.
* tree-ssa-coalesce.c (create_outofssa_var_map): Remove duplicate
checking code.
* tree-sra.c (candidates): New global hashtable.
(candidate): New function.
(sra_initialize): Initialize candidates.
(sra_deinitialize): Free candidates.
(disqualify_candidate): Remove candidate from candidates.
(maybe_add_sra_candidate): New function.
(find_var_candidates): Walk over all local decls and parameters,
add candidates to candidates hashtable.
(find_param_candidates): Add candidates to candidates hashtable.
(analyze_all_variable_accesses): Use candidate instead of
referenced_var.

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

11 years ago2012-08-01 Tom de Vries <tom@codesourcery.com>
vries [Wed, 1 Aug 2012 16:53:15 +0000 (16:53 +0000)]
2012-08-01  Tom de Vries  <tom@codesourcery.com>

* gcc.dg/tree-ssa/vrp76.c: New test.

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

11 years ago2012-08-01 Tom de Vries <tom@codesourcery.com>
vries [Wed, 1 Aug 2012 16:53:05 +0000 (16:53 +0000)]
2012-08-01  Tom de Vries  <tom@codesourcery.com>

* tree-vrp.c (find_case_label_ranges): New function.
(vrp_visit_switch_stmt, simplify_switch_using_ranges): Use
find_case_label_ranges instead of find_case_label_range.  Handle second
range.

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

11 years ago * tree-complex.c (init_parameter_lattice_values): Don't call var_ann.
matz [Wed, 1 Aug 2012 14:58:38 +0000 (14:58 +0000)]
* tree-complex.c (init_parameter_lattice_values): Don't call var_ann.
* tree-dfa.c (struct dfa_stats_d): Remove num_var_anns member.
(dump_dfa_stats): Don't dump stats about var anns.
(collect_dfa_stats): Don't collect them.
(add_referenced_var_1): Don't set var annotation pointers.
(remove_referenced_var): Ditto, and only remove it it's in the
hash table.

* tree-flow-inline.h (var_ann): Remove.
* tree-flow.h (struct var_ann_d, var_ann_t): Remove.

* tree-inline.c (remapped_type): Remove.
(can_be_nonlocal): Most variable will be considered live here,
return false earlier.
(remap_decls): Don't call var_ann, all variables will be considered
referenced here.
(copy_debug_stmt): Ditto, and use is_global_var.

* tree-into-ssa.c (rewrite_debug_stmt_uses): Use get_current_def to
determine if a variable was referred to, not var_ann.
* tree-ssa-live.c (remove_unused_scope_block_p): Don't check var_ann.
(remove_unused_locals): Ditto.
* tree-ssa.c (delete_tree_ssa): Don't free/clear var ann pointers.
* tree-tailcall.c (arg_needs_copy_p): Don't check var_ann.
* tree.c (copy_node_stat): Don't clear var ann pointer.
* tree.h (tree_result_decl, tree_parm_decl, tree_var_decl): Remove
ann member.
(DECL_VAR_ANN_PTR): Remove.

* tree-flow.h (struct var_ann_d): Rename used member.
(set_is_used): Don't declare.
* tree-flow-inline.h (clear_is_used): Remove.
(set_is_used, is_used_p): Move to ...
* tree-ssa-live.c (set_is_used, is_used_p): ... here, and use
on the side bitmap.
(usedvars): New bitmap.
(dump_scope_block): Don't dump unusedness.
(remove_unused_locals): Allocate and free usedvars.
* tree-nrv.c (tree_nrv): Don't clear used flags here.

* tree-flow.h (struct var_ann_d): Remove base_var_processed and
base_index members.
* tree-ssa-live.h (struct _var_map): Remove basevars member.
(VAR_ANN_BASE_INDEX): Remove.
* tree-ssa-live.c (var_map_base_init): Use a hash table instead
of var annotation to compress index space.  Don't deal with above
removed members.
(var_map_base_fini): Don't free basevars.
(init_var_map): Don't clear basevars.

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

11 years ago2012-08-01 Bill Schmidt <wschmidt@linux.ibm.com>
wschmidt [Wed, 1 Aug 2012 14:00:35 +0000 (14:00 +0000)]
2012-08-01  Bill Schmidt  <wschmidt@linux.ibm.com>

* gimple-ssa-strength-reduction.c (struct slsr_cand_d): Change
base_name to base_expr.
(struct cand_chain_d): Likewise.
(base_cand_hash): Likewise.
(base_cand_eq): Likewise.
(record_potential_basis): Likewise.
(alloc_cand_and_find_basis): Likewise.
(create_mul_ssa_cand): Likewise.
(create_mul_imm_cand): Likewise.
(create_add_ssa_cand): Likewise.
(create_add_imm_cand): Likewise.
(slsr_process_cast): Likewise.
(slsr_process_copy): Likewise.
(dump_candidate): Likewise.
(base_cand_dump_callback): Likewise.
(unconditional_cands_with_known_stride_p): Likewise.
(cand_increment): Likewise.

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

11 years agogcc:
wschmidt [Wed, 1 Aug 2012 13:02:38 +0000 (13:02 +0000)]
gcc:

PR tree-optimization/46556
* gimple-ssa-strength-reduction.c (enum cand_kind): Add CAND_REF.
(base_cand_map): Change to hash table.
(base_cand_hash): New function.
(base_cand_free): Likewise.
(base_cand_eq): Likewise.
(lookup_cand): Change base_cand_map to hash table.
(find_basis_for_candidate): Likewise.
(base_cand_from_table): Exclude CAND_REF.
(restructure_reference): New function.
(slsr_process_ref): Likewise.
(find_candidates_in_block): Call slsr_process_ref.
(dump_candidate): Handle CAND_REF.
(base_cand_dump_callback): New function.
(dump_cand_chains): Change base_cand_map to hash table.
(replace_ref): New function.
(replace_refs): Likewise.
(analyze_candidates_and_replace): Call replace_refs.
(execute_strength_reduction): Change base_cand_map to hash table.

gcc/testsuite:

PR tree-optimization/46556
* testsuite/gcc.dg/tree-ssa/slsr-27.c: New.
* testsuite/gcc.dg/tree-ssa/slsr-28.c: New.
* testsuite/gcc.dg/tree-ssa/slsr-29.c: New.

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

11 years ago * config/i386/i386.c (ix86_address_subreg_operand): Reject
uros [Wed, 1 Aug 2012 12:08:53 +0000 (12:08 +0000)]
    * config/i386/i386.c (ix86_address_subreg_operand): Reject
        stack pointer.
        (ix86_print_operand_address): Assert that parts.base and parts.index
        are non-NULL after call to simplify_subreg.

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

11 years ago2012-08-01 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 1 Aug 2012 11:51:51 +0000 (11:51 +0000)]
2012-08-01  Richard Guenther  <rguenther@suse.de>

* doc/tree-ssa.texi: Remove pieces mentioning mark_sym_for_renaming.

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

11 years ago2012-08-01 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 1 Aug 2012 11:48:56 +0000 (11:48 +0000)]
2012-08-01  Richard Guenther  <rguenther@suse.de>

* graphite-clast-to-gimple.c (translate_clast_user): Rename
virtual operands.
* sese.c (graphite_copy_stmts_from_block): Do not rename virtual
operands here.
* tree-call-cdce.c (tree_call_cdce): Use
mark_virtual_operands_for_renaming.
* tree-eh.c (sink_clobbers): Simplify.
* tree-flow.h (mark_sym_for_renaming): Remove.
(mark_virtual_operands_for_renaming): New function.
* tree-if-conv.c (tree_if_conversion): Use
mark_virtual_operands_for_renaming.
* tree-inline.c (update_ssa_across_abnormal_edges): Likewise.
* tree-into-ssa.c (mark_sym_for_renaming): Remove.
(mark_virtual_operands_for_renaming): New function.
* tree-loop-distribution.c (tree_loop_distribution): Use
mark_virtual_operands_for_renaming.
* tree-ssa-dce.c (mark_virtual_operand_for_renaming): Do not
update stmts, use mark_virtual_operands_for_renaming.
* tree-ssa-tail-merge.c (release_last_vdef): Remove.
(replace_block_by): Adjust.
(tail_merge_optimize): Use mark_virtual_operands_for_renaming.
* tree-tailcall.c (tree_optimize_tail_calls_1): Use
mark_virtual_operands_for_renaming.
* tree-vect-slp.c (vect_slp_transform_bb): Likewise.
* tree-vectorizer.c (vectorize_loops): Likewise.

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

11 years ago2012-08-01 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 1 Aug 2012 11:48:04 +0000 (11:48 +0000)]
2012-08-01  Richard Guenther  <rguenther@suse.de>

* tree-flow.h (struct gimple_df): Remove syms_to_rename member,
add ssa_renaming_needed and rename_vops flags.
(SYMS_TO_RENAME): Remove.
(symbol_marked_for_renaming): Likewise.
(mark_virtual_ops_for_renaming): Likewise.
* tree-into-ssa.c (symbols_to_rename_set, symbols_to_rename):
New globals.
(mark_for_renaming, marked_for_renaming): New functions.
(symbol_marked_for_renaming): Remove.
(dump_currdefs): Adjust.
(maybe_replace_use): Likewise.
(maybe_replace_use_in_debug_stmt): Likewise.
(maybe_register_def): Likewise.
(rewrite_update_phi_arguments): Likewise.
(rewrite_update_enter_block): Likewise.
(fini_ssa_renamer): Clear update SSA status here ...
(delete_update_ssa): ... not here.  Free rename set.
(prepare_block_for_update): Compute which decls need renaming.
(dump_update_ssa): Adjust.
(mark_sym_for_renaming): Adjust update SSA status for virtuals.
(need_ssa_update_p): Adjust.
(insert_updated_phi_nodes_for): Likewise.
(update_ssa): Likewise.
* tree-ssa-operands.c (finalize_ssa_defs): Adjust update SSA status
for virtual and real operands.
(finalize_ssa_uses): Likewise.
* tree-ssanames.c (init_ssanames): Adjust.
* tree-ssa.c (maybe_rewrite_mem_ref_base, maybe_optimize_var,
execute_update_addresses_taken): Add bitmap to keep track of which
candidates are suitable for rewriting and later renaming by SSA
update.
* matrix-reorg.c (transform_access_sites): Do not rename all defs.
* tree-dfa.c (make_rename_temp): Do not mark real operands for renaming.
* cgraphunit.c (assemble_thunk): Likewise.
* gimplify.c (gimple_regimplify_operands): Likewise.
(force_gimple_operand_1): Likewise.
* ipa-prop.c (ipa_modify_formal_parameters): Likewise.
* tree-inline.c (declare_return_variable): Likewise.
* tree-parloops.c (separate_decls_in_region_stmt): Do not call
mark_virtual_ops_for_renaming.
(create_stores_for_reduction): Likewise.
(create_loads_and_stores_for_name): Likewise.
* tree-predcom.c (mark_virtual_ops_for_renaming): Remove.
(initialize_root_vars_lm): Do not call mark_virtual_ops_for_renaming.
(execute_load_motion): Likewise.
(remove_stmt): Likewise.
(execute_pred_commoning_chain): Likewise.
* tree-sra.c (create_access_replacement): Do not rename real
operands.
(get_unrenamed_access_replacement): Unify with ...
(get_access_replacement): ... this.
(get_repl_default_def_ssa_name): Adjust.
* tree-ssa-loop-im.c (move_computations_stmt): Manually update
virtual SSA form.
(rewrite_mem_ref_loc): Do not call mark_virtual_ops_for_renaming.
* tree-ssa-loop-prefetch.c (emit_mfence_after_loop): Likewise.

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

11 years ago * config/m32c/lib2funcs.c (__clrsbhi2): New function.
nickc [Wed, 1 Aug 2012 09:36:01 +0000 (09:36 +0000)]
* config/m32c/lib2funcs.c (__clrsbhi2): New function.
Implements __clrsb for an HImode argument.

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

11 years agoDaily bump.
gccadmin [Wed, 1 Aug 2012 00:18:16 +0000 (00:18 +0000)]
Daily bump.

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

11 years ago* config/s390/s390.c (s390_option_override): Disable DWARF 3/4
dj [Tue, 31 Jul 2012 22:21:21 +0000 (22:21 +0000)]
* config/s390/s390.c (s390_option_override): Disable DWARF 3/4
extensions for TPF, unless specifically selected.

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

11 years ago PR target/54131
amodra [Tue, 31 Jul 2012 22:14:44 +0000 (22:14 +0000)]
PR target/54131
* config/rs6000/rs6000.c (mem_operand_gpr): Don't limit range
of lo_sum offsets.  Comment.  Assert mode at least word size
rather than bypassing powerpc64 word offset check.

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

11 years ago2012-07-31 Bill Schmidt <wschmidt@linux.ibm.com>
wschmidt [Tue, 31 Jul 2012 21:08:41 +0000 (21:08 +0000)]
2012-07-31  Bill Schmidt  <wschmidt@linux.ibm.com>

* config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): Revise
costs for vec_perm and vec_promote_demote down to more natural values.
(struct _rs6000_cost_data): New data structure.
(rs6000_density_test): New function.
(rs6000_init_cost): Change to use rs6000_cost_data.
(rs6000_add_stmt_cost): Likewise.
(rs6000_finish_cost): Perform density test when vectorizing a loop.

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

11 years ago2012-07-31 Janus Weil <janus@gcc.gnu.org>
janus [Tue, 31 Jul 2012 18:32:41 +0000 (18:32 +0000)]
2012-07-31  Janus Weil  <janus@gcc.gnu.org>

PR fortran/42418
* decl.c (match_procedure_interface): Move some checks to
'resolve_procedure_interface'. Set flavor if appropriate.
* expr.c (gfc_check_pointer_assign): Cleanup of 'gfc_is_intrinsic'.
* intrinsic.c (gfc_is_intrinsic): Additional checks for attributes which
identify a procedure as being non-intrinsic.
* resolve.c (resolve_procedure_interface): Checks moved here from
'match_procedure_interface'. Minor cleanup.
(resolve_formal_arglist,resolve_symbol): Cleanup of
'resolve_procedure_interface'
(resolve_actual_arglist,is_external_proc): Cleanup of
'gfc_is_intrinsic'.

2012-07-31  Janus Weil  <janus@gcc.gnu.org>

PR fortran/42418
* gfortran.dg/proc_decl_29.f90: New.

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

11 years ago * sched-vis.c (print_exp): Handle FMA explicitly. Simplify handling
steven [Tue, 31 Jul 2012 18:24:40 +0000 (18:24 +0000)]
* sched-vis.c (print_exp): Handle FMA explicitly.  Simplify handling
of RTX_UNARY function-like operations.  Print unknown expression
RTX classes as pseudo-functions.
(print_pattern): Simplify return pattern printing.
(dump_insn_slim): Print the value of notes as a pattern for proper
printing of CFA notes.

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

11 years ago2012-07-31 Dehao Chen <dehao@google.com>
dehao [Tue, 31 Jul 2012 15:09:02 +0000 (15:09 +0000)]
2012-07-31  Dehao Chen  <dehao@google.com>

* predict.c (tree_estimate_probability_driver): Normalize the
loop when initializing the loop optimizer.

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

11 years ago2012-07-31 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 31 Jul 2012 13:57:23 +0000 (13:57 +0000)]
2012-07-31  Paolo Carlini  <paolo.carlini@oracle.com>

* pt.c (check_default_tmpl_args): Change is_primary and is_partial
parameters to bool type, adjust.
(push_template_decl_real): Tidy.
* parser.c (cp_parser_init_declarator): Adjust.
* decl.c (redeclaration_error_message): Likewise.
* cp-tree.h (check_default_tmpl_args): Update prototype.

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

11 years ago2012-07-31 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 31 Jul 2012 13:42:16 +0000 (13:42 +0000)]
2012-07-31  Richard Guenther  <rguenther@suse.de>

* tree-flow.h (struct var_ann_d): Remove need_phi_state
and current_def members.
* tree-into-ssa.c (struct def_blocks_d): Remove var member.
(def_blocks): Remove.
(struct var_info_d): New.
(var_infos): New hashtable.
(struct ssa_name_info): Add def_blocks member.
(get_ssa_name_ann): Adjust.
(get_var_info): New function.
(get_phi_state, set_phi_state, get_current_def,
set_current_def, get_def_blocks_for, find_def_blocks_for): Adjust.
(insert_phi_nodes_compare_def_blocks): Rename to ...
(insert_phi_nodes_compare_var_infos): ... this and adjust.
(insert_phi_nodes): Adjust.
(dump_tree_ssa, dump_tree_ssa_stats): Adjust.
(def_blocks_hash, def_blocks_eq, def_blocks_free): Remove.
(debug_def_blocks_r): Rename to ...
(debug_var_infos_r): ... this and adjust.
(var_info_hash): New function.
(var_info_eq): Likewise.
(rewrite_blocks): Adjust.
(init_ssa_renamer): Likewise.
(fini_ssa_renamer): Likewise.
(delete_update_ssa): Likewise.
(update_ssa): Likewise.
* tree-ssanames.c (release_dead_ssa_names): Do not clear
current defs.

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

11 years ago2012-07-31 Janus Weil <janus@gcc.gnu.org>
janus [Tue, 31 Jul 2012 13:03:53 +0000 (13:03 +0000)]
2012-07-31  Janus Weil  <janus@gcc.gnu.org>

PR fortran/54134
* dependency.c (gfc_dep_compare_expr): Check if arguments are NULL.

2012-07-31  Janus Weil  <janus@gcc.gnu.org>

PR fortran/54134
* gfortran.dg/typebound_override_3.f90: New.

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

11 years ago * config/stormy16/stormy16.c (xstormy16_expand_prologue): Add
nickc [Tue, 31 Jul 2012 12:48:17 +0000 (12:48 +0000)]
* config/stormy16/stormy16.c (xstormy16_expand_prologue): Add
support for reporting stack usage.

* gcc.dg/stack-usage-1.c (SIZE): Define for FRV,
and for XStormy16.

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

11 years agogcc:
wschmidt [Tue, 31 Jul 2012 12:25:04 +0000 (12:25 +0000)]
gcc:

2012-07-31  Bill Schmidt  <wschmidt@linux.ibm.com>

PR tree-optimization/53773
* tree-vectorizer.h (struct _loop_vec_info): Add operands_swapped.
(LOOP_VINFO_OPERANDS_SWAPPED): New macro.
* tree-vect-loop.c (new_loop_vec_info): Initialize
LOOP_VINFO_OPERANDS_SWAPPED field.
(destroy_loop_vec_info): Restore canonical form.
(vect_is_slp_reduction): Set LOOP_VINFO_OPERANDS_SWAPPED field.
(vect_is_simple_reduction_1): Likewise.

gcc/testsuite:

2012-07-31  Bill Schmidt  <wschmidt@linux.ibm.com>

PR tree-optimization/53773
* testsuite/gcc.dg/vect/pr53773.c: New test.

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

11 years ago * sched-vis.c (dump_insn_slim): Print print_rtx_head at the
steven [Tue, 31 Jul 2012 11:48:56 +0000 (11:48 +0000)]
* sched-vis.c (dump_insn_slim): Print print_rtx_head at the
start of each new line.
* final.c (final_scan_insn): If the final dump is requested as
slim RTL, dump slim RTL to the assembly file also.

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

11 years ago PR target/53975
abel [Tue, 31 Jul 2012 10:56:52 +0000 (10:56 +0000)]
    PR target/53975

        * sel-sched-ir.c (has_dependence_note_reg_use): Clarify comment.

        Revert
        2011-08-04  Sergey Grechanik  <mouseentity@ispras.ru>

        * sel-sched-ir.c (has_dependence_note_reg_use): Call ds_full_merge
        only if producer writes to the register given by regno.

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

11 years ago * config/frv/frv.c (frv_expand_prologue): Report stack usage.
nickc [Tue, 31 Jul 2012 10:29:49 +0000 (10:29 +0000)]
* config/frv/frv.c (frv_expand_prologue): Report stack usage.

* gcc.dg/stack-usage-1.c (SIZE): Define for FRV.

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