1. 12 Oct, 2014 3 commits
  2. 11 Oct, 2014 5 commits
  3. 10 Oct, 2014 32 commits
    • cgraphunit.c (symbol_table::process_new_functions): Missing call for… · 82afdc6f
      cgraphunit.c (symbol_table::process_new_functions): Missing call for call_cgraph_insertion_hooks added.
      
      	PR/63376
      	* cgraphunit.c (symbol_table::process_new_functions): Missing call
      	for call_cgraph_insertion_hooks added.
      
      From-SVN: r216110
      Martin Liska committed
    • method.c (implicitly_declare_fn): Handle deleted lambda default ctor and copy assop here. · c6250f73
      	* method.c (implicitly_declare_fn): Handle deleted lambda default
      	ctor and copy assop here.
      	* class.c (check_bases_and_members): Not here.
      	(add_implicitly_declared_members): And don't set
      	CLASSTYPE_LAZY_MOVE_ASSIGN.
      
      From-SVN: r216105
      Jason Merrill committed
    • re PR c/63495 (struct __attribute__ ((aligned (8))) broken on x86) · 1740f8a1
      	PR c/63495
      	* stor-layout.c (min_align_of_type): Don't decrease alignment
      	through BIGGEST_FIELD_ALIGNMENT or ADJUST_FIELD_ALIGN if
      	TYPE_USER_ALIGN is set.
      
      	* gcc.target/i386/pr63495.c: New test.
      
      From-SVN: r216101
      Jakub Jelinek committed
    • re PR target/63483 (Scheduler performs Invalid move of aliased memory reference) · 878f5596
      	PR rtl-optimization/63483
      	* alias.c (true_dependence_1): Do not exit early for MEM_READONLY_P
      	references when alignment ANDs are involved.
      	(write_dependence_p): Ditto.
      	(may_alias_p): Ditto.
      
      From-SVN: r216100
      Uros Bizjak committed
    • asan.c (pass_sanopt::execute): Handle IFN_UBSAN_OBJECT_SIZE. · 0e82f089
      	* asan.c (pass_sanopt::execute): Handle IFN_UBSAN_OBJECT_SIZE.
      	* doc/invoke.texi: Document -fsanitize=object-size.
      	* flag-types.h (enum sanitize_code): Add SANITIZE_OBJECT_SIZE and
      	or it into SANITIZE_UNDEFINED.
      	* gimple-fold.c (gimple_fold_call): Optimize IFN_UBSAN_OBJECT_SIZE.
      	* internal-fn.c (expand_UBSAN_OBJECT_SIZE): New function.
      	* internal-fn.def (UBSAN_OBJECT_SIZE): Define.
      	* opts.c (common_handle_option): Handle -fsanitize=object-size.
      	* ubsan.c: Include tree-object-size.h.
      	(ubsan_type_descriptor): Call tree_to_uhwi instead of tree_to_shwi. 
      	(ubsan_expand_bounds_ifn): Use false instead of 0.
      	(ubsan_expand_objsize_ifn): New function.
      	(instrument_object_size): New function.
      	(pass_ubsan::execute): Add object size instrumentation.
      	* ubsan.h (ubsan_expand_objsize_ifn): Declare.
      testsuite/
      	* c-c++-common/ubsan/object-size-1.c: New test.
      	* c-c++-common/ubsan/object-size-2.c: New test.
      	* c-c++-common/ubsan/object-size-3.c: New test.
      	* c-c++-common/ubsan/object-size-4.c: New test.
      	* c-c++-common/ubsan/object-size-5.c: New test.
      	* c-c++-common/ubsan/object-size-6.c: New test.
      	* c-c++-common/ubsan/object-size-7.c: New test.
      	* c-c++-common/ubsan/object-size-8.c: New test.
      	* c-c++-common/ubsan/object-size-9.c: New test.
      	* g++.dg/ubsan/object-size-1.C: New test.
      	* gcc.dg/ubsan/object-size-9.c: New test.
      
      From-SVN: r216099
      Marek Polacek committed
    • * testsuite/Makefile.in: Regenerate. · c95e71be
      From-SVN: r216098
      Jonathan Wakely committed
    • re PR libstdc++/49561 ([C++0x] std::list::size complexity) · a2e70f50
      	PR libstdc++/49561
      	* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_CXX11_ABI): Define.
      	* configure.ac: Use GLIBCXX_ENABLE_LIBSTDCXX_CXX11_ABI.
      	* configure: Regenerate.
      	* include/Makefile.am (stamp-cxx11-abi): New target.
      	(c++config.h): Set _GLIBCXX_USE_CXX11_ABI macro.
      	* include/Makefile.in: Regenerate.
      	* include/bits/c++config: Add _GLIBCXX_USE_CXX11_ABI placeholder and
      	define _GLIBCXX_DEFAULT_ABI_TAG.
      	* include/bits/list.tcc (list::emplace(const_iterator, _Args&...)):
      	Increment size.
      	(list::emplace(const_iterator, const value_type&)): Likewise.
      	(list::merge(list&), list::merge(list&, _StrictWeakOrdering)): Adjust
      	list sizes.
      	* include/bits/stl_list.h (_List_base, list): Add ABI tag macro.
      	(_List_base::_M_size): New data member in cxx11 ABI mode.
      	(_List_base::_S_distance(_List_node_base*, _List_node_base*)): New
      	function.
      	(_List_base::_M_get_size(), _List_base::_M_set_size(size_t),
      	_List_base::_M_inc_size(size_t), _List_base::_M_dec_size(size_t),
      	_List_base::_M_distance, _List_base::_M_node_count): New functions for
      	accessing list size correctly for the ABI mode.
      	(_List_base::_List_base(_List_base&&)): Copy size and reset source.
      	(_List_base::_M_init()): Initialize size member.
      	(list::size()): Use _List_base::_M_node_count.
      	(list::swap(list&)): Swap sizes.
      	(list::splice(iterator, list&)): Update sizes.
      	(list::splice(iterator, list&, iterator)): Likewise.
      	(list::insert(iterator, const value_type&)): Update size.
      	(list::insert(iterator, _Args&&...)): Likewise.
      	(list::_M_erase(iterator)): Likewise.
      	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
      	Adjust.
      	* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
      	Adjust.
      	* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
      	Adjust.
      	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
      	Adjust.
      	* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust.
      # End of auto-generated commit message
      Fix date and whitespace in libstdc++-v3/ChangeLog
      
      From-SVN: r216097
      Jonathan Wakely committed
    • re PR target/63404 (gcc 5 miscompiles linux block layer) · 069d7fc5
      PR target/63404
      
        * shrink-wrap.c (move_insn_for_shrink_wrap): Don't use single_set.
        Restrict the set of expressions we're willing to move.
      
      From-SVN: r216096
      Richard Henderson committed
    • ira.c (struct equivalence): Promote INIT_INSNs field to an rtx_insn_list. · fb0ab697
              * ira.c (struct equivalence): Promote INIT_INSNs field to
              an rtx_insn_list.  Add comments.
              (no_equiv): Promote LIST to an rtx_insn_list.  Update
              testing for and creating the special marker.  Use methods
              to extract the insn and next pointers.  Promote INSN to an
              rtx_insn.
              (update_equiv_regs): Update test for special marker in the
              INIT_INSNs list.
      
      From-SVN: r216095
      Jeff Law committed
    • re PR libstdc++/49561 ([C++0x] std::list::size complexity) · 375f837b
      	PR libstdc++/49561
      	* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_CXX11_ABI): Define.
      	* configure.ac: Use GLIBCXX_ENABLE_LIBSTDCXX_CXX11_ABI.
      	* configure: Regenerate.
      	* include/Makefile.am (stamp-cxx11-abi): New target.
      	(c++config.h): Set _GLIBCXX_USE_CXX11_ABI macro.
      	* include/Makefile.in: Regenerate.
      	* include/bits/c++config: Add _GLIBCXX_USE_CXX11_ABI placeholder and
      	define _GLIBCXX_DEFAULT_ABI_TAG.
      	* include/bits/list.tcc (list::emplace(const_iterator, _Args&...)):
      	Increment size.
      	(list::emplace(const_iterator, const value_type&)): Likewise.
      	(list::merge(list&), list::merge(list&, _StrictWeakOrdering)): Adjust
      	list sizes.
      	* include/bits/stl_list.h (_List_base, list): Add ABI tag macro.
      	(_List_base::_M_size): New data member in cxx11 ABI mode.
      	(_List_base::_S_distance(_List_node_base*, _List_node_base*)): New
      	function.
      	(_List_base::_M_get_size(), _List_base::_M_set_size(size_t),
      	_List_base::_M_inc_size(size_t), _List_base::_M_dec_size(size_t),
      	_List_base::_M_distance, _List_base::_M_node_count): New functions for
      	accessing list size correctly for the ABI mode.
      	(_List_base::_List_base(_List_base&&)): Copy size and reset source.
      	(_List_base::_M_init()): Initialize size member.
      	(list::size()): Use _List_base::_M_node_count.
      	(list::swap(list&)): Swap sizes.
      	(list::splice(iterator, list&)): Update sizes.
      	(list::splice(iterator, list&, iterator)): Likewise.
      	(list::insert(iterator, const value_type&)): Update size.
      	(list::insert(iterator, _Args&&...)): Likewise.
      	(list::_M_erase(iterator)): Likewise.
      	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
      	Adjust.
      	* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
      	Adjust.
      	* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
      	Adjust.
      	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
      	Adjust.
      	* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust.
      
      From-SVN: r216094
      Jonathan Wakely committed
    • Minor reformatting. · 47c14114
      From-SVN: r216093
      Arnaud Charlet committed
    • [multiple changes] · 9ceeaf9d
      2014-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* freeze.adb, sem_attr.adb: Minor reformatting.
      
      2014-10-10  Johannes Kanig  <kanig@adacore.com>
      
      	* a-cfdlli.ads, a-cfhama.ads, a-cfhase.ads, a-cforma.ads,
      	a-cforse.ads, a-cofove.ads: add "Default_Initial_Condition"
      	to container type.
      
      2014-10-10  Vincent Celier  <celier@adacore.com>
      
      	* prj-conf.adb (Do_Autoconf): In Codepeer mode, do not try to get
      	any configuration switches from the project file.
      
      2014-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb (Build_Wrapper): Renamed as Build_Operator_Wrapper.
      	(Build_Function_Wrapper): New function, to construct a wrapper
      	function for actuals that are functions with an arbitrary
      	number of parameters. Used in GNATProve mode to simplify proof
      	propagation in instantiations.
      
      From-SVN: r216092
      Arnaud Charlet committed
    • [multiple changes] · 4d1429b2
      2014-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* freeze.adb, gnat1drv.adb, sem_ch13.adb: Minor reformatting and
      	code clean up.
      
      2014-10-10  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_res.adb (Is_OK_Volatile_Context): Allow
      	a volatile object reference to appear as the expression of a
      	type conversion.
      
      From-SVN: r216091
      Arnaud Charlet committed
    • [multiple changes] · c9f95e4c
      2014-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Analyze_Aspect_Specifications, Library_Unit_Aspects):
      	Aspect specification is legal on a local instantiation of a
      	library-level generic unit.
      
      2014-10-10  Gary Dismukes  <dismukes@adacore.com>
      
      	* gnat1drv.adb (Adjust_Global_Switches): Set Front_End_Inlining
      	if inlining has been enabled via -gnatn and the target is not GCC.
      
      2014-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* freeze.adb (Freeze_Entity): Freezing a subprogram does
      	not always freeze its profile.	In particular, an attribute
      	reference that takes the access type does not freeze the types
      	of the formals.
      
      From-SVN: r216090
      Arnaud Charlet committed
    • [multiple changes] · 32a21096
      2014-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* errout.adb (Adjust_Name_Case): New procedure.
      	(Set_Msg_Node): Use Adjust_Name_Case.
      	* errout.ads (Adjust_Name_Case): New procedure.
      	* exp_intr.adb (Add_Source_Info): Minor code reorganization
      	(use Ekind_In).
      	(Write_Entity_Name): Use Errout.Adjust_Name_Case.
      	* sem_prag.adb (Is_Non_Significant_Pragma_Reference): Review
      	and fix up entries in Sig_Flags, and correct logical errors in
      	function itself.
      	* sprint.adb (Sprint_Node_Actual): Properly print string for
      	raise statement.
      
      2014-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Analyze_Object_Declaration): For an object of an
      	anonymous array type with delayed aspects, defer freezing of
      	type until object itself is frozen.
      	* freeze.adb (Freeze_Entity): When freezing an object of an
      	anonymous array type with delayed aspects, remove freeze node of
      	object after freezing type, to prevent out-of-order elaboration
      	in the back-end. The initialization call for the object has
      	already been constructed when expanding the object declaration.
      
      From-SVN: r216089
      Arnaud Charlet committed
    • exp_intr.adb (Write_Entity_Name): Moved to outer level · 8f819471
      2014-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* exp_intr.adb (Write_Entity_Name): Moved to outer level
      	(Write_Entity_Name): Properly handle operator names
      	(Expand_Source_Info): New procedure.
      	* exp_intr.ads (Add_Source_Info): New procedure.
      
      2014-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* butil.ads: Minor reformatting.
      	* sem_ch5.adb: Code clean up.
      
      2014-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch11.adb (Expand_N_Raise_Statement): Handle
      	Prefix_Exception_Messages.
      	* opt.adb: Handle new flags Prefix_Exception_Message[_Config].
      	* opt.ads: New flags Prefix_Exception_Message[_Config].
      	* par-prag.adb: New dummy entry for pragma Prefix_Exception_Messages.
      	* snames.ads-tmpl: Add entries for new pragma Prefix_Exception_Messages.
      	* sem_prag.adb: Implement new pragma Prefix_Exception_Messages
      	* gnat_rm.texi: Document pragma Prefix_Exception_Messages.
      
      From-SVN: r216088
      Robert Dewar committed
    • [multiple changes] · d6cd5d34
      2014-10-10  Gary Dismukes  <dismukes@adacore.com>
      
      	* sinfo.ads, gnat_ugn.texi, a-except.adb, a-except-2005.adb,
      	raise-gcc.c Spelling changes (prolog => prologue, epilog => epilogue).
      
      2014-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch5.adb (Is_Wrapped_In_Block): Handle properly blocks that
      	contain pragmas generated for loop invariants and type predicates.
      	Clarify use of this subprogram.
      
      From-SVN: r216087
      Arnaud Charlet committed
    • [multiple changes] · 33b87152
      2014-10-10  Yannick Moy  <moy@adacore.com>
      
      	* sem_prag.adb (Analyze_Global_Item): Accept formal objects in Global
      	contracts.
      	* errout.adb, errout.ads (SPARK_Msg_NE): Issue error unless
      	SPARK_Mode is Off.
      
      2014-10-10  Vadim Godunko  <godunko@adacore.com>
      
      	* a-stwima.adb (To_Sequence): Compute size of result array.
      
      2014-10-10  Javier Miranda  <miranda@adacore.com>
      
      	* gnat_ugn.texi (Interfacing with C++ at the Class Level): Update the
      	sources of the example to avoid a warning when the Ada files are
      	automatically generated by the binding generator.
      
      2014-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_attr.adb (Resolve_Attribute, case 'Update): Set
      	Do_Range_Check on the expression of a record component
      	association when needed, as is done for array components, when
      	the corresponding type is a scalar type.
      
      From-SVN: r216084
      Arnaud Charlet committed
    • [multiple changes] · 79904ebc
      2014-10-10  Gary Dismukes  <dismukes@adacore.com>
      
      	* a-coinho-shared.adb: Minor typo fix.
      	* prj-env.ads: Minor reformatting.
      
      2014-10-10  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_res.adb (Resolve_String_Literal): Do not
      	generate a string literal subtype for the default expression of
      	a formal parameter in GNATprove mode.
      
      2014-10-10  Yannick Moy  <moy@adacore.com>
      
      	* errout.adb (SPARK_Msg_N): Issue error unless SPARK_Mode is Off.
      
      2014-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch5.adb (Expand_Formal_Container_Element_Loop): Analyze
      	declaration for loop parameter before rest of loop, and set
      	entity kind to prevent assignments to it in the user code.
      	* sem_ch3.adb (Analyze_Object_Contract): No contracts apply to the
      	loop parameter in an element iteration over o formal container.
      
      2014-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_ugn.texi: Document use of user-level routines to handle
      	e.g. col major arrays.
      
      2014-10-10  Doug Rupp  <rupp@adacore.com>
      
      	* s-osinte-android.adb: Fix misspelling.
      	* gsocket.h: Tweak the Android quirks.
      
      2014-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* errout.ads (SPARK_Msg_N): Fix spec to match change in body.
      
      From-SVN: r216083
      Arnaud Charlet committed
    • asan-dg.exp (asan_link_flags): Save ld_library_path. · 06a04ce7
      gcc/testsuite/
      
      2014-10-10  Max Ostapenko  <m.ostapenko@partner.samsung.com>
      
      	* lib/asan-dg.exp (asan_link_flags): Save ld_library_path.
      	(asan_finish): Remove restore_ld_library_path_env_vars.
      	Restore ld_library_path with saved value. Restore LD_LIBRARY_PATH
      	related env variables by calling set_ld_library_path_env_vars.
      	* lib/tsan-dg.exp (tsan_link_flags): Save ld_library_path.
      	(tsan_finish): Remove restore_ld_library_path_env_vars.
      	Restore ld_library_path with saved value. Restore LD_LIBRARY_PATH
      	related env variables by calling set_ld_library_path_env_vars.
      	* lib/ubsan-dg.exp (ubsan_link_flags): Save ld_library_path.
      	(ubsan_finish): Remove restore_ld_library_path_env_vars.
      	Restore ld_library_path with saved value. Restore LD_LIBRARY_PATH
      	related env variables by calling set_ld_library_path_env_vars.
      
      From-SVN: r216082
      Max Ostapenko committed
    • [multiple changes] · 80363c2f
      2014-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch13.adb: Minor code reorganization.
      
      2014-10-10  Pat Rogers  <rogers@adacore.com>
      
      	* gnat_rm.texi: Text now indicates pragma No_Run_Time is not
      	for users.
      
      2014-10-10  Vadim Godunko  <godunko@adacore.com>
      
      	* a-coinho-shared.adb: Add minor comment.
      	* a-stzmap.adb (To_Sequence): Compute size of result array.
      
      From-SVN: r216081
      Arnaud Charlet committed
    • exp_ch3.adb (Build_Init_Procedure): Complete the condition of an if-stmt to… · d56f4479
      exp_ch3.adb (Build_Init_Procedure): Complete the condition of an if-stmt to match its current documentation.
      
      2014-10-10  Javier Miranda  <miranda@adacore.com>
      
      	* exp_ch3.adb (Build_Init_Procedure): Complete the condition of an
      	if-stmt to match its current documentation.
      
      From-SVN: r216080
      Javier Miranda committed
    • [AArch64] Add --enable-fix-cortex-a53-835769 configure-time option · 5e396da6
      	* configure.ac: Add --enable-fix-cortex-a53-835769 option.
      	* configure: Regenerate.
      	* config/aarch64/aarch64.c (aarch64_override_options): Handle
      	TARGET_FIX_ERR_A53_835769_DEFAULT.
      	* config/aarch64/aarch64.opt (mfix-cortex-a53-835769): Set Init
      	value to 2.
      	* doc/install.texi (aarch64*-*-*): Document 
      	new --enable-fix-cortex-a53-835769 option.
      
      From-SVN: r216076
      Kyrylo Tkachov committed
    • [AArch64] Implement workaround for ARM Cortex-A53 erratum 835769 · 75cf1494
      	* config/aarch64/aarch64.h (FINAL_PRESCAN_INSN): Define.
      	(ADJUST_INSN_LENGTH): Define.
      	* config/aarch64/aarch64.opt (mfix-cortex-a53-835769): New option.
      	* config/aarch64/aarch64.c (is_mem_p): New function.
      	(is_memory_op): Likewise.
      	(aarch64_prev_real_insn): Likewise.
      	(is_madd_op): Likewise.
      	(dep_between_memop_and_curr): Likewise.
      	(aarch64_madd_needs_nop): Likewise.
      	(aarch64_final_prescan_insn): Likewise.
      	* doc/invoke.texi (AArch64 Options): Document -mfix-cortex-a53-835769
      	and -mno-fix-cortex-a53-835769 options.
      
      From-SVN: r216075
      Kyrylo Tkachov committed
    • [multiple changes] · b9696ffb
      2014-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch7.adb, einfo.adb, einfo.ads, sem_prag.adb, sem_ch12.adb,
      	freeze.adb, sem_util.adb, sem_res.adb, exp_ch6.adb, exp_ch13.adb,
      	sem_ch6.adb, sem_cat.adb, sem_disp.adb
      	(Is_Subprogram_Or_Generic_Subprogram): New primitive. Use this primitive
      	throughout where appropriate.
      
      2014-10-10  Bob Duff  <duff@adacore.com>
      
      	* a-coinho-shared.ads: Minor reformatting.
      	* s-traceb.adb: Minor clean up.
      
      2014-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* ali.adb (Scan_ALI): Read and process new GP flag on ALI P line.
      	* ali.ads (GNATprove_Mode): New component in ALI table.
      	(GNATprove_Mode_Specified): New global.
      	* gnatbind.adb (Gnatbind): Give fatal error if any file compiled
      	in GNATProve mode.
      	* lib-writ.ads, lib-writ.adb (GP): New flag on P line for
      	GNATProve_Mode.
      
      2014-10-10  Javier Miranda  <miranda@adacore.com>
      
      	* exp_ch3.adb (Build_Init_Procedure): Adding assertion.
      	(Build_Init_Statement): Ensure that statements
      	associated with the parent components are located at the beginning
      	of the returned list of statements.
      
      2014-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Inherit_Aspects_At_Freeze_Node): If the full
      	view of a private type T that has a type invariant is a scalar
      	or constrained array type, the base type created for the full
      	view has the same type invariant.
      
      From-SVN: r216074
      Arnaud Charlet committed
    • exp_util.ads, [...]: Minor code reorganization. · 1e3ed0fc
      2014-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* exp_util.ads, sem_ch12.adb, exp_util.adb, i-fortra.ads: Minor code
      	reorganization.
      
      From-SVN: r216073
      Robert Dewar committed
    • re PR tree-optimization/63464 (compare one character to many: faster) · aa79a1e1
      	PR tree-optimization/63464
      	* tree-switch-conversion.c (struct case_bit_test): Remove
      	hi and lo fields, add wide_int mask field.
      	(emit_case_bit_tests): Add MAXVAL argument, rewrite uses of
      	hi/lo fields into wide_int mask operations, optimize by pretending
      	minval to be 0 if maxval is small enough.
      	(process_switch): Adjust caller.
      
      From-SVN: r216072
      Jakub Jelinek committed
    • re PR tree-optimization/63379 (Incorrect vectorization when enabling SSE and O3,… · f1485e5b
      re PR tree-optimization/63379 (Incorrect vectorization when enabling SSE and O3, initialises loop with wrong value)
      
      2014-10-10  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/63379
      	* tree-vect-slp.c (vect_get_constant_vectors): Do not compute
      	a neutral operand for min/max when it is not a reduction chain.
      
      	* gcc.dg/vect/pr63379.c: New testcase.
      
      From-SVN: r216070
      Richard Biener committed
    • re PR fortran/59488 ([OpenMP] named constant in parallel construct leads to "not… · 18cda88d
      re PR fortran/59488 ([OpenMP] named constant in parallel construct leads to "not specified in enclosing parallel" error.)
      
      	PR fortran/59488
      	* trans-openmp.c (gfc_omp_predetermined_sharing): Return
      	OMP_CLAUSE_DEFAULT_SHARED for parameters or vtables.
      
      	* gfortran.dg/gomp/pr59488-1.f90: New test.
      	* gfortran.dg/gomp/pr59488-2.f90: New test.
      
      From-SVN: r216067
      Jakub Jelinek committed
    • re PR tree-optimization/63476 (ICE: tree check: expected ssa_name, have var_decl… · 81231d13
      re PR tree-optimization/63476 (ICE: tree check: expected ssa_name, have var_decl in walk_aliased_vdefs_1, at tree-ssa-alias.c:2689)
      
      2014-10-10  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/63476
      	* tree-ssa-pre.c (struct bb_bitmap_sets): Add vop_on_exit member.
      	(BB_LIVE_VOP_ON_EXIT): New define.
      	(create_expression_by_pieces): Assign VUSEs to stmts.
      	(compute_avail): Track BB_LIVE_VOP_ON_EXIT.
      	(pass_pre::execute): Assert virtual SSA form is up-to-date
      	after insertion.
      
      	* g++.dg/torture/pr63476.C: New testcase.
      
      From-SVN: r216065
      Richard Biener committed