charlet [Mon, 20 Jan 2014 13:54:43 +0000 (13:54 +0000)]
2014-01-20 Yannick Moy <moy@adacore.com>
* gnat1drv.adb (Gnat1drv): Call Write_ALI with Object=True in GNATprove
mode.
2014-01-20 Pascal Obry <obry@adacore.com>
* g-arrspl.ads (Slice_Set): New definition (will use a copy on
write scheme).
* g-arrspl.adb: Adapt all routine to this new implementation.
(Set): Copy the Slice_Set definition before reusing it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206812
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 20 Jan 2014 13:53:22 +0000 (13:53 +0000)]
2014-01-20 Arnaud Charlet <charlet@adacore.com>
* sem_prag.adb (Process_Import_Or_Interface): In
Relaxed_RM_Semantics, support old Ada 83 style of pragma Import.
(Analyze_Pragma): Ditto for pragma Export.
* exp_prag.adb (Expand_Pragma_Import_Or_Interface): Handle old pragma
Import style.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206810
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 20 Jan 2014 13:52:19 +0000 (13:52 +0000)]
2014-01-20 Hristian Kirtchev <kirtchev@adacore.com>
* einfo.ads: E_Abstract_State is now part of the entities that
can be overloaded. Update type Overloadable_Kind to reflect the
inclusion of abstract states.
* sem_ch6.adb (New_Overloaded_Entity): A function can now
overload an abstract state.
* sem_prag.adb (Analyze_Constituent): Handle the overloading
of states by functions. Use Entity_Of to obtain the entity of
a constituent. (Analyze_Global_Item): Handle the overloading of
states by functions.
(Analyze_Initialization_Item): Handle the
overloading of states by functions. Use Entity_Of to obtain the
entity of an item.
(Analyze_Input_Item): Handle the overloading
of states by functions. Use Entity_Of to obtain the entity of an item.
(Analyze_Input_Output): Handle the overloading of states by functions.
(Analyze_Refinement_Clause): Handle the overloading
of states by functions. Use Entity_Of to obtain the entity of an item.
(Appears_In): Use Entity_Of to obtain the entity of an element.
(Check_Usage): Use Entity_Of to obtain the entity of
an item. Add a guard to prevent a crash due to a previous error.
(Resolve_State): New routine.
2014-01-20 Yannick Moy <moy@adacore.com>
* spark_xrefs.ads, debug.adb, gnat1drv.adb, errout.adb, errout.ads,
opt.ads: Minor comments updates.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206809
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 20 Jan 2014 13:50:15 +0000 (13:50 +0000)]
2014-01-20 Hristian Kirtchev <kirtchev@adacore.com>
* einfo.adb (Non_Limited_View): Applies to abstract states.
(Set_From_Limited_With): Applies to abstract states.
(Set_Non_Limited_View): Applies to abstract states.
(Write_Field17): Output the non-limited view of an abstract state.
* einfo.ads: Update the comment on usage and occurrences in
nodes for attributes From_Limited_With and Non_Limited_View.
* sem_aux.adb (Available_View): This routine can now handle
abstract states.
* sem_aux.ads (Available_View): This routine can now handle
abstract states. Update the comment on usage.
* sem_ch8.adb (Find_Expanded_Name): Handle abstract views
of states and variables.
(In_Pragmas_Depends_Or_Global): New routine.
* sem_ch10.adb (Build_Limited_Views): Implement
abstract (limited) views of variables and states.
(Build_Shadow_Entity): This routine is now a procedure. Add
formal parameter Shadow. Update the comment on usage. Add
context-specific decoration for states and variables.
(Decorate_State): New routine. (Decorate_Variable): New routine.
(Find_And_Process_States): New routine.
(Process_Declarations): Renamed to Process_Declarations_And_States.
(Process_Declarations_And_States): Add formal parameters
Pack and Create_Abstract_Views. Update the comment on usage.
(Process_States): New routine.
* sem_prag.adb (Check_Dependency_Clause): Handle abstract
views of states and variables. Match the abstract view of a state
against its corresponding non-abstract view.
(Is_Matching_Input):
Handle abstract views of states and variables. Match the abstract
view of a state against its corresponding non-abstract view.
(Process_Global_Item): Handle abstract views of states and
variables.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206808
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 20 Jan 2014 13:48:45 +0000 (13:48 +0000)]
2014-01-20 Bob Duff <duff@adacore.com>
* sem_ch10.adb (Expand_With_Clause): Don't
recurse on the prefix if the current with-ed name refers to a
package that renames its own parent, eg "package P.Q renames P;".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206807
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 20 Jan 2014 13:47:41 +0000 (13:47 +0000)]
2014-01-20 Yannick Moy <moy@adacore.com>
* exp_spark.adb (Expand_SPARK_Call): Remove procedure.
* opt.adb, opt.ads (Full_Expander_Active): Remove function.
* checks.adb, exp_ch6.adb, exp_ch9.adb, exp_disp.adb, sem_aggr.adb,
* sem_ch10.adb, sem_ch5.adb, sem_ch6.adb, sem_ch8.adb, sem_ch9.adb,
* sem_disp.adb, sem_res.adb Replace Full_Expander_Active by
Expander_Active.
2014-01-20 Yannick Moy <moy@adacore.com>
* sinfo.ads Update documentation of GNATprove mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206806
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Mon, 20 Jan 2014 13:44:07 +0000 (13:44 +0000)]
2014-01-20 Yannick Moy <moy@adacore.com>
* adabkend.adb, ali-util.adb, errout.adb, exp_ch7.adb,
* exp_dbug.adb, freeze.adb, lib-xref.adb, restrict.adb,
* sem_attr.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch8.adb,
* sem_prag.adb, sem_res.adb, sem_util.adb Rename SPARK_Mode into
GNATprove_Mode.
* sem_ch13.adb: Remove blank.
* exp_spark.adb, exp_spark.ads (Expand_SPARK_Call): Only replace
subprograms by alias for renamings, not for inherited primitive
operations.
* exp_util.adb (Expand_Subtype_From_Expr): Apply the expansion
in GNATprove mode.
(Remove_Side_Effects): Apply the removal in
GNATprove mode, for the full analysis of expressions.
* expander.adb (Expand): Call the light SPARK expansion in GNATprove
mode.
(Expander_Mode_Restore, Expander_Mode_Save_And_Set): Ignore
save/restore actions for Expander_Active flag in GNATprove mode,
similar to what is done in ASIS mode.
* frontend.adb (Frontend): Generic bodies are instantiated in
GNATprove mode.
* gnat1drv.adb (Adjust_Global_Switches): Set operating
mode to Check_Semantics in GNATprove mode, although a light
expansion is still performed.
(Gnat1drv): Set Back_End_Mode to
Declarations_Only in GNATprove mode, and later on special case
the GNATprove mode to continue analysis anyway.
* lib-writ.adb (Write_ALI): Always generate ALI files in
GNATprove mode.
* opt.adb, opt.ads (Full_Expander_Active): Make it equivalent to
Expander_Active.
(SPARK_Mode): Renamed as GNATprove_Mode.
* sem_aggr.adb (Aggregate_Constraint_Checks): Add checks in the
tree in GNATprove_Mode.
* sem_ch12.adb (Analyze_Package_Instantiation): Always instantiate
body in GNATprove mode.
(Need_Subprogram_Instance_Body): Always instantiate body in GNATprove
mode.
* sem_ch3.adb (Constrain_Index, Process_Range_Expr_In_Decl):
Make sure side effects are removed in GNATprove mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206805
138bc75d-0d04-0410-961f-
82ee72b054a4
belagod [Mon, 20 Jan 2014 12:34:13 +0000 (12:34 +0000)]
[AArch64] Relax CANNOT_CHANGE_MODE_CLASS
gcc/
* config/aarch64/aarch64-protos.h
(aarch64_cannot_change_mode_class_ptr): Declare.
* config/aarch64/aarch64.c (aarch64_cannot_change_mode_class,
aarch64_cannot_change_mode_class_ptr): New.
* config/aarch64/aarch64.h (CANNOT_CHANGE_MODE_CLASS): Change to call
backend hook aarch64_cannot_change_mode_class.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206804
138bc75d-0d04-0410-961f-
82ee72b054a4
jgreenhalgh [Mon, 20 Jan 2014 11:32:32 +0000 (11:32 +0000)]
[AArch64] Fix behaviour of -mcpu option to match ARM.
gcc/
* common/config/aarch64/aarch64-common.c
(aarch64_handle_option): Don't handle any option order logic here.
* config/aarch64/aarch64.c (aarch64_parse_arch): Do not override
selected_cpu, warn on architecture version mismatch.
(aarch64_override_options): Fix parsing order for option strings.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206803
138bc75d-0d04-0410-961f-
82ee72b054a4
iains [Mon, 20 Jan 2014 11:20:24 +0000 (11:20 +0000)]
gcc:
PR bootstrap/59496
* config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Fix unused variable
warning. Amend comment to reflect current functionality.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206802
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 20 Jan 2014 11:01:53 +0000 (11:01 +0000)]
2014-01-20 Richard Biener <rguenther@suse.de>
PR middle-end/59860
* builtins.c (fold_builtin_strcat): Remove case better handled
by tree-ssa-strlen.c.
* gcc.dg/pr59860.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206799
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Mon, 20 Jan 2014 10:59:26 +0000 (10:59 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Robustify tests
for aliased objects with an unconstrained nominal subtype.
* gcc-interface/trans.c (Call_to_gnu): Likewise.
(gnat_to_gnu) <case N_Op_Not>: Robustify test for private type.
<case N_Op_Minus>: Remove useless code.
(Exception_Handler_to_gnu_zcx): Minor tweaks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206798
138bc75d-0d04-0410-961f-
82ee72b054a4
jgreenhalgh [Mon, 20 Jan 2014 10:57:46 +0000 (10:57 +0000)]
[AArch64] Make -mcpu, -march and -mtune case-insensitive.
gcc/
* config/aarch64/aarch64.opt
(mcpu, march, mtune): Make case-insensitive.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206797
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Mon, 20 Jan 2014 10:51:46 +0000 (10:51 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_entity) <case E_Record_Subtype>:
Tidy up. For a subtype with discriminants and variant part, if a
variant is statically selected and the fields all have a constant
position, put them in order of increasing position. Likewise if
no variant part but representation clause is present.
* gcc-interface/utils.c (make_packable_type): Robustify.
(maybe_pad_type): Use local variable and tidy up condition. If no
alignment is specified, use the original one.
(create_type_stub_decl): Minor tweak.
(convert) <case VECTOR_CST>: Fix typo.
<case CONSTRUCTOR>: Deal with padding types around the same type.
Do not punt on missing fields.
(unchecked_convert): Call finish_record_type to lay out the special
record types made for conversions from/to problematic integer types.
Bump the alignment of CONSTRUCTORs before converting them to a more
aligned type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206796
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Mon, 20 Jan 2014 10:29:09 +0000 (10:29 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_entity) <case E_Component>: Remove
obsolete code for type_annotate_only mode, simplify code and slightly
improve wording of comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206794
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Mon, 20 Jan 2014 10:18:49 +0000 (10:18 +0000)]
c-family/
* c-ada-spec.h (dump_ada_specs): Revert prototype change.
* c-ada-spec.c (dump_ads): Likewise.
(cpp_check): Likewise.
(dump_ada_specs): Likewise.
cp/
* decl2.c (cpp_check): Revert prototype change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206793
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 20 Jan 2014 09:52:21 +0000 (09:52 +0000)]
PR target/59880
* config/i386/i386.c (ix86_avoid_lea_for_addr): Return false
if operands[1] is a REG or ZERO_EXTEND of a REG.
* gcc.target/i386/pr59880.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206792
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Mon, 20 Jan 2014 09:11:16 +0000 (09:11 +0000)]
* gcc.dg/pr44194-1.c: Tweak regexp.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206791
138bc75d-0d04-0410-961f-
82ee72b054a4
gerald [Mon, 20 Jan 2014 03:15:26 +0000 (03:15 +0000)]
* MAINTAINERS: Convert to UTF-8.
Properly sort Xinliang David Li's entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206790
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 20 Jan 2014 00:17:00 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206789
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Sun, 19 Jan 2014 23:21:10 +0000 (23:21 +0000)]
2014-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
PR libfortran/59771
PR libfortran/59774
PR libfortran/59836
* gfortran.dg/round_3.f08: New cases added.
* gfortran.dg/fmt_g_1.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206786
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Sun, 19 Jan 2014 23:17:43 +0000 (23:17 +0000)]
2014-01-19 Jerry DeLisle <jvdelisle@gcc.gnu>
Dominique d'Humieres <dominiq@lps.ens.fr>
PR libfortran/59771
PR libfortran/59774
PR libfortran/59836
* io/write_float.def (output_float): Fix wrong handling of the
Fw.0 format.
(output_float_FMT_G_): Fixes rounding issues with -m32.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206785
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sun, 19 Jan 2014 23:12:24 +0000 (23:12 +0000)]
* varasm.c (compute_reloc_for_constant): Use targetm.binds_local_p.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206784
138bc75d-0d04-0410-961f-
82ee72b054a4
timshen [Sun, 19 Jan 2014 21:59:20 +0000 (21:59 +0000)]
2014-01-19 Tim Shen <timshen91@gmail.com>
* include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
Fix parse error of multiple consecutive quantifiers like "a**".
* include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
Likewise.
* testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206783
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sun, 19 Jan 2014 19:21:26 +0000 (19:21 +0000)]
* g++.dg/pr49718.C: Add "-mno-explicit-relocs" for alpha*-*-* targets.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206782
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Sun, 19 Jan 2014 18:09:53 +0000 (18:09 +0000)]
* config/pa/pa.c (pa_attr_length_millicode_call): Correct length of
long non-pic millicode calls.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206779
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sun, 19 Jan 2014 17:36:00 +0000 (17:36 +0000)]
2014-01-19 Kito Cheng <kito@0xlab.org>
* gcc/builtins.c (expand_movstr): Check movstr expand done or fail.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206777
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sun, 19 Jan 2014 17:07:11 +0000 (17:07 +0000)]
gcc/testsuite/
* gcc.target/mips/pr54240.c: Add -ffat-lto-objects.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206776
138bc75d-0d04-0410-961f-
82ee72b054a4
jbglaw [Sun, 19 Jan 2014 15:52:20 +0000 (15:52 +0000)]
Since started, the VAX backend doesn't compile with config-list.mk
because one of VAX's macros doesn't use its argument:
g++ -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I/opt/cfarm/mpc/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -I../../../gcc/gcc/../libbacktrace -o loop-invariant.o -MT loop-invariant.o -MMD -MP -MF ./.deps/loop-invariant.TPo ../../../gcc/gcc/loop-invariant.c
../../../gcc/gcc/loop-invariant.c: In function ‘bool check_dependency(basic_block, df_ref, bitmap)’:
../../../gcc/gcc/loop-invariant.c:789:20: error: unused variable ‘regno’ [-Werror=unused-variable]
unsigned int regno = DF_REF_REGNO (use);
^
cc1plus: all warnings being treated as errors
make[2]: *** [loop-invariant.o] Error 1
This should fix it:
2014-01-15 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* config/vax/vax.h (FUNCTION_ARG_REGNO_P): Fix unused variable warning.
[BR]: http://gcc.gnu.org/ml/gcc-patches/2014-01/msg00882.html
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206775
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sun, 19 Jan 2014 15:48:14 +0000 (15:48 +0000)]
PR target/59379
* config/i386/i386.md (*lea<mode>): Zero-extend return register
to DImode for zero-extended addresses.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206774
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Sun, 19 Jan 2014 15:30:22 +0000 (15:30 +0000)]
PR rtl-optimization/57763
* bb-reorder.c (fix_crossing_unconditional_branches): Set JUMP_LABEL
on the new indirect jump_insn and increment LABEL_NUSES (label).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206773
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sun, 19 Jan 2014 09:57:24 +0000 (09:57 +0000)]
gcc/testsuite/
* gcc.dg/vect/pr57705.c: Require vect_int.
* gcc.dg/vect/pr58508.c: Fix order of dg-require-effective-target line.
* gcc.dg/vect/vect-alias-check.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206771
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 19 Jan 2014 00:16:30 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206770
138bc75d-0d04-0410-961f-
82ee72b054a4
mikael [Sat, 18 Jan 2014 20:05:25 +0000 (20:05 +0000)]
fortran/
PR fortran/58007
* module.c (MOD_VERSION): Bump.
(fp2, find_pointer2): Remove.
(mio_component_ref): Don't forcedfully set the containing derived type
symbol for loading. Remove unused argument.
(mio_ref): Update caller
(mio_symbol): Dump component list earlier.
(skip_list): New argument nest_level. Initialize level with the new
argument.
(read_module): Add forced pointer components association for derived
type symbols.
testsuite/
PR fortran/58007
* gfortran.dg/unresolved_fixup_1.f90: New test.
* gfortran.dg/unresolved_fixup_2.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206759
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Sat, 18 Jan 2014 13:25:40 +0000 (13:25 +0000)]
Update x86 --with-arch/--with-cpu= configure handling
PR bootstrap/59580
PR bootstrap/59583
* config.gcc (x86_archs): New variable.
(x86_64_archs): Likewise.
(x86_cpus): Likewise.
Use $x86_archs, $x86_64_archs and $x86_cpus to check valid
--with-arch/--with-cpu= options.
Support --with-arch=/--with-cpu={nehalem,westmere,
sandybridge,ivybridge,haswell,broadwell,bonnell,silvermont}.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206756
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sat, 18 Jan 2014 12:42:10 +0000 (12:42 +0000)]
* config/i386/i386.c (ix86_adjust_cost): Reorder PROCESSOR_K8
and PROCESSOR_ATHLON to simplify code. Move "memory" calculation.
* config/i386/i386.md (*swap<mode>): Rename from swap<mode>.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206753
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Sat, 18 Jan 2014 10:18:33 +0000 (10:18 +0000)]
PR target/58944
* config/i386/i386-c.c (ix86_pragma_target_parse): Temporarily
clear cpp_get_options (parse_in)->warn_unused_macros for
ix86_target_macros_internal with cpp_define.
* gcc.target/i386/pr58944.c: Drop -march=native from dg-options.
Remove dg-prune-output lines.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206750
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sat, 18 Jan 2014 10:12:22 +0000 (10:12 +0000)]
gcc/
* jump.c (delete_related_insns): Keep (use (insn))s.
* reorg.c (redundant_insn): Check for barriers too.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206749
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Sat, 18 Jan 2014 02:49:56 +0000 (02:49 +0000)]
Fix a comment typo in ix86_split_lea_for_addr
* config/i386/i386.c (ix86_split_lea_for_addr): Fix a comment
typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206745
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Sat, 18 Jan 2014 00:35:08 +0000 (00:35 +0000)]
* config/pa/pa.c (pa_attr_length_indirect_call): Don't output a short
call to $$dyncall when TARGET_LONG_CALLS is true.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206742
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 18 Jan 2014 00:17:14 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206741
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Fri, 17 Jan 2014 22:43:03 +0000 (22:43 +0000)]
PR go/59866
runtime: Force work variable in mgc0 to be aligned on 8-byte boundary.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206738
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 17 Jan 2014 22:20:24 +0000 (22:20 +0000)]
* ree.c (combine_set_extension): Temporarily disable test for
changing number of hard registers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206735
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Fri, 17 Jan 2014 21:10:42 +0000 (21:10 +0000)]
PR middle-end/58125
* ipa-inline-analysis.c (inline_free_summary):
Do not free summary of aliases.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206734
138bc75d-0d04-0410-961f-
82ee72b054a4
fdumont [Fri, 17 Jan 2014 21:10:15 +0000 (21:10 +0000)]
2014-01-17 François Dumont <fdumont@gcc.gnu.org>
* include/profile/set.h (set): Implement C++11 allocator-aware
container requirements.
* include/profile/map.h (map): Likewise.
* include/profile/multiset.h (multiset): Likewise.
* include/profile/multimap.h (multimap): Likewise.
* include/profile/set.h
(set::operator=(const set&)): Define as default in C++11 mode.
(set::operator=(set&&)): Likewise.
* include/profile/map.h
(map::operator=(const map&)): Likewise.
(map::operator=(map&&)): Likewise.
* include/profile/multiset.h
(multiset::operator=(const multiset&)): Likewise.
(multiset::operator=(multiset&&)): Likewise.
* include/profile/multimap.h
(multimap::operator=(const multimap&)): Likewise.
(multimap::operator=(multimap&&)): Likewise.
* include/profile/set.h (set::operator=(std::initializer_list<>)):
Rely on the same operator from normal mode.
* include/profile/map.h (map::operator=(std::initializer_list<>)):
Likewise.
* include/profile/multiset.h
(multiset::operator=(std::initializer_list<>)): Likewise.
* include/profile/multimap.h
(multimap::operator=(std::initializer_list<>)): Likewise.
* include/profile/set.h (set::swap(set&)): Add noexcept
specification.
* include/profile/map.h (map::swap(map&)): Likewise.
* include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
* include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206733
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 17 Jan 2014 20:55:42 +0000 (20:55 +0000)]
PR middle-end/59706
* gimplify.c (gimplify_expr): Use create_tmp_var
instead of create_tmp_var_raw. If cond doesn't have
integral type, don't add the IFN_ANNOTATE builtin at all.
* gfortran.dg/pr59706.f90: New test.
* g++.dg/ext/pr59706.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206732
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Fri, 17 Jan 2014 20:25:01 +0000 (20:25 +0000)]
/cp
2014-01-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59270
PR c++/58811
* init.c (build_value_init_noctor): Don't pass error_mark_node to
build_value_init.
/testsuite
2014-01-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59270
PR c++/58811
* g++.dg/cpp0x/decltype-incomplete1.C: New.
* g++.dg/init/pr58811.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206731
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Fri, 17 Jan 2014 19:05:52 +0000 (19:05 +0000)]
2014-01-17 Martin Jambor <mjambor@suse.cz>
PR ipa/59736
* ipa-cp.c (prev_edge_clone): New variable.
(grow_next_edge_clone_vector): Renamed to grow_edge_clone_vectors.
Also resize prev_edge_clone vector.
(ipcp_edge_duplication_hook): Also update prev_edge_clone.
(ipcp_edge_removal_hook): New function.
(ipcp_driver): Register ipcp_edge_removal_hook.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206729
138bc75d-0d04-0410-961f-
82ee72b054a4
sje [Fri, 17 Jan 2014 18:07:18 +0000 (18:07 +0000)]
2014-01-17 Andrew Pinski <apinski@cavium.com>
Steve Ellcey <sellcey@mips.com>
PR target/59462
* config/mips/mips.c (mips_print_operand): Check operand mode instead
of operator mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206724
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 17 Jan 2014 17:50:10 +0000 (17:50 +0000)]
PR middle-end/57904
* passes.def: Reorder pass_copy_prop, pass_unrolli, pass_ccp sequence
so that pass_ccp runs first.
PR middle-end/57904
* gfortran.dg/pr57904.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206723
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Fri, 17 Jan 2014 17:16:25 +0000 (17:16 +0000)]
Use TARGET_XXX and !TARGET_XXX in i386.c
* config/i386/i386.c (ix86_lea_outperforms): Use TARGET_XXX.
(ix86_adjust_cost): Use !TARGET_XXX.
(do_reorder_for_imul): Likewise.
(swap_top_of_ready_list): Likewise.
(ix86_sched_reorder): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206720
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Fri, 17 Jan 2014 17:13:40 +0000 (17:13 +0000)]
Reorder the last ChangeLog entry
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206719
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Fri, 17 Jan 2014 15:40:13 +0000 (15:40 +0000)]
/cp
2014-01-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59269
* init.c (build_value_init_noctor): Assert !TYPE_HAS_COMPLEX_DFLT
only when errorcount == 0.
/testsuite
2014-01-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59269
* g++.dg/cpp0x/nsdmi-union4.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206718
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Fri, 17 Jan 2014 15:23:58 +0000 (15:23 +0000)]
Add X86_TUNE_AVOID_LEA_FOR_ADDR
ix86_split_lea_for_addr transforms a single LEA instruction into a
series of MOV and ADD instructions. For
lea 0x400(%edx, %ecx, 8), %edx
we get
mov %ecx, %edx
add %ecx, %edx
add %ecx, %edx
add %ecx, %edx
add %ecx, %edx
add %ecx, %edx
add %ecx, %edx
add %ecx, %edx
add $0x400, %edx
For -mtune=intel, we want to turn on X86_TUNE_OPT_AGU, but avoid
ix86_split_lea_for_addr to optimize for both Haswell and Silvermont.
This patch adds X86_TUNE_AVOID_LEA_FOR_ADDR and PROCESSOR_INTEL.
We keep PROCESSOR_INTEL the same as PROCESSOR_SILVERMONT, except that
X86_TUNE_AVOID_LEA_FOR_ADDR isn't turned on for PROCESSOR_INTEL.
* config/i386/i386-c.c (ix86_target_macros_internal): Handle
PROCESSOR_INTEL. Treat like PROCESSOR_GENERIC.
* config/i386/i386.c (intel_memcpy): New. Duplicate slm_memcpy.
(intel_memset): New. Duplicate slm_memset.
(intel_cost): New. Duplicate slm_cost.
(m_INTEL): New macro.
(processor_target_table): Add "intel".
(ix86_option_override_internal): Replace PROCESSOR_SILVERMONT
with PROCESSOR_INTEL for "intel".
(ix86_lea_outperforms): Support PROCESSOR_INTEL. Duplicate
PROCESSOR_SILVERMONT.
(ix86_avoid_lea_for_addr): Check TARGET_AVOID_LEA_FOR_ADDR
instead of TARGET_OPT_AGU.
(ix86_issue_rate): Likewise.
(ix86_adjust_cost): Likewise.
(ia32_multipass_dfa_lookahead): Likewise.
(swap_top_of_ready_list): Likewise.
(ix86_sched_reorder): Likewise.
* config/i386/i386.h (TARGET_INTEL): New.
(TARGET_AVOID_LEA_FOR_ADDR): Likewise.
(processor_type): Add PROCESSOR_INTEL.
* config/i386/x86-tune.def: Support m_INTEL. Duplicate
m_SILVERMONT. Add X86_TUNE_AVOID_LEA_FOR_ADDR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206717
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 17 Jan 2014 15:23:17 +0000 (15:23 +0000)]
PR c++/59838
cp/
* cvt.c (ocp_convert): Don't segfault on non-existing
ENUM_UNDERLYING_TYPE.
testsuite/
* g++.dg/diagnostic/pr59838.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206716
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 17 Jan 2014 14:51:56 +0000 (14:51 +0000)]
PR c/58346
* gimple-fold.c (fold_array_ctor_reference): Don't fold if element
size is zero.
testsuite/
* gcc.dg/pr58346.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206715
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 17 Jan 2014 14:49:18 +0000 (14:49 +0000)]
2014-01-17 Richard Biener <rguenther@suse.de>
PR tree-optimization/46590
* opts.c (default_options_table): Add entries for
OPT_fbranch_count_reg, OPT_fmove_loop_invariants and OPT_ftree_pta,
all enabled at -O1 but not for -Og.
* common.opt (fbranch-count-reg): Remove Init(1).
(fmove-loop-invariants): Likewise.
(ftree-pta): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206714
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 17 Jan 2014 14:45:34 +0000 (14:45 +0000)]
* config/i386/i386.c (ix86_data_alignment): For compatibility with
(incorrect) GCC 4.8 and earlier alignment assumptions ensure we align
decls to at least the GCC 4.8 used alignments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206713
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 17 Jan 2014 14:43:37 +0000 (14:43 +0000)]
PR testsuite/58776
* gcc.dg/tree-ssa-gen-vect-32.c: Add -fno-vect-cost-model to
dg-options, use dg-additional-options for i?86/x86_64 to avoid
option duplication.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206712
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 17 Jan 2014 14:42:58 +0000 (14:42 +0000)]
PR fortran/59440
* tree-nested.c (convert_nonlocal_reference_stmt,
convert_local_reference_stmt): For NAMELIST_DECLs in gimple_bind_vars
of GIMPLE_BIND stmts, adjust associated decls.
* gfortran.dg/pr59440-1.f90: New test.
* gfortran.dg/pr59440-2.f90: New test.
* gfortran.dg/pr59440-3.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206711
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 17 Jan 2014 14:41:58 +0000 (14:41 +0000)]
PR testsuite/59064
* gcc.dg/vect/vect-ivdep-1.c: Replace two dg-bogus lines separately
testing for " version" and " alias" with one testing for
" version\[^\n\r]* alias".
* gcc.dg/vect/vect-ivdep-2.c: Likewise.
* gfortran.dg/vect/vect-do-concurrent-1.f90: Likewise.
* g++.dg/vect/pr33426-ivdep.cc: Likewise.
* g++.dg/vect/pr33426-ivdep-2.cc: Likewise.
* g++.dg/vect/pr33426-ivdep-3.cc: Likewise.
* g++.dg/vect/pr33426-ivdep-4.cc: Adjust comments similarly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206710
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 17 Jan 2014 14:40:11 +0000 (14:40 +0000)]
2014-01-17 Richard Biener <rguenther@suse.de>
PR tree-optimization/46590
* vec.h (vec<>::bseach): New member function implementing
binary search according to C89 bsearch.
(vec<>::qsort): Avoid calling ::qsort for vectors with sizes 0 or 1.
* tree-ssa-loop-im.c (struct mem_ref): Make stored member a
bitmap pointer again. Make accesses_in_loop a flat array.
(mem_ref_obstack): New global.
(outermost_indep_loop): Adjust for mem_ref->stored changes.
(mark_ref_stored): Likewise.
(ref_indep_loop_p_2): Likewise.
(set_ref_stored_in_loop): New helper function.
(mem_ref_alloc): Allocate mem_refs on the mem_ref_obstack obstack.
(memref_free): Adjust.
(record_mem_ref_loc): Simplify.
(gather_mem_refs_stmt): Adjust.
(sort_locs_in_loop_postorder_cmp): New function.
(analyze_memory_references): Sort accesses_in_loop after
loop postorder number.
(find_ref_loc_in_loop_cmp): New function.
(for_all_locs_in_loop): Find relevant cluster of locs in
accesses_in_loop and iterate without recursion.
(execute_sm): Avoid uninit warning.
(struct ref_always_accessed): Simplify.
(ref_always_accessed::operator ()): Likewise.
(ref_always_accessed_p): Likewise.
(tree_ssa_lim_initialize): Initialize mem_ref_obstack, compute
loop postorder numbers here.
(tree_ssa_lim_finalize): Free mem_ref_obstack and loop postorder
numbers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206709
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 17 Jan 2014 14:19:55 +0000 (14:19 +0000)]
PR c++/57945
* passes.c (rest_of_decl_compilation): Don't call varpool_finalize_decl
on decls for which assemble_alias has been called.
* c-c++-common/torture/pr57945.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206708
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Fri, 17 Jan 2014 11:35:46 +0000 (11:35 +0000)]
* config/msp430/msp430.opt: (mcpu): New option.
* config/msp430/msp430.c (msp430_mcu_name): Use target_mcu.
(msp430_option_override): Parse target_cpu. If the MCU name
matches a generic string, clear target_mcu.
(msp430_attr): Allow numeric interrupt values up to 63.
(msp430_expand_epilogue): No longer invert operand 1 of gen_popm.
* config/msp430/msp430.h (ASM_SPEC): Convert -mcpu into a -mmcu
option.
* config/msp430/t-msp430: (MULTILIB_MATCHES): Remove mcu matches.
Add mcpu matches.
* config/msp430/msp430.md (popm): Use %J rather than %I.
(addsi3): Use msp430_nonimmediate_operand for operand 2.
(addhi_cy_i): Use immediate_operand for operand 2.
* doc/invoke.texi: Document -mcpu option.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206705
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 17 Jan 2014 10:47:59 +0000 (10:47 +0000)]
2014-01-17 Richard Biener <rguenther@suse.de>
PR rtl-optimization/38518
* df.h (df_analyze_loop): Declare.
* df-core.c: Include cfgloop.h.
(df_analyze_1): Split out main part of df_analyze.
(df_analyze): Adjust.
(loop_inverted_post_order_compute): New function.
(loop_post_order_compute): Likewise.
(df_analyze_loop): New function avoiding whole-function
postorder computes.
* loop-invariant.c (find_defs): Use df_analyze_loop.
(find_invariants): Adjust.
* loop-iv.c (iv_analysis_loop_init): Use df_analyze_loop.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206702
138bc75d-0d04-0410-961f-
82ee72b054a4
jgreenhalgh [Fri, 17 Jan 2014 07:55:49 +0000 (07:55 +0000)]
Fix ChangeLog entry for revision 206673 as was requested in review comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206700
138bc75d-0d04-0410-961f-
82ee72b054a4
zqchen [Fri, 17 Jan 2014 05:43:45 +0000 (05:43 +0000)]
ChangeLog:
2014-01-17 Zhenqiang Chen <zhenqiang.chen@arm.com>
* config/arm/arm.c (arm_v7m_tune): Set max_insns_skipped to 2.
(thumb2_final_prescan_insn): Set max to MAX_INSN_PER_IT_BLOCK.
testsuite/ChangeLog:
2014-01-17 Zhenqiang Chen <zhenqiang.chen@arm.com>
* gcc.target/arm/its.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206698
138bc75d-0d04-0410-961f-
82ee72b054a4
kyukhin [Fri, 17 Jan 2014 05:36:19 +0000 (05:36 +0000)]
* ipa-ref.c (ipa_remove_stmt_references): Fix references
traversal when removing references.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206697
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Fri, 17 Jan 2014 04:35:40 +0000 (04:35 +0000)]
compiler: Use backend interface for binary expressions.
* go-gcc.cc (Gcc_backend::conditional_expression): Add btype
parameter.
(operator_to_tree_code): New static function.
(Gcc_backend::binary_expression): New function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206696
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Fri, 17 Jan 2014 01:04:59 +0000 (01:04 +0000)]
PR ipa/59775
* tree.c (get_binfo_at_offset): Look harder for virtual bases.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206694
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 17 Jan 2014 00:16:36 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206693
138bc75d-0d04-0410-961f-
82ee72b054a4
timshen [Thu, 16 Jan 2014 23:35:21 +0000 (23:35 +0000)]
2014-01-17 Tim Shen <timshen91@gmail.com>
* include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
use std::map.
* include/bits/regex_automaton.h: Do not use std::set.
* include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
_BracketMatcher<>::_M_add_collating_element(),
_BracketMatcher<>::_M_add_equivalence_class(),
_BracketMatcher<>::_M_make_range()): Likewise.
* include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
Likewise.
* include/bits/regex_executor.h: Do not use std::queue.
* include/bits/regex_executor.tcc (_Executor<>::_M_main(),
_Executor<>::_M_dfs()): Likewise.
* include/std/regex: Remove <map>, <set> and <queue>.
2014-01-17 Tim Shen <timshen91@gmail.com>
* include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
basic_regex<>::assign()): Change __compile_nfa to accept
const _CharT* only.
* include/bits/regex_compiler.h: Change _Compiler's template
argument from <_FwdIter, _TraitsT> to <_TraitsT>.
* include/bits/regex_compiler.tcc: Likewise.
2014-01-17 Tim Shen <timshen91@gmail.com>
* include/bits/regex_compiler.h: Change _ScannerT into char-type
templated.
* include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
_ScannerBase from _Scanner; Change _Scanner's template argument from
_FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
instead.
* include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
_Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
_Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
Likewise.
* include/std/regex: Add <cstring> for using strchr.
2014-01-17 Tim Shen <timshen91@gmail.com>
* bits/regex_automaton.tcc: Indentation fix.
* bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
_RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
_BracketMatcher<>): Add bool option template parameters and
specializations to make matching more efficient and space saving.
* bits/regex_compiler.tcc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206690
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 16 Jan 2014 20:51:24 +0000 (20:51 +0000)]
014-01-16 Bernd Schmidt <bernds@codesourcery.com>
PR middle-end/56791
* reload.c (find_reloads_address_1): Do not use RELOAD_OTHER
* when
pushing a reload for an autoinc when we had previously reloaded an
inner part of the address.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206688
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 16 Jan 2014 20:14:45 +0000 (20:14 +0000)]
* tree-vectorizer.h (struct _loop_vec_info): Add no_data_dependencies
field.
(LOOP_VINFO_NO_DATA_DEPENDENCIES): Define.
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Clear it
when not giving up or versioning for alias only because of
loop->safelen.
(vect_analyze_data_ref_dependences): Set to true.
* tree-vect-stmts.c (hoist_defs_of_uses): Return false if def_stmt
is a GIMPLE_PHI.
(vectorizable_load): Use LOOP_VINFO_NO_DATA_DEPENDENCIES instead of
LOOP_REQUIRES_VERSIONING_FOR_ALIAS, add && !nested_in_vect_loop
to the condition.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206687
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 16 Jan 2014 19:55:12 +0000 (19:55 +0000)]
PR c++/59821
* tree.c (bot_manip): Update the location of builtin_LINE and
builtin_FILE calls.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206686
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 16 Jan 2014 19:54:23 +0000 (19:54 +0000)]
PR middle-end/58344
* expr.c (expand_expr_real_1): Handle init == NULL_TREE.
* gcc.c-torture/compile/pr58344.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206685
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 16 Jan 2014 19:24:07 +0000 (19:24 +0000)]
PR target/59839
* config/i386/i386.c (ix86_expand_builtin): If target doesn't
satisfy operand 0 predicate for gathers, use a new pseudo as
subtarget.
* gcc.target/i386/pr59839.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206682
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 16 Jan 2014 19:15:46 +0000 (19:15 +0000)]
PR debug/54694
* gcc.target/i386/pr9771-1.c (main): Rename to...
(real_main): ... this. Add __asm name "main".
(ASMNAME, ASMNAME2, STRING): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206679
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 16 Jan 2014 19:14:49 +0000 (19:14 +0000)]
PR tree-optimization/59387
* gcc.c-torture/execute/pr59387.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206678
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Thu, 16 Jan 2014 19:13:54 +0000 (19:13 +0000)]
2014-01-16 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/59609
* lra-constraints.c (process_alt_operands): Add printing debug
info. Check absence of input/output reloads for matched operands
too.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206677
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Thu, 16 Jan 2014 19:04:08 +0000 (19:04 +0000)]
2014-01-16 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/59835
* ira.c (ira_init_register_move_cost): Increase cost for
impossible modes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206676
138bc75d-0d04-0410-961f-
82ee72b054a4
jgreenhalgh [Thu, 16 Jan 2014 18:10:34 +0000 (18:10 +0000)]
[ARM] Make -mcpu, -march and -mtune case-insensitive
gcc/
* config/arm/arm.opt: Make -mcpu, -march, -mtune case-insensitive.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206673
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Thu, 16 Jan 2014 17:35:50 +0000 (17:35 +0000)]
PR target/59780
* aarch64.c (aarch64_split_128bit_move): Don't lookup REGNO on
non-register objects. Use gen_(high/low)part more consistently.
Fix assertions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206671
138bc75d-0d04-0410-961f-
82ee72b054a4
meissner [Thu, 16 Jan 2014 17:08:52 +0000 (17:08 +0000)]
2014-01-16 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/59844
* config/rs6000/rs6000.md (reload_vsx_from_gprsf): Add little
endian support, remove tests for WORDS_BIG_ENDIAN.
(p8_mfvsrd_3_<mode>): Likewise.
(reload_gpr_from_vsx<mode>): Likewise.
(reload_gpr_from_vsxsf): Likewise.
(p8_mfvsrd_4_disf): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206668
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 16 Jan 2014 13:48:51 +0000 (13:48 +0000)]
2014-01-16 Richard Biener <rguenther@suse.de>
PR rtl-optimization/46590
* lcm.c (compute_antinout_edge): Use postorder iteration.
(compute_laterin): Use inverted postorder iteration.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206663
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Thu, 16 Jan 2014 12:17:48 +0000 (12:17 +0000)]
PR middle-end/28865
* varasm.c (output_constant): Return the number of bytes actually
emitted.
(output_constructor_array_range): Update the field size with the
number of bytes emitted by output_constant.
(output_constructor_regular_field): Likewise. Also do not
complain if the total number of bytes emitted is now greater
than the expected fieldpos.
* output.h (output_constant): Update prototype and descriptive
comment.
* gcc.c-torture/compile/pr28865.c: New.
* gcc.c-torture/execute/pr28865.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206661
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Thu, 16 Jan 2014 11:42:56 +0000 (11:42 +0000)]
PR middle-end/59827
* cgraph.c (gimple_check_call_args): Don't use DECL_ARG_TYPE if
it is error_mark_node.
testsuite/
* gcc.dg/pr59827.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206660
138bc75d-0d04-0410-961f-
82ee72b054a4
schwab [Thu, 16 Jan 2014 10:14:29 +0000 (10:14 +0000)]
* gcc.c-torture/execute/pr59747.c (fn1): Return a value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206659
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Thu, 16 Jan 2014 08:23:33 +0000 (08:23 +0000)]
* config/i386/i386.c (ix86_hard_regno_mode_ok): Use
VALID_AVX256_REG_OR_OI_MODE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206658
138bc75d-0d04-0410-961f-
82ee72b054a4
kyukhin [Thu, 16 Jan 2014 04:25:38 +0000 (04:25 +0000)]
Fix testsuite/ChangeLog entry for PR59808.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206657
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 16 Jan 2014 00:17:01 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206655
138bc75d-0d04-0410-961f-
82ee72b054a4
pthaugen [Wed, 15 Jan 2014 23:48:12 +0000 (23:48 +0000)]
* config/rs6000/rs6000.c (rs6000_output_function_prologue): Check if
current procedure should be profiled.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206650
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Wed, 15 Jan 2014 23:30:16 +0000 (23:30 +0000)]
2014-01-15 Andrew Pinski <apinski@cavium.com>
* config/aarch64/aarch64.c (aarch64_register_move_cost): Correct cost
of moving from/to the STACK_REG register class.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206649
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Wed, 15 Jan 2014 22:02:53 +0000 (22:02 +0000)]
Add missing CL entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206648
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 15 Jan 2014 21:41:03 +0000 (21:41 +0000)]
PR debug/54694
Diagnose frame_pointer_required vs fixed hfp
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206647
138bc75d-0d04-0410-961f-
82ee72b054a4
tejohnson [Wed, 15 Jan 2014 21:21:32 +0000 (21:21 +0000)]
2014-01-15 Teresa Johnson <tejohnson@google.com>
* tree-ssa-sccvn.c (visit_reference_op_call): Handle NULL vdef.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206646
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 15 Jan 2014 19:37:35 +0000 (19:37 +0000)]
PR c++/49718
* c-common.c (handle_no_instrument_function_attribute): Allow
no_instrument_function attribute in class member
definition/declaration.
PR c++/49718
* g++.dg/pr49718.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206643
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 15 Jan 2014 19:31:46 +0000 (19:31 +0000)]
gcc/testsuite/
* gcc.target/mips/umips-branch-4.c: Add addressing=absolute.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206642
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Wed, 15 Jan 2014 19:16:53 +0000 (19:16 +0000)]
gcc:
2014-01-15 Bill Schmidt <wschmidt@vnet.linux.ibm.com>
* config/rs6000/altivec.md (mulv8hi3): Explicitly generate vmulesh
and vmulosh rather than call gen_vec_widen_smult_*.
(vec_widen_umult_even_v16qi): Test VECTOR_ELT_ORDER_BIG rather
than BYTES_BIG_ENDIAN to determine use of even or odd instruction.
(vec_widen_smult_even_v16qi): Likewise.
(vec_widen_umult_even_v8hi): Likewise.
(vec_widen_smult_even_v8hi): Likewise.
(vec_widen_umult_odd_v16qi): Likewise.
(vec_widen_smult_odd_v16qi): Likewise.
(vec_widen_umult_odd_v8hi): Likewise.
(vec_widen_smult_odd_v8hi): Likewise.
(vec_widen_umult_hi_v16qi): Explicitly generate vmuleub and
vmuloub rather than call gen_vec_widen_umult_*.
(vec_widen_umult_lo_v16qi): Likewise.
(vec_widen_smult_hi_v16qi): Explicitly generate vmulesb and
vmulosb rather than call gen_vec_widen_smult_*.
(vec_widen_smult_lo_v16qi): Likewise.
(vec_widen_umult_hi_v8hi): Explicitly generate vmuleuh and vmulouh
rather than call gen_vec_widen_umult_*.
(vec_widen_umult_lo_v8hi): Likewise.
(vec_widen_smult_hi_v8hi): Explicitly gnerate vmulesh and vmulosh
rather than call gen_vec_widen_smult_*.
(vec_widen_smult_lo_v8hi): Likewise.
gcc/testsuite:
2014-01-15 Bill Schmidt <wschmidt@vnet.linux.ibm.com>
* gcc.dg/vmx/mult-even-odd.c: New.
* gcc.dg/vmx/mult-even-odd-be-order.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206641
138bc75d-0d04-0410-961f-
82ee72b054a4
bviyer [Wed, 15 Jan 2014 19:11:16 +0000 (19:11 +0000)]
2014-01-15 Balaji V. Iyer <balaji.v.iyer@intel.com>
* lib/target-supports.exp (check_libcilkrts_available): Added an
extern "C" if we are using C++ along with a function prototype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206640
138bc75d-0d04-0410-961f-
82ee72b054a4