Index: configure
===================================================================
---- configure (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ configure (.../branches/gcc-4_5-branch) (revision 160798)
+--- configure (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ configure (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5996,95 +5996,7 @@
# If we couldn't enable LTO and the user forced it, emit an error.
if test x"$enable_lto" = x"no" \
&& test x"$default_enable_lto" != x"yes" ; then
-@@ -6613,8 +6655,29 @@
+@@ -6613,8 +6655,30 @@
fi
+ # -flto it won't be needed until after installation anyway.
+ case $target in
+ *-cygwin*|*-mingw*) ;;
++ x86_64-apple-darwin*) ;;
+ *) if test x"$enable_lto" = x"yes"; then
+ as_fn_error "LTO support is not enabled for this target." "$LINENO" 5
+ fi
# By default, C is the only stage 1 language.
stage1_languages=,c,
-@@ -7610,7 +7673,7 @@
+@@ -7610,7 +7674,7 @@
mv conftest.o conftest.o.g0 &&
${CC} -c -g conftest.c &&
mv conftest.o conftest.o.g &&
BUILD_CONFIG=
Index: Makefile.in
===================================================================
---- Makefile.in (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ Makefile.in (.../branches/gcc-4_5-branch) (revision 160798)
+--- Makefile.in (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ Makefile.in (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -57763,6 +57763,14 @@
configure-stage4-gcc: maybe-all-stage4-gold
configure-stageprofile-gcc: maybe-all-stageprofile-gold
all-stage1-gcc: maybe-all-build-texinfo
Index: libgcc/config.host
===================================================================
---- libgcc/config.host (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libgcc/config.host (.../branches/gcc-4_5-branch) (revision 160798)
+--- libgcc/config.host (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libgcc/config.host (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -600,6 +600,7 @@
i[34567]86-*-darwin* | x86_64-*-darwin* | \
i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
if test "${host_address}" = 32; then
Index: libgcc/config/i386/32/sfp-machine.h
===================================================================
---- libgcc/config/i386/32/sfp-machine.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libgcc/config/i386/32/sfp-machine.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- libgcc/config/i386/32/sfp-machine.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libgcc/config/i386/32/sfp-machine.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -142,8 +142,8 @@
if (_fex & FP_EX_DIVZERO) \
{ \
} \
Index: libgcc/ChangeLog
===================================================================
---- libgcc/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libgcc/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- libgcc/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libgcc/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,15 @@
+2010-05-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
* GCC 4.5.0 released.
Index: libgomp/configure
===================================================================
---- libgomp/configure (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libgomp/configure (.../branches/gcc-4_5-branch) (revision 160798)
+--- libgomp/configure (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libgomp/configure (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -15379,7 +15379,7 @@
/* end confdefs.h. */
#include <pthread.h>
return (a_in_other_thread == a_in_main_thread);
Index: libgomp/sections.c
===================================================================
---- libgomp/sections.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libgomp/sections.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- libgomp/sections.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libgomp/sections.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2005, 2007, 2008, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
/* This routine is called when first encountering a sections construct
Index: libgomp/ChangeLog
===================================================================
---- libgomp/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libgomp/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- libgomp/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libgomp/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,29 @@
+2010-06-10 Iain Sandoe <iains@gcc.gnu.org>
+
* GCC 4.5.0 released.
Index: libgomp/testsuite/libgomp.c++/pr43893.C
===================================================================
---- libgomp/testsuite/libgomp.c++/pr43893.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ libgomp/testsuite/libgomp.c++/pr43893.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- libgomp/testsuite/libgomp.c++/pr43893.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ libgomp/testsuite/libgomp.c++/pr43893.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,125 @@
+// PR c/43893
+// { dg-do run }
+}
Index: libgomp/testsuite/libgomp.fortran/vla8.f90
===================================================================
---- libgomp/testsuite/libgomp.fortran/vla8.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ libgomp/testsuite/libgomp.fortran/vla8.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- libgomp/testsuite/libgomp.fortran/vla8.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ libgomp/testsuite/libgomp.fortran/vla8.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,254 @@
+! { dg-do run }
+
+end
Index: libgomp/testsuite/libgomp.c/pr43893.c
===================================================================
---- libgomp/testsuite/libgomp.c/pr43893.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ libgomp/testsuite/libgomp.c/pr43893.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- libgomp/testsuite/libgomp.c/pr43893.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ libgomp/testsuite/libgomp.c/pr43893.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,61 @@
+/* PR c/43893 */
+/* { dg-do run } */
+}
Index: libgomp/config/linux/proc.c
===================================================================
---- libgomp/config/linux/proc.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libgomp/config/linux/proc.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- libgomp/config/linux/proc.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libgomp/config/linux/proc.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
-/* Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010
#ifdef _SC_NPROCESSORS_ONLN
Index: libgomp/config/linux/affinity.c
===================================================================
---- libgomp/config/linux/affinity.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libgomp/config/linux/affinity.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- libgomp/config/linux/affinity.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libgomp/config/linux/affinity.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
pthread_setaffinity_np (pthread_self (), sizeof (cpuset), &cpuset);
Index: gcc/tree-vrp.c
===================================================================
---- gcc/tree-vrp.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-vrp.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-vrp.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-vrp.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -764,7 +764,28 @@
&& integer_zerop (vr->max);
}
check_all_array_refs ();
Index: gcc/sched-ebb.c
===================================================================
---- gcc/sched-ebb.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/sched-ebb.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/sched-ebb.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/sched-ebb.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -463,7 +463,7 @@
schedule_ebb (rtx head, rtx tail)
{
last_bb = BLOCK_FOR_INSN (tail);
Index: gcc/doc/sourcebuild.texi
===================================================================
---- gcc/doc/sourcebuild.texi (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/doc/sourcebuild.texi (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/doc/sourcebuild.texi (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/doc/sourcebuild.texi (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1094,9 +1094,12 @@
/* @{ dg-skip-if "" @{ *-*-* @} @{ "-O2 -g" "-O3 -g" @} @{ "-fpic" @} @} */
@end smallexample
Index: gcc/doc/standards.texi
===================================================================
---- gcc/doc/standards.texi (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/doc/standards.texi (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/doc/standards.texi (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/doc/standards.texi (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -183,7 +183,7 @@
available on the ISO C++ committee's web site at
@uref{http://www.open-std.org/jtc1/sc22/wg21/}. For information
standard in GCC, use the option @option{-std=c++0x}; to obtain all the
diagnostics required by the standard, you should also specify
@option{-pedantic} (or @option{-pedantic-errors} if you want them to be
+Index: gcc/doc/tm.texi
+===================================================================
+--- gcc/doc/tm.texi (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/doc/tm.texi (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -7149,6 +7149,18 @@
+ this function.
+ @end deftypefun
+
++@deftypefn {Target Hook} void TARGET_ASM_LTO_START (void)
++Output to @code{asm_out_file} any text which the assembler expects
++to find at the start of an LTO section. The default is to output
++nothing.
++@end deftypefn
++
++@deftypefn {Target Hook} void TARGET_ASM_LTO_END (void)
++Output to @code{asm_out_file} any text which the assembler expects
++to find at the end of an LTO section. The default is to output
++nothing.
++@end deftypefn
++
+ @deftypefn {Target Hook} void TARGET_ASM_CODE_END (void)
+ Output to @code{asm_out_file} any text which is needed before emitting
+ unwind info and debug info at the end of a file. Some targets emit
Index: gcc/doc/install.texi
===================================================================
---- gcc/doc/install.texi (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/doc/install.texi (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/doc/install.texi (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/doc/install.texi (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -361,7 +361,7 @@
downloaded from @uref{http://www.mr511.de/software/libelf-0.8.12.tar.gz},
though it is commonly available in several systems. The versions in
@item --enable-initfini-array
Force the use of sections @code{.init_array} and @code{.fini_array}
(instead of @code{.init} and @code{.fini}) for constructors and
+Index: gcc/dwarf2asm.c
+===================================================================
+--- gcc/dwarf2asm.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/dwarf2asm.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,5 +1,5 @@
+ /* Dwarf2 assembler output helper routines.
+- Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009
++ Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
+ Free Software Foundation, Inc.
+
+ This file is part of GCC.
+@@ -877,6 +877,7 @@
+ DECL_ARTIFICIAL (decl) = 1;
+ DECL_IGNORED_P (decl) = 1;
+ DECL_INITIAL (decl) = decl;
++ TREE_READONLY (decl) = 1;
+
+ if (TREE_PUBLIC (id))
+ {
Index: gcc/lto-symtab.c
===================================================================
---- gcc/lto-symtab.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/lto-symtab.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/lto-symtab.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/lto-symtab.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -94,9 +94,10 @@
const struct lto_symtab_entry_def *base =
(const struct lto_symtab_entry_def *) p;
e = (lto_symtab_entry_t) *slot;
Index: gcc/opts-common.c
===================================================================
---- gcc/opts-common.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/opts-common.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/opts-common.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/opts-common.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -132,6 +132,10 @@
{
int argc = *argcp;
}
else
{
+Index: gcc/tree-loop-distribution.c
+===================================================================
+--- gcc/tree-loop-distribution.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-loop-distribution.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -202,18 +202,28 @@
+
+ for (bsi = gsi_start_phis (bb); !gsi_end_p (bsi);)
+ if (!bitmap_bit_p (partition, x++))
+- remove_phi_node (&bsi, true);
++ {
++ gimple phi = gsi_stmt (bsi);
++ if (!is_gimple_reg (gimple_phi_result (phi)))
++ mark_virtual_phi_result_for_renaming (phi);
++ remove_phi_node (&bsi, true);
++ }
+ else
+ gsi_next (&bsi);
+
+ for (bsi = gsi_start_bb (bb); !gsi_end_p (bsi);)
+- if (gimple_code (gsi_stmt (bsi)) != GIMPLE_LABEL
+- && !bitmap_bit_p (partition, x++))
+- gsi_remove (&bsi, false);
+- else
+- gsi_next (&bsi);
+-
+- mark_virtual_ops_in_bb (bb);
++ {
++ gimple stmt = gsi_stmt (bsi);
++ if (gimple_code (gsi_stmt (bsi)) != GIMPLE_LABEL
++ && !bitmap_bit_p (partition, x++))
++ {
++ unlink_stmt_vdef (stmt);
++ gsi_remove (&bsi, true);
++ release_defs (stmt);
++ }
++ else
++ gsi_next (&bsi);
++ }
+ }
+
+ free (bbs);
+@@ -250,7 +260,6 @@
+ gimple_seq stmt_list = NULL, stmts;
+ gimple fn_call;
+ tree mem, fn;
+- gimple_stmt_iterator i;
+ struct data_reference *dr = XCNEW (struct data_reference);
+ location_t loc = gimple_location (stmt);
+
+@@ -301,13 +310,6 @@
+ fn = build_fold_addr_expr (implicit_built_in_decls [BUILT_IN_MEMSET]);
+ fn_call = gimple_build_call (fn, 3, mem, integer_zero_node, nb_bytes);
+ gimple_seq_add_stmt (&stmt_list, fn_call);
+-
+- for (i = gsi_start (stmt_list); !gsi_end_p (i); gsi_next (&i))
+- {
+- gimple s = gsi_stmt (i);
+- update_stmt_if_modified (s);
+- }
+-
+ gsi_insert_seq_after (&bsi, stmt_list, GSI_CONTINUE_LINKING);
+ res = true;
+
+Index: gcc/tree-ssa-loop-unswitch.c
+===================================================================
+--- gcc/tree-ssa-loop-unswitch.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-ssa-loop-unswitch.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,5 +1,5 @@
+ /* Loop unswitching.
+- Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
++ Copyright (C) 2004, 2005, 2007, 2008, 2010 Free Software Foundation, Inc.
+
+ This file is part of GCC.
+
+@@ -112,6 +112,12 @@
+ if (!stmt || gimple_code (stmt) != GIMPLE_COND)
+ return NULL_TREE;
+
++ /* To keep the things simple, we do not directly remove the conditions,
++ but just replace tests with 0 != 0 resp. 1 != 0. Prevent the infinite
++ loop where we would unswitch again on such a condition. */
++ if (gimple_cond_true_p (stmt) || gimple_cond_false_p (stmt))
++ return NULL_TREE;
++
+ /* Condition must be invariant. */
+ FOR_EACH_SSA_TREE_OPERAND (use, stmt, iter, SSA_OP_USE)
+ {
+@@ -125,12 +131,6 @@
+ cond = build2 (gimple_cond_code (stmt), boolean_type_node,
+ gimple_cond_lhs (stmt), gimple_cond_rhs (stmt));
+
+- /* To keep the things simple, we do not directly remove the conditions,
+- but just replace tests with 0/1. Prevent the infinite loop where we
+- would unswitch again on such a condition. */
+- if (integer_zerop (cond) || integer_nonzerop (cond))
+- return NULL_TREE;
+-
+ return cond;
+ }
+
+@@ -176,19 +176,11 @@
+ {
+ basic_block *bbs;
+ struct loop *nloop;
+- unsigned i;
++ unsigned i, found;
+ tree cond = NULL_TREE;
+ gimple stmt;
+ bool changed = false;
+
+- /* Do not unswitch too much. */
+- if (num > PARAM_VALUE (PARAM_MAX_UNSWITCH_LEVEL))
+- {
+- if (dump_file && (dump_flags & TDF_DETAILS))
+- fprintf (dump_file, ";; Not unswitching anymore, hit max level\n");
+- return false;
+- }
+-
+ /* Only unswitch innermost loops. */
+ if (loop->inner)
+ {
+@@ -216,6 +208,7 @@
+
+ i = 0;
+ bbs = get_loop_body (loop);
++ found = loop->num_nodes;
+
+ while (1)
+ {
+@@ -226,8 +219,17 @@
+
+ if (i == loop->num_nodes)
+ {
+- free (bbs);
+- return changed;
++ if (dump_file
++ && num > PARAM_VALUE (PARAM_MAX_UNSWITCH_LEVEL)
++ && (dump_flags & TDF_DETAILS))
++ fprintf (dump_file, ";; Not unswitching anymore, hit max level\n");
++
++ if (found == loop->num_nodes)
++ {
++ free (bbs);
++ return changed;
++ }
++ break;
+ }
+
+ cond = simplify_using_entry_checks (loop, cond);
+@@ -244,19 +246,107 @@
+ gimple_cond_set_condition_from_tree (stmt, boolean_false_node);
+ changed = true;
+ }
++ /* Do not unswitch too much. */
++ else if (num > PARAM_VALUE (PARAM_MAX_UNSWITCH_LEVEL))
++ {
++ i++;
++ continue;
++ }
++ /* In nested tree_unswitch_single_loop first optimize all conditions
++ using entry checks, then discover still reachable blocks in the
++ loop and find the condition only among those still reachable bbs. */
++ else if (num != 0)
++ {
++ if (found == loop->num_nodes)
++ found = i;
++ i++;
++ continue;
++ }
+ else
+- break;
++ {
++ found = i;
++ break;
++ }
+
+ update_stmt (stmt);
+ i++;
+ }
+
++ if (num != 0)
++ {
++ basic_block *tos, *worklist;
++
++ /* When called recursively, first do a quick discovery
++ of reachable bbs after the above changes and only
++ consider conditions in still reachable bbs. */
++ tos = worklist = XNEWVEC (basic_block, loop->num_nodes);
++
++ for (i = 0; i < loop->num_nodes; i++)
++ bbs[i]->flags &= ~BB_REACHABLE;
++
++ /* Start with marking header. */
++ *tos++ = bbs[0];
++ bbs[0]->flags |= BB_REACHABLE;
++
++ /* Iterate: find everything reachable from what we've already seen
++ within the same innermost loop. Don't look through false edges
++ if condition is always true or true edges if condition is
++ always false. */
++ while (tos != worklist)
++ {
++ basic_block b = *--tos;
++ edge e;
++ edge_iterator ei;
++ int flags = 0;
++
++ if (EDGE_COUNT (b->succs) == 2)
++ {
++ gimple stmt = last_stmt (b);
++ if (stmt
++ && gimple_code (stmt) == GIMPLE_COND)
++ {
++ if (gimple_cond_true_p (stmt))
++ flags = EDGE_FALSE_VALUE;
++ else if (gimple_cond_false_p (stmt))
++ flags = EDGE_TRUE_VALUE;
++ }
++ }
++
++ FOR_EACH_EDGE (e, ei, b->succs)
++ {
++ basic_block dest = e->dest;
++
++ if (dest->loop_father == loop
++ && !(dest->flags & BB_REACHABLE)
++ && !(e->flags & flags))
++ {
++ *tos++ = dest;
++ dest->flags |= BB_REACHABLE;
++ }
++ }
++ }
++
++ free (worklist);
++
++ /* Find a bb to unswitch on. */
++ for (; found < loop->num_nodes; found++)
++ if ((bbs[found]->flags & BB_REACHABLE)
++ && (cond = tree_may_unswitch_on (bbs[found], loop)))
++ break;
++
++ if (found == loop->num_nodes)
++ {
++ free (bbs);
++ return changed;
++ }
++ }
++
+ if (dump_file && (dump_flags & TDF_DETAILS))
+ fprintf (dump_file, ";; Unswitching loop\n");
+
+ initialize_original_copy_tables ();
+ /* Unswitch the loop on this condition. */
+- nloop = tree_unswitch_loop (loop, bbs[i], cond);
++ nloop = tree_unswitch_loop (loop, bbs[found], cond);
+ if (!nloop)
+ {
+ free_original_copy_tables ();
+Index: gcc/cgraph.c
+===================================================================
+--- gcc/cgraph.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cgraph.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1934,7 +1934,7 @@
+
+ static GTY(()) unsigned int clone_fn_id_num;
+
+-static tree
++tree
+ clone_function_name (tree decl)
+ {
+ tree name = DECL_ASSEMBLER_NAME (decl);
+@@ -1994,6 +1994,8 @@
+ ??? We cannot use COMDAT linkage because there is no
+ ABI support for this. */
+ DECL_EXTERNAL (new_node->decl) = 0;
++ if (DECL_ONE_ONLY (old_decl))
++ DECL_SECTION_NAME (new_node->decl) = NULL;
+ DECL_COMDAT_GROUP (new_node->decl) = 0;
+ TREE_PUBLIC (new_node->decl) = 0;
+ DECL_COMDAT (new_node->decl) = 0;
+Index: gcc/cgraph.h
+===================================================================
+--- gcc/cgraph.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cgraph.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -483,6 +483,7 @@
+ void cgraph_set_readonly_flag (struct cgraph_node *, bool);
+ void cgraph_set_pure_flag (struct cgraph_node *, bool);
+ void cgraph_set_looping_const_or_pure_flag (struct cgraph_node *, bool);
++tree clone_function_name (tree);
+
+ /* In cgraphunit.c */
+ void cgraph_finalize_function (tree, bool);
Index: gcc/DATESTAMP
===================================================================
---- gcc/DATESTAMP (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/DATESTAMP (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/DATESTAMP (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/DATESTAMP (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1 +1 @@
-20100414
-+20100615
++20100704
Index: gcc/tree-tailcall.c
===================================================================
---- gcc/tree-tailcall.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-tailcall.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-tailcall.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-tailcall.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -375,6 +375,8 @@
tree m, a;
basic_block abb;
value. The return value should also be dependent on each of them,
Index: gcc/tree.c
===================================================================
---- gcc/tree.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4265,7 +4265,12 @@
TYPE_LANG_SLOT_1 (type) = NULL_TREE;
}
fld_worklist_push (TREE_TYPE (t), fld);
-@@ -7919,7 +7934,8 @@
+@@ -7250,6 +7265,13 @@
+ we expect first argument to be THIS pointer. */
+ if (bitmap_bit_p (args_to_skip, 0))
+ DECL_VINDEX (new_decl) = NULL_TREE;
++
++ /* When signature changes, we need to clear builtin info. */
++ if (DECL_BUILT_IN (new_decl) && !bitmap_empty_p (args_to_skip))
++ {
++ DECL_BUILT_IN_CLASS (new_decl) = NOT_BUILT_IN;
++ DECL_FUNCTION_CODE (new_decl) = (enum built_in_function) 0;
++ }
+ return new_decl;
+ }
+
+@@ -7919,7 +7941,8 @@
auto_var_in_fn_p (const_tree var, const_tree fn)
{
return (DECL_P (var) && DECL_CONTEXT (var) == fn
|| TREE_CODE (var) == RESULT_DECL));
Index: gcc/tree.h
===================================================================
---- gcc/tree.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4940,9 +4940,8 @@
extern enum built_in_function builtin_mathfn_code (const_tree);
extern tree build_function_call_expr (location_t, tree, tree);
extern tree mathfn_built_in (tree, enum built_in_function fn);
extern tree c_strlen (tree, int);
extern tree std_gimplify_va_arg_expr (tree, tree, gimple_seq *, gimple_seq *);
+Index: gcc/target.h
+===================================================================
+--- gcc/target.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/target.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -235,6 +235,14 @@
+ translation unit. */
+ void (*file_end) (void);
+
++ /* Output any boilerplate text needed at the beginning of an
++ LTO output stream. */
++ void (*lto_start) (void);
++
++ /* Output any boilerplate text needed at the end of an
++ LTO output stream. */
++ void (*lto_end) (void);
++
+ /* Output any boilerplace text needed at the end of a
+ translation unit before debug and unwind info is emitted. */
+ void (*code_end) (void);
Index: gcc/ddg.c
===================================================================
---- gcc/ddg.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/ddg.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/ddg.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/ddg.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -390,7 +390,7 @@
{
int i;
/* Build the dependence information, using the sched_analyze function. */
Index: gcc/configure
===================================================================
---- gcc/configure (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/configure (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/configure (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/configure (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -671,6 +671,8 @@
slibdir
dollar
# Check -ldl
Index: gcc/builtins.c
===================================================================
---- gcc/builtins.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/builtins.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/builtins.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/builtins.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2521,8 +2521,6 @@
SET_EXPR_LOCATION (fn, loc);
return fn;
return expand_expr (fn, target, mode, EXPAND_NORMAL);
Index: gcc/gcc.c
===================================================================
---- gcc/gcc.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/gcc.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/gcc.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/gcc.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -7575,7 +7575,7 @@
fuse_linker_plugin + strlen (fuse_linker_plugin), 0))
{
fatal ("-fuse-linker-plugin, but liblto_plugin.so not found");
Index: gcc/omp-low.c
===================================================================
---- gcc/omp-low.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/omp-low.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/omp-low.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/omp-low.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1433,10 +1433,6 @@
break;
}
Index: gcc/objc/objc-act.c
===================================================================
---- gcc/objc/objc-act.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/objc/objc-act.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/objc/objc-act.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/objc/objc-act.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -545,6 +545,13 @@
structure-returning methods. */
default_constant_string_class_name = "NXConstantString";
Index: gcc/objc/ChangeLog
===================================================================
---- gcc/objc/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/objc/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/objc/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/objc/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,27 @@
+2010-06-10 Iain Sandoe <iains@gcc.gnu.org>
+
* GCC 4.5.0 released.
Index: gcc/DEV-PHASE
===================================================================
---- gcc/DEV-PHASE (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/DEV-PHASE (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/DEV-PHASE (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/DEV-PHASE (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1 @@
+prerelease
Index: gcc/tree-ssa-sccvn.c
===================================================================
---- gcc/tree-ssa-sccvn.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-ssa-sccvn.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-ssa-sccvn.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-ssa-sccvn.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3332,7 +3332,7 @@
vn_nary_may_trap (vn_nary_op_t nary)
{
honor_nans, honor_snans, rhs2,
Index: gcc/cgraphunit.c
===================================================================
---- gcc/cgraphunit.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cgraphunit.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cgraphunit.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cgraphunit.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -714,7 +714,33 @@
error ("double linked list of clones corrupted");
error_found = true;
if (node->analyzed && gimple_has_body_p (node->decl)
&& !TREE_ASM_WRITTEN (node->decl)
&& (!DECL_EXTERNAL (node->decl) || node->global.inlined_to)
+@@ -1787,11 +1813,19 @@
+ execute_ipa_summary_passes
+ ((struct ipa_opt_pass_d *) all_regular_ipa_passes);
+ }
++
++ /* Some targets need to handle LTO assembler output specially. */
++ if (flag_generate_lto)
++ targetm.asm_out.lto_start ();
++
+ execute_ipa_summary_passes ((struct ipa_opt_pass_d *) all_lto_gen_passes);
+
+ if (!in_lto_p)
+ ipa_write_summaries ();
+
++ if (flag_generate_lto)
++ targetm.asm_out.lto_end ();
++
+ if (!flag_ltrans)
+ execute_ipa_pass_list (all_regular_ipa_passes);
+ invoke_plugin_callbacks (PLUGIN_ALL_IPA_PASSES_END, NULL);
+@@ -2101,6 +2135,11 @@
+ else
+ new_decl = build_function_decl_skip_args (old_decl, args_to_skip);
+
++ /* Generate a new name for the new version. */
++ DECL_NAME (new_decl) = clone_function_name (old_decl);
++ SET_DECL_ASSEMBLER_NAME (new_decl, DECL_NAME (new_decl));
++ SET_DECL_RTL (new_decl, NULL);
++
+ /* Create the new version's call-graph node.
+ and update the edges of the new node. */
+ new_version_node =
+@@ -2233,7 +2272,6 @@
+ {
+ tree decl = gimple_call_fndecl (e->call_stmt);
+ gimple new_stmt;
+- gimple_stmt_iterator gsi;
+
+ if (!decl || decl == e->callee->decl
+ /* Don't update call from same body alias to the real function. */
+@@ -2249,21 +2287,25 @@
+ }
+
+ if (e->callee->clone.combined_args_to_skip)
+- new_stmt = gimple_call_copy_skip_args (e->call_stmt,
+- e->callee->clone.combined_args_to_skip);
++ {
++ gimple_stmt_iterator gsi;
++
++ new_stmt
++ = gimple_call_copy_skip_args (e->call_stmt,
++ e->callee->clone.combined_args_to_skip);
++
++ if (gimple_vdef (new_stmt)
++ && TREE_CODE (gimple_vdef (new_stmt)) == SSA_NAME)
++ SSA_NAME_DEF_STMT (gimple_vdef (new_stmt)) = new_stmt;
++
++ gsi = gsi_for_stmt (e->call_stmt);
++ gsi_replace (&gsi, new_stmt, true);
++ }
+ else
+ new_stmt = e->call_stmt;
+- if (gimple_vdef (new_stmt)
+- && TREE_CODE (gimple_vdef (new_stmt)) == SSA_NAME)
+- SSA_NAME_DEF_STMT (gimple_vdef (new_stmt)) = new_stmt;
++
+ gimple_call_set_fndecl (new_stmt, e->callee->decl);
+
+- gsi = gsi_for_stmt (e->call_stmt);
+- gsi_replace (&gsi, new_stmt, true);
+-
+- /* Update EH information too, just in case. */
+- maybe_clean_or_replace_eh_stmt (e->call_stmt, new_stmt);
+-
+ cgraph_set_call_stmt_including_clones (e->caller, e->call_stmt, new_stmt);
+
+ if (cgraph_dump_file)
Index: gcc/ChangeLog
===================================================================
---- gcc/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -1,3 +1,1089 @@
+--- gcc/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,3 +1,1486 @@
++2010-07-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
++
++ PR target/44597
++ * config/pa/predicates.md (prefetch_cc_operand): Remove.
++ (prefetch_nocc_operand): Likewise.
++ * config/pa/pa.md (prefetch): Revise expander to use prefetch_20.
++ (prefetch_20): New insn.
++ (prefetch_cc): Remove.
++ (prefetch_nocc): Likewise.
++
++ PR target/44705
++ * config/pa/pa.h (GO_IF_LEGITIMATE_ADDRESS): Reject LABEL_REF.
++
++2010-07-02 Richard Guenther <rguenther@suse.de>
++
++ PR middle-end/44777
++ * tree-cfg.c (gimple_block_ends_with_call_p): Handle empty BBs.
++
++2010-07-01 Jakub Jelinek <jakub@redhat.com>
++
++ PR debug/44694
++ * dwarf2out.c (reg_loc_descriptor): For eliminated arg_pointer_rtx
++ or frame_pointer_rtx use DW_OP_fbreg offset DW_OP_stack_value.
++
++2010-07-01 Jakub Jelinek <jakub@redhat.com>
++
++ Backport from mainline
++ 2010-06-29 Jakub Jelinek <jakub@redhat.com>
++
++ PR tree-optimization/43801
++ * cgraph.c (cgraph_create_virtual_clone): Clear DECL_SECTION_NAME
++ if old_decl was DECL_ONE_ONLY.
++
++ 2010-06-21 Jakub Jelinek <jakub@redhat.com>
++
++ PR target/44575
++ * config/i386/i386.c (ix86_gimplify_va_arg): When copying
++ va_arg from a set of register save slots into a temporary,
++ if the container is bigger than type size, do the copying
++ using smaller mode or using memcpy.
++
++ 2010-05-13 Jakub Jelinek <jakub@redhat.com>
++
++ PR debug/44104
++ * dwarf2out.c (modified_type_die): Don't dereference mod_type_die
++ if it is NULL.
++
++2010-06-30 Jan Hubicka <jh@suse.cz>
++
++ Backport from mainline
++ 2010-06-27 Jan Hubicka <jh@suse.cz>
++
++ PR middle-end/44671
++ PR middle-end/44686
++ * tree.c (build_function_decl_skip_args): Clear DECL_BUILT_IN on
++ signature change.
++ * ipa-split.c (split_function): Always clear DECL_BUILT_IN.
++ * ipa-prop.c (ipa_modify_formal_parameters): Likewise.
++
++ 2010-06-28 Jan Hubicka <jh@suse.cz>
++
++ PR tree-optimization/44357
++ * ipa-inline.c (add_new_edges_to_heap): Do not add edges to uninlinable
++ functions.
++
++2010-06-30 Jakub Jelinek <jakub@redhat.com>
++
++ Backport from mainline
++ 2010-06-30 Jakub Jelinek <jakub@redhat.com>
++
++ PR debug/44694
++ * cselib.h (cselib_preserve_cfa_base_value): Add regno argument.
++ * cselib.c (cfa_base_preserved_regno): New static variable.
++ (cselib_reset_table): Don't reset cfa_base_preserved_regno instead
++ of REGNO (cfa_base_preserved_val->locs->loc).
++ (cselib_preserve_cfa_base_value): Add regno argument, set
++ cfa_base_preserved_regno to it.
++ (cselib_invalidate_regno): Allow removal of registers other than
++ cfa_base_preserved_regno from cfa_base_preserved_val.
++ (cselib_finish): Set cfa_base_preserved_regno to INVALID_REGNUM.
++ * var-tracking.c (adjust_mems): Replace sp or hfp even outside
++ of MEM addresses, if not on LHS.
++ (reverse_op): Don't add reverse ops for cfa_base_rtx.
++ (vt_init_cfa_base): Adjust cselib_preserve_cfa_base_value caller.
++
++ 2010-06-25 Jakub Jelinek <jakub@redhat.com>
++
++ PR middle-end/43866
++ * tree-ssa-loop-unswitch.c (tree_may_unswitch_on): If stmt is always
++ true or always false, return NULL_TREE.
++ (tree_unswitch_single_loop): Optimize conditions even when reaching
++ max-unswitch-level parameter. If num > 0, optimize first all conditions
++ using entry checks, then do still reachable block discovery and consider
++ only conditions in still reachable basic blocks in the loop.
++
++ 2010-05-12 Jakub Jelinek <jakub@redhat.com>
++
++ PR debug/42278
++ * dwarf2out.c (base_type_die): Don't add name attribute here.
++ (modified_type_die): Instead of sizetype use
++ its underlying original type. If a DW_TAG_base_type doesn't
++ have name added, add __unknown__.
++ (dwarf2out_imported_module_or_decl_1): Don't call base_type_die,
++ always call force_type_die instead.
++
++ 2010-05-11 Jakub Jelinek <jakub@redhat.com>
++
++ PR c++/44059
++ * config/elfos.h (ASM_DECLARE_OBJECT_NAME): Use qnu_unique_object
++ even for DECL_ONE_ONLY DECL_ARTIFICIAL !TREE_READONLY decls.
++ * config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Likewise.
++ * dwarf2asm.c (dw2_output_indirect_constant_1): Set TREE_READONLY
++ on DW.ref.* decls.
++
++2010-06-30 Martin Jambor <mjambor@suse.cz>
++
++ PR tree-optimization/43905
++ * tree-sra.c (encountered_recursive_call): Removed with all its uses.
++ (convert_callers): Do not handle recursive calls specially.
++ (create_abstract_origin): Removed.
++ (modify_function): Version the call graph node instead of creating
++ abstract origins and dealing with same_body aliases.
++ (ipa_sra_preliminary_function_checks): Check whether the function
++ is versionable.
++ * Makefile.in (tree-sra.o): Add TREE_INLINE_H to dependencies.
++
++2010-06-30 Martin Jambor <mjambor@suse.cz>
++
++ Backport from mainline
++ 2010-05-29 Jan Hubicka <jh@suse.cz>
++
++ * cgraph.c (clone_function_name): Made public.
++ * cgraph.h (clone_function_name): Declare.
++ * cgraphunit.c (cgraph_function_versioning): Produce new name.
++
++2010-06-29 Martin Jambor <mjambor@suse.cz>
++
++ Backport from mainline
++ 2010-05-17 Martin Jambor <mjambor@suse.cz>
++
++ PR middle-end/44133
++ * tree-sra.c (create_access_replacement): New parameter rename, mark
++ the replaement for renaming only when it is true.
++ (get_access_replacement): Pass true in the rename parameter of
++ create_access_replacement.
++ (get_unrenamed_access_replacement): New function.
++ (replace_uses_with_default_def_ssa_name): New parameter racc, get the
++ replacement declaration from it.
++
++2010-06-29 Martin Jambor <mjambor@suse.cz>
++
++ Backport from mainline
++ 2010-04-13 Martin Jambor <mjambor@suse.cz>
++
++ * tree-sra.c (replace_uses_with_default_def_ssa_name): New function.
++ (sra_modify_assign): Delete stmts loading dead data even if racc has no
++ children. Call replace_uses_with_default_def_ssa_name to handle
++ SSA_NAES on lhs.
++
++2010-06-27 Jan Hubicka <jh@suse.cz>
++
++ Backport inliner heruistic fixes from mainline
++ 2010-05-27 Jan Hubicka <jh@suse.cz>
++
++ * ipa-inline.c (cgraph_estimate_size_after_inlining): Make inline.
++ (update_caller_keys): Return early if there are no callers;
++ only update fibheap when decresing the key.
++ (update_callee_keys): Avoid recursion.
++ (decide_inlining_of_small_functions): When badness does not match;
++ re-insert into fibheap.
++
++ 2010-05-11 Jan Hubicka <jh@suse.cz>
++
++ PR tree-optimize/44063
++ * ipa-inline.c (cgraph_edge_badness): Move always inlines to top of
++ queue.
++
++ 2010-04-13 Jan Hubicka <jh@suse.cz>
++
++ * ipa-inline.c (cgraph_mark_inline_edge): Avoid double accounting
++ of optimized out static functions.
++ (cgraph_edge_badness): Add DUMP parameter and dump reasons for the
++ cost computation. Also sanity check for overflows.
++ (update_caller_keys): Update cgraph_edge_badness call; properly
++ update fibheap and sanity check that it is up to date.
++ (add_new_edges_to_heap): Update cgraph_edge_badness.
++ (cgraph_decide_inlining_of_small_function): Likewise;
++ add sanity checking that badness in heap is up to date;
++ improve dumping of reason; Update badness of calls to the
++ offline copy of function currently inlined; dump badness
++ of functions not inlined because of unit growth limits.
++
++2010-06-27 Richard Guenther <rguenther@suse.de>
++
++ PR tree-optimization/44683
++ * tree-ssa-dom.c (record_edge_info): Record equivalences for the
++ false edge from the inverted condition.
++
++2010-06-27 Eric Botcazou <ebotcazou@adacore.com>
++
++ Backport from mainline
++ 2010-05-18 Vladimir Makarov <vmakarov@redhat.com>
++
++ PR rtl-optimization/43332
++ * haifa-sched.c (setup_insn_max_reg_pressure): Check barrier.
++
++2010-06-27 Richard Guenther <rguenther@suse.de>
++
++ PR middle-end/44684
++ * tree-ssa-alias.c (refs_may_alias_p_1): Allow SSA name refs.
++ (stmt_may_clobber_ref_p_1): Do not bother to call the oracle
++ for register LHS. Or non-store assignments.
++
++2010-06-26 Richard Guenther <rguenther@suse.de>
++
++ PR tree-optimization/44393
++ * tree-loop-distribution.c (generate_loops_for_partition): Fix
++ stmt removal and VOP renaming.
++ (generate_memset_zero): Remove redundant stmt updating.
++ * tree-flow.h (mark_virtual_ops_in_bb): Remove.
++ * tree-cfg.c (mark_virtual_ops_in_bb): Likewise.
++
++2010-06-26 Richard Guenther <rguenther@suse.de>
++
++ PR middle-end/44674
++ * tree-ssa-alias.c (refs_may_alias_p_1): Allow all kind of
++ decls. Handle LABEL_DECLs like FUNCTION_DECLs.
++
++2010-06-25 Alexandre Oliva <aoliva@redhat.com>
++
++ PR debug/44610
++ * simplify-rtx.c (delegitimize_mem_from_attrs): Don't use a base
++ address if the offset is unknown.
++
++2010-06-25 Richard Guenther <rguenther@suse.de>
++
++ Backport from mainline
++ 2010-06-16 Richard Guenther <rguenther@suse.de>
++
++ PR c/44555
++ * c-common.c (c_common_truthvalue_conversion): Remove
++ premature and wrong optimization concering ADDR_EXPRs.
++
++2010-06-24 Steven Bosscher <steven@gcc.gnu.org>
++
++ Backport from mainline:
++ 2010-05-18 Steven Bosscher <steven@gcc.gnu.org>
++
++ * config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add
++ lto-macho as lto_binary_reader.
++ * target.h (struct gcc_target): New hooks lto_start and lto_end.
++ * target-def.h (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Define.
++ * cgraphunit.c (ipa_passes): Wrap LTO assembler output generation
++ in lto_start and lto_end calls.
++ (is_elf_or_coff): Rename to maybe_lto_object_file. Add Mach-O
++ magic numbers.
++ (scan_prog_file): Update is_elf_or_coff call.
++ * doc/tm.text (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Document.
++
++ * collect2.c (main): Fix enum comparison.
++
++ * config/darwin-protos.h (darwin_asm_lto_start, darwin_asm_lto_end):
++ Add prototypes.
++ * darwin9.h (LINK_COMMAND_SPEC): Pass -flto and -fwhopr to the linker.
++ * darwin.h (LINK_COMMAND_SPEC): Likewise. Define TARGET_ASM_LTO_START
++ and TARGET_ASM_LTO_END.
++ * darwin.c: Include obstack.h and lto-streamer.h.
++ (lto_section_names_offset, lto_section_names_obstack,
++ lto_asm_out_file, lto_asm_out_name, saved_asm_out_file): New static
++ global variables.
++ (LTO_SEGMENT_NAME, LTO_NAMES_SECTION): New defines.
++ (darwin_asm_lto_start): New function. Redirect output to asm_out_file
++ to a temporary file.
++ (darwin_asm_lto_end): New function. Restore asm_out_file.
++ (darwin_asm_named_section): For LTO sections, replace the name with
++ the offset of the section name in a string table, and build this
++ table.
++ (darwin_file_start): Initialize global vars for LTO support.
++ (darwin_file_end): If output to asm_out_file was redirected, append it
++ to the proper asm_out_file here. Add the section names section.
++
++ Backport from mainline:
++ 2010-05-18 Steven Bosscher <steven@gcc.gnu.org>
++
++ * darwin.c (darwin_asm_named_section): Do not add assembler comment
++ after .section directive; just print it before the directive
++ instead.
++
++2010-06-22 Eric Botcazou <ebotcazou@adacore.com>
++
++ * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Chain the
++ new statement and adjust VDEF only if necessary. Remove superfluous
++ call to maybe_clean_or_replace_eh_stmt.
++ * gimple.c (gimple_call_copy_skip_args): Use gimple_call_copy_flags to
++ copy the flags.
++ * gimple-iterator.c (gsi_replace): Clear BB of old statement here...
++ * tree-inline.c (copy_bb): ...and not there.
++
++2010-06-22 H.J. Lu <hongjiu.lu@intel.com>
++
++ Backport from mainline
++ 2010-06-22 H.J. Lu <hongjiu.lu@intel.com>
++
++ * config/i386/i386.md (unit): Also check sseishft1.
++
++2010-06-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
++
++ PR target/39690
++ * config/pa/pa.c (override_options): Disable
++ -freorder-blocks-and-partition.
++
++2010-06-21 H.J. Lu <hongjiu.lu@intel.com>
++
++ Backport from mainline
++ 2010-06-21 H.J. Lu <hongjiu.lu@intel.com>
++
++ PR target/44615
++ * config/i386/atom.md (atom_sseishft_2): Also check sseishft1.
++
++ * config/i386/i386.md (type): Add sseishft1
++
++ * config/i386/ppro_insn (ppro_insn): Also check sseishft1.
++ (ppro_insn_load): Likewise.
++ (ppro_insn_store): Likewise.
++ (ppro_insn_both): Likewise.
++
++ * config/i386/sse.md (sse2_lshrv1ti3): Add atom_unit.
++ (*vec_extractv2di_1_rex64_avx): Replace sseishft with sseishft1
++ for type.
++ (*vec_extractv2di_1_avx): Likewise.
++ (*vec_extractv2di_1_rex64): Replace sseishft with sseishft1 for
++ type. Remove atom_unit.
++ (*vec_extractv2di_1_sse2): Likewise.
++
++2010-06-21 Jakub Jelinek <jakub@redhat.com>
++
++ PR bootstrap/44426
++ * sel-sched-dump.h (sel_prepare_string_for_dot_label): Remove
++ prototype.
++ (sel_print_to_dot): Remove macro.
++ (sel_print): Likewise. New prototype.
++ * sel-sched-dump.c (sel_prepare_string_for_dot_label): Make static.
++ (sel_print): New function.
++
++2010-06-21 Uros Bizjak <ubizjak@gmail.com>
++
++ PR target/44546
++ * config/i386/predicates.md (ix86_swapped_fp_comparsion_operator):
++ New predicate.
++ * config/i386/i386.md (*fp_jcc_8<mode>_387 and splitters): Use
++ ix86_swapped_fp_comparsion_operator instead of
++ ix86_fp_comparison_operator.
++
++ (*fp_jcc_1_387): Rename from *fp_jcc_3_387.
++ (*fp_jcc_1r_387): Rename from *fp_jcc_4_387.
++ (*fp_jcc_2_387): Rename from *fp_jcc_5_387.
++ (*fp_jcc_2r_387): Rename from *fp_jcc_6_387.
++ (*fp_jcc_3_387): Rename from *fp_jcc_7_387.
++ (*fp_jcc_4_<mode>_387): Rename from *fp_jcc_8<mode>_387.
++
++2010-06-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
++
++ Backport from mainline
++ 2010-05-29 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
++
++ PR target/44261
++ * config/pa/pa.md (negdf2_slow, negsf2_slow): New patterns.
++ (negdf2): Adjust expander pattern and use negdf2_slow.
++ (negsf2): Likewise.
++
++2010-06-17 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
++
++ PR target/43740
++ * config/pa/pa.c (emit_move_sequence): Don't infer REG_POINTER flag
++ for SET source operand from SET destination operand.
++
++2010-06-16 Martin Jambor <mjambor@suse.cz>
++
++ PR lto/44464
++ * tree-sra.c (replace_removed_params_ssa_names): Call release_ssa_name
++ on the newly dead SSA name.
++
++2010-06-15 Eric Botcazou <ebotcazou@adacore.com>
++
++ Backport from mainline
++ 2010-06-09 Eric Botcazou <ebotcazou@adacore.com>
++
++ PR rtl-optimization/42461
++ * dce.c (deletable_insn_p): Return true for const or pure calls again.
++ * except.c (insn_could_throw_p): Return false if !flag_exceptions.
++
++2010-06-15 Eric Botcazou <ebotcazou@adacore.com>
++
++ Backport from mainline
++ 2010-06-11 Sandra Loosemore <sandra@codesourcery.com>
++
++ * tree-ssa-loop-ivopts.c (get_computation_cost_at): Return again the
++ computed cost.
++
+2010-06-15 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/44536
+ 2010-06-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/44534
-+ * config/i386/sse.md (vec_extract_lo_<mode>): Replace 0x1 with
-+ 0x0.
++ * config/i386/sse.md (vec_extract_lo_<mode>): Replace 0x1 with 0x0.
+ (vec_extract_lo_v16hi): Likewise.
+ (vec_extract_lo_v32qi): Likewise.
+
+ (build_call_expr): New function.
+
+ PR tree-optimization/44508
-+ * tree-ssa-propagate.h (substitute_and_fold): Add DO_DCE
-+ argument.
++ * tree-ssa-propagate.h (substitute_and_fold): Add DO_DCE argument.
+ * tree-ssa-propagate.c (substitute_and_fold): If !DO_DCE,
+ don't eliminate trivially dead stmts.
+ * tree-vrp.c (vrp_finalize): Pass false as last argument
2010-04-14 Release Manager
* GCC 4.5.0 released.
-@@ -100,7 +1186,7 @@
+@@ -100,7 +1583,7 @@
2010-04-02 Steven Bosscher <steven@gcc.gnu.org>
basic-block.h, bb-reorder.c, calls.c, c-common.c, cgraph.h,
collect2.h, config/alpha/alpha.c, config/alpha/alpha.md,
config/alpha/predicates.md, config/arm/arm.md,
-@@ -171,7 +1257,7 @@
+@@ -171,7 +1654,7 @@
2010-04-02 Richard Earnshaw <rearnsha@arm.com>
PR target/43469
gen_tls_load_dot_plus_four.
(arm_note_pic_base): New function.
(arm_cannot_copy_insn_p): Use it.
-@@ -190,12 +1276,12 @@
+@@ -190,12 +1673,12 @@
2010-04-01 Ralf Corsépius <ralf.corsepius@rtems.org>
Index: gcc/testsuite/gcc.c-torture/execute/pr43783.c
===================================================================
---- gcc/testsuite/gcc.c-torture/execute/pr43783.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.c-torture/execute/pr43783.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/execute/pr43783.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/execute/pr43783.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,21 @@
+typedef __attribute__((aligned(16)))
+struct {
+ abort ();
+ return 0;
+}
+Index: gcc/testsuite/gcc.c-torture/execute/pr44683.c
+===================================================================
+--- gcc/testsuite/gcc.c-torture/execute/pr44683.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/execute/pr44683.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,18 @@
++int __attribute__((noinline,noclone))
++copysign_bug (double x)
++{
++ if (x != 0.0 && (x * 0.5 == x))
++ return 1;
++ if (__builtin_copysign(1.0, x) < 0.0)
++ return 2;
++ else
++ return 3;
++}
++int main(void)
++{
++ double x = -0.0;
++ if (copysign_bug (x) != 2)
++ __builtin_abort ();
++ return 0;
++}
++
Index: gcc/testsuite/gcc.c-torture/execute/pr44164.c
===================================================================
---- gcc/testsuite/gcc.c-torture/execute/pr44164.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.c-torture/execute/pr44164.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/execute/pr44164.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/execute/pr44164.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,24 @@
+struct X {
+ struct Y {
+}
Index: gcc/testsuite/gcc.c-torture/execute/20100430-1.c
===================================================================
---- gcc/testsuite/gcc.c-torture/execute/20100430-1.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.c-torture/execute/20100430-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/execute/20100430-1.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/execute/20100430-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,51 @@
+/* This used to generate unaligned accesses at -O2 because of IVOPTS. */
+
+}
Index: gcc/testsuite/gcc.c-torture/execute/pr43987.c
===================================================================
---- gcc/testsuite/gcc.c-torture/execute/pr43987.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.c-torture/execute/pr43987.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/execute/pr43987.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/execute/pr43987.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,20 @@
+char B[256 * sizeof(void *)];
+typedef void *FILE;
+ abort ();
+ return 0;
+}
+Index: gcc/testsuite/gcc.c-torture/execute/pr44555.c
+===================================================================
+--- gcc/testsuite/gcc.c-torture/execute/pr44555.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/execute/pr44555.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,16 @@
++struct a {
++ char b[100];
++};
++int foo(struct a *a)
++{
++ if (&a->b)
++ return 1;
++ return 0;
++}
++extern void abort (void);
++int main()
++{
++ if (foo((struct a *)0) != 0)
++ abort ();
++ return 0;
++}
Index: gcc/testsuite/gcc.c-torture/execute/960321-1.x
===================================================================
---- gcc/testsuite/gcc.c-torture/execute/960321-1.x (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.c-torture/execute/960321-1.x (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/execute/960321-1.x (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/execute/960321-1.x (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,15 @@
+# This test fails to link on 64-bit Solaris 2/x86 due to a Sun as bug.
+if { [istarget "i?86-*-solaris2*"]
+return 0
Index: gcc/testsuite/gcc.c-torture/execute/pr43835.c
===================================================================
---- gcc/testsuite/gcc.c-torture/execute/pr43835.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.c-torture/execute/pr43835.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/execute/pr43835.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/execute/pr43835.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,51 @@
+struct PMC {
+ unsigned flags;
+ foo (&i, &c);
+ return 0;
+}
+Index: gcc/testsuite/gcc.c-torture/execute/pr44575.c
+===================================================================
+--- gcc/testsuite/gcc.c-torture/execute/pr44575.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/execute/pr44575.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,49 @@
++/* PR target/44575 */
++
++#include <stdarg.h>
++
++int fails = 0;
++struct S { float a[3]; };
++struct S a[5];
++
++void
++check (int z, ...)
++{
++ struct S arg, *p;
++ va_list ap;
++ int j = 0, k = 0;
++ int i;
++ va_start (ap, z);
++ for (i = 2; i < 4; ++i)
++ {
++ p = 0;
++ j++;
++ k += 2;
++ switch ((z << 4) | i)
++ {
++ case 0x12:
++ case 0x13:
++ p = &a[2];
++ arg = va_arg (ap, struct S);
++ break;
++ default:
++ ++fails;
++ break;
++ }
++ if (p && p->a[2] != arg.a[2])
++ ++fails;
++ if (fails)
++ break;
++ }
++ va_end (ap);
++}
++
++int
++main ()
++{
++ a[2].a[2] = -49026;
++ check (1, a[2], a[2]);
++ if (fails)
++ abort ();
++ return 0;
++}
Index: gcc/testsuite/gcc.c-torture/execute/pr44202-1.c
===================================================================
---- gcc/testsuite/gcc.c-torture/execute/pr44202-1.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.c-torture/execute/pr44202-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/execute/pr44202-1.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/execute/pr44202-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,30 @@
+extern __attribute__ ((__noreturn__)) void exit(int);
+extern __attribute__ ((__noreturn__)) void abort(void);
+}
Index: gcc/testsuite/gcc.c-torture/compile/pr44038.c
===================================================================
---- gcc/testsuite/gcc.c-torture/compile/pr44038.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.c-torture/compile/pr44038.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/compile/pr44038.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/compile/pr44038.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,13 @@
+struct Ustr {
+ char data[1];
+}
Index: gcc/testsuite/gcc.c-torture/compile/pr42347.c
===================================================================
---- gcc/testsuite/gcc.c-torture/compile/pr42347.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.c-torture/compile/pr42347.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/compile/pr42347.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/compile/pr42347.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,16 @@
+/* PR bootstrap/42347 */
+
+}
Index: gcc/testsuite/gcc.c-torture/compile/limits-declparen.c
===================================================================
---- gcc/testsuite/gcc.c-torture/compile/limits-declparen.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.c-torture/compile/limits-declparen.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/compile/limits-declparen.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.c-torture/compile/limits-declparen.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,4 @@
+/* { dg-xfail-if "" { alpha*-dec-osf5* } { "-g" } { "" } } */
#define PTR1 (* (* (* (* (* (* (* (* (* (*
#define PTR3 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2
Index: gcc/testsuite/gcc.c-torture/compile/pr43636.c
===================================================================
---- gcc/testsuite/gcc.c-torture/compile/pr43636.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.c-torture/compile/pr43636.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/compile/pr43636.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/compile/pr43636.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,10 @@
+/* PR target/43636 */
+
+}
Index: gcc/testsuite/gcc.c-torture/compile/pr43845.c
===================================================================
---- gcc/testsuite/gcc.c-torture/compile/pr43845.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.c-torture/compile/pr43845.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/compile/pr43845.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/compile/pr43845.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,12 @@
+typedef int __attribute__ ((const)) (*x264_pixel_cmp_t)(void);
+
+}
Index: gcc/testsuite/gcc.c-torture/compile/limits-pointer.c
===================================================================
---- gcc/testsuite/gcc.c-torture/compile/limits-pointer.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.c-torture/compile/limits-pointer.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/compile/limits-pointer.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.c-torture/compile/limits-pointer.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,4 @@
+/* { dg-xfail-if "" { alpha*-dec-osf5* } { "-g" } { "" } } */
#define PTR1 * * * * * * * * * *
#define PTR3 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2 PTR2
Index: gcc/testsuite/gcc.c-torture/compile/pr43635.c
===================================================================
---- gcc/testsuite/gcc.c-torture/compile/pr43635.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.c-torture/compile/pr43635.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.c-torture/compile/pr43635.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.c-torture/compile/pr43635.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,7 @@
+extern void d (void);
+
+}
Index: gcc/testsuite/gcc.target/i386/20060512-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/20060512-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/20060512-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/20060512-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/20060512-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-require-effective-target ilp32 } */
#include "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/avx-cmpsd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/avx-cmpsd-1.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/avx-cmpsd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/avx-cmpsd-1.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/avx-cmpsd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,8 @@
+/* { dg-do run } */
+/* { dg-require-effective-target avx } */
+#include "sse2-cmpsd-1.c"
Index: gcc/testsuite/gcc.target/i386/crc32-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/crc32-4.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/crc32-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/crc32-4.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/crc32-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,9 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -mno-sse4.2 -mno-crc32" } */
+}
Index: gcc/testsuite/gcc.target/i386/all_one_m128i.c
===================================================================
---- gcc/testsuite/gcc.target/i386/all_one_m128i.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/all_one_m128i.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/all_one_m128i.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/all_one_m128i.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
typedef int __v4si __attribute__ ((__vector_size__ (16)));
Index: gcc/testsuite/gcc.target/i386/pr43668.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr43668.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/pr43668.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr43668.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/pr43668.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,10 @@
+/* PR target/43668 */
+/* { dg-do run } */
+}
Index: gcc/testsuite/gcc.target/i386/sse2-pminub-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pminub-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pminub-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pminub-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pminub-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/i386.exp
===================================================================
---- gcc/testsuite/gcc.target/i386/i386.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/i386.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/i386.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/i386.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -37,6 +37,29 @@
}
}
return [check_no_compiler_messages ssse3 object {
Index: gcc/testsuite/gcc.target/i386/sse2-pslldq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pslldq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pslldq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pslldq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pslldq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-cvtsi2sd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvtsi2sd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvtsi2sd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvtsi2sd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvtsi2sd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-minsd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-minsd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-minsd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-minsd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-minsd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr40906-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr40906-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr40906-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr40906-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr40906-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run { target *-*-linux* } } */
/* { dg-require-effective-target ilp32 } */
#include "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse-15.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse-15.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse-15.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse-15.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse-15.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse -msse2" } */
tested in i386-sse-[12].c because these builtins require immediate
Index: gcc/testsuite/gcc.target/i386/sse2-cvttsd2si-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvttsd2si-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvttsd2si-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvttsd2si-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvttsd2si-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-require-effective-target lp64 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/sse2-pcmpgtd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pcmpgtd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pcmpgtd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pcmpgtd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pcmpgtd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse-24.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse-24.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/sse-24.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse-24.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/sse-24.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,5 @@
+/* PR target/44338 */
+/* { dg-do compile } */
+#include "sse-23.c"
Index: gcc/testsuite/gcc.target/i386/sse2-init-v2di-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-init-v2di-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-init-v2di-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-init-v2di-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-init-v2di-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-punpcklbw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-punpcklbw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-punpcklbw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-punpcklbw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-punpcklbw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-psrlw-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psrlw-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psrlw-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psrlw-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psrlw-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-shufps-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-shufps-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-shufps-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-shufps-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-shufps-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr23570.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr23570.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr23570.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr23570.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr23570.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
typedef float __m128 __attribute__ ((__vector_size__ (16)));
Index: gcc/testsuite/gcc.target/i386/fpcvt-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/fpcvt-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/fpcvt-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/fpcvt-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/fpcvt-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -march=k8" } */
float a,b;
Index: gcc/testsuite/gcc.target/i386/pr42542-3a.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr42542-3a.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr42542-3a.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr42542-3a.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr42542-3a.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O1 -msse2 -ftree-vectorize" } */
Index: gcc/testsuite/gcc.target/i386/sse2-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4,6 +4,13 @@
static void sse2_test (void);
}
Index: gcc/testsuite/gcc.target/i386/fma4-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/fma4-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/fma4-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/fma4-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/fma4-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4,6 +4,13 @@
static void fma4_test (void);
}
Index: gcc/testsuite/gcc.target/i386/aes-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/aes-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/aes-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/aes-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/aes-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5,6 +5,13 @@
static void aes_test (void);
#endif
Index: gcc/testsuite/gcc.target/i386/pr39445.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr39445.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr39445.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr39445.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr39445.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-Os -msse2" } */
Index: gcc/testsuite/gcc.target/i386/opt-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/opt-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/opt-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/opt-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/opt-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2,6 +2,7 @@
whether we vectorize a simple loop. */
/* { dg-do compile } */
/* { dg-final { scan-assembler "subss" } } */
Index: gcc/testsuite/gcc.target/i386/sse2-pmaxub-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pmaxub-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pmaxub-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pmaxub-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pmaxub-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-maxsd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-maxsd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-maxsd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-maxsd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-maxsd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-pmaddwd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pmaddwd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pmaddwd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pmaddwd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pmaddwd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-punpcklqdq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-punpcklqdq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-punpcklqdq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-punpcklqdq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-punpcklqdq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-movntpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movntpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movntpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movntpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movntpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-set-v16qi-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-set-v16qi-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-set-v16qi-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-set-v16qi-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-set-v16qi-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define TEST sse2_test
Index: gcc/testsuite/gcc.target/i386/avx-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/avx-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/avx-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/avx-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/avx-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4,6 +4,13 @@
static void avx_test (void);
#endif
Index: gcc/testsuite/gcc.target/i386/sse-17.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse-17.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse-17.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse-17.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse-17.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
extern void abort();
Index: gcc/testsuite/gcc.target/i386/vararg-7.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vararg-7.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vararg-7.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vararg-7.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vararg-7.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#include <assert.h>
Index: gcc/testsuite/gcc.target/i386/sse2-shufpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-shufpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-shufpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-shufpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-shufpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-psllq-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psllq-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psllq-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psllq-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psllq-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/sse-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,6 +6,13 @@
static void sse_test (void);
}
Index: gcc/testsuite/gcc.target/i386/sse2-cvtss2sd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvtss2sd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvtss2sd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvtss2sd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvtss2sd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-vec-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-vec-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-vec-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-vec-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-vec-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-psubsw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psubsw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psubsw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psubsw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psubsw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-punpckhwd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-punpckhwd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-punpckhwd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-punpckhwd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-punpckhwd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/ssefp-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/ssefp-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/ssefp-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/ssefp-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/ssefp-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -march=k8 -mfpmath=sse" } */
double x;
Index: gcc/testsuite/gcc.target/i386/sse3-addsubps.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse3-addsubps.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse3-addsubps.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse3-addsubps.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse3-addsubps.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do run } */
+/* { dg-require-effective-target sse3 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/sse3-lddqu.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse3-lddqu.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse3-lddqu.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse3-lddqu.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse3-lddqu.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do run } */
+/* { dg-require-effective-target sse3 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/float128-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/float128-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/float128-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/float128-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/float128-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run { target *-*-linux* } } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/vecinit-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vecinit-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vecinit-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vecinit-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vecinit-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
int a;
Index: gcc/testsuite/gcc.target/i386/pr35767-2d.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr35767-2d.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr35767-2d.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr35767-2d.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr35767-2d.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-psubq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psubq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psubq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psubq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psubq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-psrlq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psrlq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psrlq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psrlq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psrlq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/fpprec-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/fpprec-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/fpprec-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/fpprec-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/fpprec-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -fno-math-errno -fno-trapping-math -msse2 -mfpmath=sse" } */
Index: gcc/testsuite/gcc.target/i386/pr40809.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr40809.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr40809.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr40809.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr40809.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -ftree-vectorize -msse2" } */
Index: gcc/testsuite/gcc.target/i386/pr27971.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr27971.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr27971.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr27971.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr27971.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3,7 +3,13 @@
unsigned array[4];
}
Index: gcc/testsuite/gcc.target/i386/sse2-mulsd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-mulsd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-mulsd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-mulsd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-mulsd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr25993.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr25993.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr25993.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr25993.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr25993.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5,8 +5,12 @@
#ifndef __ASSEMBLER__
extern int func(void);
ret
Index: gcc/testsuite/gcc.target/i386/sse3-addsubpd.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse3-addsubpd.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse3-addsubpd.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse3-addsubpd.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse3-addsubpd.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do run } */
+/* { dg-require-effective-target sse3 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/sse-19.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse-19.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse-19.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse-19.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse-19.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O3 -msse2" } */
#include <emmintrin.h>
Index: gcc/testsuite/gcc.target/i386/sse2-pminsw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pminsw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pminsw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pminsw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pminsw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-vec-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-vec-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-vec-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-vec-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-vec-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse3-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/sse3-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse3-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse3-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse3-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5,6 +5,13 @@
static void sse3_test (void);
}
Index: gcc/testsuite/gcc.target/i386/sse2-psraw-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psraw-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psraw-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psraw-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psraw-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/avx-vextractf128-256-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/avx-vextractf128-256-3.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/avx-vextractf128-256-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/avx-vextractf128-256-3.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/avx-vextractf128-256-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,7 @@
+/* { dg-do run } */
+/* { dg-require-effective-target avx } */
+#include "avx-vextractf128-256-1.c"
Index: gcc/testsuite/gcc.target/i386/sse2-movupd-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movupd-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movupd-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movupd-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movupd-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-psubb-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psubb-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psubb-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psubb-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psubb-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/vecinit-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vecinit-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vecinit-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vecinit-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vecinit-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
short a;
Index: gcc/testsuite/gcc.target/i386/sse2-xorpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-xorpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-xorpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-xorpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-xorpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-pavgb-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pavgb-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pavgb-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pavgb-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pavgb-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/xop-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/xop-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/xop-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/xop-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/xop-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5,6 +5,13 @@
static void xop_test (void);
}
Index: gcc/testsuite/gcc.target/i386/incoming-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/incoming-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/incoming-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/incoming-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/incoming-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR middle-end/37009 */
/* { dg-do compile { target { { ! *-*-darwin* } && ilp32 } } } */
Index: gcc/testsuite/gcc.target/i386/sse2-paddq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-paddq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-paddq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-paddq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-paddq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/mmx-3dnow-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/mmx-3dnow-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/mmx-3dnow-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/mmx-3dnow-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/mmx-3dnow-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5,6 +5,13 @@
static void mmx_3dnow_test (void);
}
Index: gcc/testsuite/gcc.target/i386/pr37843-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr37843-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr37843-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr37843-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr37843-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* Test for stack alignment with sibcall optimization. */
/* { dg-do compile { target { ilp32 && nonpic } } } */
/* { dg-final { scan-assembler "jmp\[\\t \]*foo" } } */
Index: gcc/testsuite/gcc.target/i386/pr35767-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr35767-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr35767-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr35767-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr35767-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/vectorize2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vectorize2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vectorize2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vectorize2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vectorize2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-require-effective-target ilp32 } */
double a[256];
Index: gcc/testsuite/gcc.target/i386/pr28839.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr28839.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr28839.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr28839.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr28839.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -ftree-vectorize -funswitch-loops" } */
void abort (void);
Index: gcc/testsuite/gcc.target/i386/sse2-cvtpd2dq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvtpd2dq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvtpd2dq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvtpd2dq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvtpd2dq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr36222-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr36222-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr36222-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr36222-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr36222-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
typedef int __v4si __attribute__ ((__vector_size__ (16)));
Index: gcc/testsuite/gcc.target/i386/pr37434-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr37434-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr37434-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr37434-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr37434-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
typedef long long __m128i __attribute__ ((__vector_size__ (16)));
Index: gcc/testsuite/gcc.target/i386/sse2-movdqu-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movdqu-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movdqu-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movdqu-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movdqu-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-pmaxsw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pmaxsw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pmaxsw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pmaxsw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pmaxsw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-pcmpgtw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pcmpgtw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pcmpgtw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pcmpgtw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pcmpgtw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/3dnowA-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/3dnowA-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/3dnowA-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/3dnowA-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/3dnowA-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do assemble } */
+/* { dg-require-effective-target 3dnow } */
/* Test that the intrinsics compile without optimization. All of them are
Index: gcc/testsuite/gcc.target/i386/sse2-vec-6.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-vec-6.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-vec-6.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-vec-6.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-vec-6.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/ssetype-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/ssetype-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/ssetype-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/ssetype-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/ssetype-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -march=k8" } */
/* { dg-final { scan-assembler "xorpd" } } */
Index: gcc/testsuite/gcc.target/i386/pr35767-1i.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr35767-1i.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr35767-1i.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr35767-1i.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr35767-1i.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-pshufd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pshufd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pshufd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pshufd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pshufd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/vecinit-6.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vecinit-6.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vecinit-6.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vecinit-6.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vecinit-6.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
int a, b;
Index: gcc/testsuite/gcc.target/i386/pr41019.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr41019.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr41019.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr41019.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr41019.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2 -ftree-vectorize" } */
Index: gcc/testsuite/gcc.target/i386/sse2-paddb-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-paddb-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-paddb-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-paddb-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-paddb-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-movq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/incoming-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/incoming-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/incoming-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/incoming-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/incoming-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR middle-end/37009 */
/* { dg-do compile { target { { ! *-*-darwin* } && ilp32 } } } */
#include <emmintrin.h>
+Index: gcc/testsuite/gcc.target/i386/amd64-abi-3.c
+===================================================================
+--- gcc/testsuite/gcc.target/i386/amd64-abi-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/amd64-abi-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,6 +1,6 @@
+ /* { dg-do compile } */
+ /* { dg-require-effective-target lp64 } */
+-/* { dg-options "-O2 -fomit-frame-pointer -mno-sse" } */
++/* { dg-options "-O2 -fomit-frame-pointer -mno-sse -mtune=k8" } */
+ /* { dg-final { scan-assembler "subq\[\\t \]*\\\$88,\[\\t \]*%rsp" } } */
+ /* { dg-final { scan-assembler-not "subq\[\\t \]*\\\$216,\[\\t \]*%rsp" } } */
+
Index: gcc/testsuite/gcc.target/i386/sse2-cvtsd2si-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvtsd2si-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvtsd2si-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvtsd2si-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvtsd2si-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/math-torture/math-torture.exp
===================================================================
---- gcc/testsuite/gcc.target/i386/math-torture/math-torture.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/math-torture/math-torture.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/math-torture/math-torture.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/math-torture/math-torture.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-# Copyright (C) 2006, 2008 Free Software Foundation, Inc.
+# Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc.
Index: gcc/testsuite/gcc.target/i386/sse2-addpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-addpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-addpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-addpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-addpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-pslld-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pslld-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pslld-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pslld-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pslld-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr35767-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr35767-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr35767-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr35767-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr35767-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-require-effective-target dfp } */
#include "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/vectorize4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vectorize4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vectorize4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vectorize4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vectorize4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-require-effective-target ilp32 } */
Index: gcc/testsuite/gcc.target/i386/sseregparm-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sseregparm-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sseregparm-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sseregparm-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sseregparm-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-msse2 -O2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-cvtpd2ps-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvtpd2ps-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvtpd2ps-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvtpd2ps-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvtpd2ps-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-set-v8hi-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-set-v8hi-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-set-v8hi-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-set-v8hi-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-set-v8hi-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define TEST sse2_test
Index: gcc/testsuite/gcc.target/i386/aes-avx-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/aes-avx-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/aes-avx-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/aes-avx-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/aes-avx-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,6 +6,13 @@
static void aes_avx_test (void);
#endif
Index: gcc/testsuite/gcc.target/i386/pr39315-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr39315-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr39315-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr39315-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr39315-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR middle-end/39315 */
/* { dg-do run } */
typedef float __m128 __attribute__ ((__vector_size__ (16)));
Index: gcc/testsuite/gcc.target/i386/sse2-packssdw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-packssdw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-packssdw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-packssdw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-packssdw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#ifndef CHECK_H
#define CHECK_H "sse2-check.h"
+Index: gcc/testsuite/gcc.target/i386/sse2-vec-2a.c
+===================================================================
+--- gcc/testsuite/gcc.target/i386/sse2-vec-2a.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/sse2-vec-2a.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,5 @@
++/* { dg-do run } */
++/* { dg-options "-O2 -msse2 -mtune=atom" } */
++/* { dg-require-effective-target sse2 } */
++
++#include "sse2-vec-2.c"
Index: gcc/testsuite/gcc.target/i386/pr42549.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr42549.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr42549.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr42549.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr42549.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do run } */
+/* { dg-require-effective-target 3dnow } */
#include "mmx-3dnow-check.h"
Index: gcc/testsuite/gcc.target/i386/20011009-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/20011009-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/20011009-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/20011009-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/20011009-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4,11 +4,17 @@
extern void abort (void);
extern void exit (int);
abort ();
Index: gcc/testsuite/gcc.target/i386/ssetype-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/ssetype-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/ssetype-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/ssetype-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/ssetype-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -march=k8" } */
/* { dg-final { scan-assembler "xorps" } } */
Index: gcc/testsuite/gcc.target/i386/sse2-movapd-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movapd-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movapd-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movapd-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movapd-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-movlpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movlpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movlpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movlpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movlpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-psubd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psubd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psubd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psubd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psubd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-psrld-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psrld-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psrld-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psrld-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psrld-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr36578-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr36578-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr36578-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr36578-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr36578-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* Test for unsafe floating-point conversions. */
/* { dg-do run } */
Index: gcc/testsuite/gcc.target/i386/pr32000-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr32000-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr32000-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr32000-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr32000-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do run } */
/* { dg-require-effective-target dfp } */
Index: gcc/testsuite/gcc.target/i386/sse2-lrint-vec.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-lrint-vec.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-lrint-vec.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-lrint-vec.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-lrint-vec.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -ffast-math -ftree-vectorize -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse4_1-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/sse4_1-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse4_1-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse4_1-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse4_1-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -7,6 +7,13 @@
#define MASK 0x2
}
Index: gcc/testsuite/gcc.target/i386/pr44481.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr44481.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/pr44481.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr44481.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/pr44481.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,14 @@
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+}
Index: gcc/testsuite/gcc.target/i386/sse2-pand-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pand-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pand-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pand-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pand-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-movq-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movq-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movq-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movq-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movq-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-require-effective-target lp64 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/pr39496.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr39496.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr39496.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr39496.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr39496.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR target/39496 */
/* { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && ilp32 } } } */
/* { dg-final { scan-assembler "\[^0-9-\]8\\(%ebp\\),\[^\n\]*fooparam," } } */
Index: gcc/testsuite/gcc.target/i386/pr35767-5.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr35767-5.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr35767-5.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr35767-5.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr35767-5.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* Test that we generate aligned load when memory is aligned. */
/* { dg-do compile } */
Index: gcc/testsuite/gcc.target/i386/vectorize6.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vectorize6.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vectorize6.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vectorize6.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vectorize6.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -ftree-vectorize -mveclibabi=svml -ffast-math" } */
Index: gcc/testsuite/gcc.target/i386/sse2-paddsb-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-paddsb-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-paddsb-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-paddsb-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-paddsb-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sseregparm-5.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sseregparm-5.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sseregparm-5.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sseregparm-5.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sseregparm-5.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-msse2 -O2" } */
Index: gcc/testsuite/gcc.target/i386/pclmul-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/pclmul-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pclmul-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pclmul-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pclmul-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5,6 +5,13 @@
static void pclmul_test (void);
#endif
Index: gcc/testsuite/gcc.target/i386/sse2-unpckhpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-unpckhpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-unpckhpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-unpckhpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-unpckhpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr39315-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr39315-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr39315-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr39315-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr39315-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR middle-end/39315 */
/* { dg-do run } */
typedef float __m128 __attribute__ ((__vector_size__ (16)));
Index: gcc/testsuite/gcc.target/i386/sse-10.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse-10.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse-10.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse-10.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse-10.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2,6 +2,7 @@
/* { dg-do run } */
/* { dg-options "-O1 -msse2 -mfpmath=sse -mno-accumulate-outgoing-args -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer" } */
Index: gcc/testsuite/gcc.target/i386/sse2-cvtps2dq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvtps2dq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvtps2dq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvtps2dq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvtps2dq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr39162.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr39162.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr39162.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr39162.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr39162.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -mno-avx" } */
Index: gcc/testsuite/gcc.target/i386/sse2-pshufhw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pshufhw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pshufhw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pshufhw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pshufhw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-andpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-andpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-andpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-andpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-andpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-ucomisd-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-ucomisd-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-ucomisd-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-ucomisd-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-ucomisd-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-cmpsd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cmpsd-1.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/sse2-cmpsd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cmpsd-1.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/sse2-cmpsd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,58 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -msse2 -std=c99" } */
+}
Index: gcc/testsuite/gcc.target/i386/sse2-set-v8hi-2a.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-set-v8hi-2a.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-set-v8hi-2a.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-set-v8hi-2a.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-set-v8hi-2a.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -mtune=core2 -msse2" } */
#define TEST sse2_test
Index: gcc/testsuite/gcc.target/i386/pr42542-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr42542-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr42542-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr42542-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr42542-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O1 -msse2 -ftree-vectorize" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-paddd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-paddd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-paddd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-paddd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-paddd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-comisd-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-comisd-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-comisd-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-comisd-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-comisd-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/incoming-7.c
===================================================================
---- gcc/testsuite/gcc.target/i386/incoming-7.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/incoming-7.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/incoming-7.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/incoming-7.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR target/40838 */
/* { dg-do compile { target { { ! *-*-darwin* } && ilp32 } } } */
Index: gcc/testsuite/gcc.target/i386/sse2-movmskpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movmskpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movmskpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movmskpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movmskpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr37101.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr37101.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr37101.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr37101.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr37101.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -ftree-vectorize -march=nocona" } */
extern void *malloc (size_t);
Index: gcc/testsuite/gcc.target/i386/sse2-divpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-divpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-divpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-divpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-divpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-set-epi64x-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-set-epi64x-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-set-epi64x-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-set-epi64x-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-set-epi64x-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-init-v4si-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-init-v4si-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-init-v4si-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-init-v4si-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-init-v4si-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/pr39315-check.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr39315-check.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr39315-check.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr39315-check.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr39315-check.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,6 @@
+/* { dg-compile } */
typedef float __m128 __attribute__ ((__vector_size__ (16)));
abort ();
Index: gcc/testsuite/gcc.target/i386/vectorize8.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vectorize8.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vectorize8.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vectorize8.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vectorize8.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -msse2" } */
double b[256];
Index: gcc/testsuite/gcc.target/i386/sseregparm-7.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sseregparm-7.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sseregparm-7.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sseregparm-7.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sseregparm-7.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-msse2 -O2" } */
Index: gcc/testsuite/gcc.target/i386/sse3-movshdup.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse3-movshdup.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse3-movshdup.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse3-movshdup.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse3-movshdup.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do run } */
+/* { dg-require-effective-target sse3 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/quad-sse.c
===================================================================
---- gcc/testsuite/gcc.target/i386/quad-sse.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/quad-sse.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/quad-sse.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/quad-sse.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/pr42881.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr42881.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr42881.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr42881.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr42881.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,8 @@
/* PR target/42881 */
/* { dg-do run } */
sse2_test (void)
Index: gcc/testsuite/gcc.target/i386/sse2-paddusb-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-paddusb-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-paddusb-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-paddusb-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-paddusb-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-movsd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movsd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movsd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movsd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movsd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/vararg-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vararg-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vararg-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vararg-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vararg-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,7 +1,9 @@
/* PR middle-end/36859 */
/* { dg-do run } */
#include <stdarg.h>
Index: gcc/testsuite/gcc.target/i386/sse2-pmulhw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pmulhw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pmulhw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pmulhw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pmulhw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/3dnow-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/3dnow-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/3dnow-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/3dnow-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/3dnow-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do assemble } */
+/* { dg-require-effective-target 3dnow } */
/* Test that the intrinsics compile with optimization. All of them are
Index: gcc/testsuite/gcc.target/i386/vperm-v2di.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vperm-v2di.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vperm-v2di.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vperm-v2di.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vperm-v2di.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-movdqa-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movdqa-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movdqa-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movdqa-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movdqa-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-punpckhdq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-punpckhdq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-punpckhdq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-punpckhdq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-punpckhdq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/xorps.c
===================================================================
---- gcc/testsuite/gcc.target/i386/xorps.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/xorps.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/xorps.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/xorps.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-Os -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-movd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-ucomisd-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-ucomisd-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-ucomisd-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-ucomisd-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-ucomisd-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse4_2-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/sse4_2-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse4_2-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse4_2-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse4_2-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5,6 +5,13 @@
static void sse4_2_test (void);
}
Index: gcc/testsuite/gcc.target/i386/sse2-psrad-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psrad-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psrad-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psrad-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psrad-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-cvttpd2dq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvttpd2dq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvttpd2dq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvttpd2dq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvttpd2dq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-comisd-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-comisd-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-comisd-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-comisd-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-comisd-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr39139.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr39139.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr39139.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr39139.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr39139.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -12,22 +12,24 @@
# define SI_REG asm ("esi")
#endif
struct T e = { .t1 = x, .t2 = u };
Index: gcc/testsuite/gcc.target/i386/sse4a-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/sse4a-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse4a-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse4a-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse4a-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5,6 +5,13 @@
static void sse4a_test (void);
}
Index: gcc/testsuite/gcc.target/i386/sse2-movhpd-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movhpd-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movhpd-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movhpd-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movhpd-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -mfpmath=sse -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/crc32-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/crc32-3.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/crc32-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/crc32-3.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/crc32-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,10 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target ilp32 } */
+}
Index: gcc/testsuite/gcc.target/i386/avx-cmpss-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/avx-cmpss-2.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/avx-cmpss-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/avx-cmpss-2.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/avx-cmpss-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,13 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -mavx" } */
+/* { dg-final { scan-assembler "vcmpeqss" } } */
Index: gcc/testsuite/gcc.target/i386/sse2-packsswb-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-packsswb-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-packsswb-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-packsswb-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-packsswb-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-psllw-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psllw-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psllw-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psllw-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psllw-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse3-hsubps.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse3-hsubps.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse3-hsubps.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse3-hsubps.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse3-hsubps.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do run } */
+/* { dg-require-effective-target sse3 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/sse2-pcmpeqb-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pcmpeqb-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pcmpeqb-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pcmpeqb-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pcmpeqb-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-cvtps2pd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvtps2pd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvtps2pd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvtps2pd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvtps2pd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-punpcklwd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-punpcklwd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-punpcklwd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-punpcklwd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-punpcklwd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/vararg-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vararg-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vararg-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vararg-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vararg-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#include <assert.h>
Index: gcc/testsuite/gcc.target/i386/sse2-cvttsd2si-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvttsd2si-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvttsd2si-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvttsd2si-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvttsd2si-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse3-hsubpd.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse3-hsubpd.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse3-hsubpd.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse3-hsubpd.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse3-hsubpd.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do run } */
+/* { dg-require-effective-target sse3 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/sse2-psubw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psubw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psubw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psubw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psubw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-psrlw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psrlw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psrlw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psrlw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psrlw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr26600.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr26600.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr26600.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr26600.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr26600.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O -ftree-vectorize -msse2" } */
{
Index: gcc/testsuite/gcc.target/i386/sse2-ucomisd-6.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-ucomisd-6.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-ucomisd-6.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-ucomisd-6.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-ucomisd-6.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/fpcvt-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/fpcvt-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/fpcvt-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/fpcvt-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/fpcvt-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -march=k8" } */
main()
Index: gcc/testsuite/gcc.target/i386/sse2-addsd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-addsd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-addsd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-addsd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-addsd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-comisd-6.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-comisd-6.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-comisd-6.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-comisd-6.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-comisd-6.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-pavgw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pavgw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pavgw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pavgw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pavgw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/avx-cmpsd-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/avx-cmpsd-2.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/avx-cmpsd-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/avx-cmpsd-2.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/avx-cmpsd-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,13 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -mavx" } */
+/* { dg-final { scan-assembler "vcmpeqsd" } } */
Index: gcc/testsuite/gcc.target/i386/ssefn-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/ssefn-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/ssefn-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/ssefn-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/ssefn-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3,6 +3,7 @@
/* { dg-do compile } */
/* { dg-final { scan-assembler "movsd" } } */
Index: gcc/testsuite/gcc.target/i386/pr44071.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr44071.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/pr44071.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr44071.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/pr44071.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,103 @@
+/* PR middle-end/44071 */
+/* { dg-do run } */
+}
Index: gcc/testsuite/gcc.target/i386/xorps-sse2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/xorps-sse2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/xorps-sse2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/xorps-sse2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/xorps-sse2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* Test that we generate xorps when the result is used in FP math. */
/* { dg-do compile } */
Index: gcc/testsuite/gcc.target/i386/sse2-unpack-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-unpack-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-unpack-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-unpack-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-unpack-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/opt-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/opt-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/opt-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/opt-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/opt-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2,6 +2,7 @@
whether we vectorize a simple loop. */
/* { dg-do compile } */
/* { dg-final { scan-assembler "subss" } } */
Index: gcc/testsuite/gcc.target/i386/sse2-cvtsi2sd-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvtsi2sd-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvtsi2sd-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvtsi2sd-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvtsi2sd-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-require-effective-target lp64 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/sse2-set-v16qi-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-set-v16qi-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-set-v16qi-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-set-v16qi-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-set-v16qi-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define TEST sse2_test
Index: gcc/testsuite/gcc.target/i386/pr33329.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr33329.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr33329.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr33329.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr33329.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-psllq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psllq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psllq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psllq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psllq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse3-haddps.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse3-haddps.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse3-haddps.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse3-haddps.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse3-haddps.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do run } */
+/* { dg-require-effective-target sse3 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/incoming-12.c
===================================================================
---- gcc/testsuite/gcc.target/i386/incoming-12.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/incoming-12.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/incoming-12.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/incoming-12.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR target/40838 */
/* { dg-do compile { target { { ! *-*-darwin* } && ilp32 } } } */
Index: gcc/testsuite/gcc.target/i386/sse2-vec-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-vec-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-vec-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-vec-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-vec-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/pr27790.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr27790.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr27790.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr27790.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr27790.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O -ftree-vectorize -msse2" } */
{
Index: gcc/testsuite/gcc.target/i386/pr35767-1d.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr35767-1d.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr35767-1d.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr35767-1d.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr35767-1d.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-paddw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-paddw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-paddw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-paddw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-paddw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/ssefn-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/ssefn-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/ssefn-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/ssefn-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/ssefn-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3,6 +3,7 @@
/* { dg-do run } */
Index: gcc/testsuite/gcc.target/i386/sse-vect-types.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse-vect-types.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse-vect-types.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse-vect-types.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse-vect-types.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O0 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/vecinit-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vecinit-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vecinit-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vecinit-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vecinit-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
float a;
Index: gcc/testsuite/gcc.target/i386/sse3-haddpd.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse3-haddpd.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse3-haddpd.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse3-haddpd.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse3-haddpd.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do run } */
+/* { dg-require-effective-target sse3 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/sse2-cvttps2dq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvttps2dq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvttps2dq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvttps2dq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvttps2dq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr32661.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr32661.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr32661.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr32661.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr32661.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
typedef float __v4sf __attribute__ ((__vector_size__ (16)));
Index: gcc/testsuite/gcc.target/i386/sse2-pcmpeqd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pcmpeqd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pcmpeqd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pcmpeqd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pcmpeqd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-set-v16qi-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-set-v16qi-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-set-v16qi-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-set-v16qi-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-set-v16qi-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define TEST sse2_test
Index: gcc/testsuite/gcc.target/i386/sse2-mmx.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-mmx.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-mmx.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-mmx.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-mmx.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse-18.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse-18.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse-18.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse-18.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse-18.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O3 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/pr18614-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr18614-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr18614-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr18614-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr18614-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR rtl-optimization/18614 */
/* { dg-do compile } */
Index: gcc/testsuite/gcc.target/i386/vararg-8.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vararg-8.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vararg-8.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vararg-8.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vararg-8.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#include <assert.h>
Index: gcc/testsuite/gcc.target/i386/sse2-divsd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-divsd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-divsd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-divsd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-divsd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-punpckhqdq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-punpckhqdq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-punpckhqdq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-punpckhqdq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-punpckhqdq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-vec-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-vec-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-vec-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-vec-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-vec-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-psraw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psraw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psraw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psraw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psraw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/ssefp-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/ssefp-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/ssefp-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/ssefp-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/ssefp-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -march=k8 -mfpmath=sse" } */
double x;
Index: gcc/testsuite/gcc.target/i386/sse2-movupd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movupd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movupd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movupd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movupd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr30970.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr30970.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr30970.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr30970.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr30970.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile }
/* { dg-options "-msse2 -O2 -ftree-vectorize" } */
int b[N];
Index: gcc/testsuite/gcc.target/i386/pr43508.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr43508.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/pr43508.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr43508.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/pr43508.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,13 @@
+/* { dg-do compile } */
+/* { dg-options "-g -O -msse3" } */
+}
Index: gcc/testsuite/gcc.target/i386/float128-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/float128-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/float128-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/float128-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/float128-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2,6 +2,7 @@
/* { dg-do run { target *-*-linux* *-*-darwin* } } */
Index: gcc/testsuite/gcc.target/i386/pr43869.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr43869.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/pr43869.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr43869.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/pr43869.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,20 @@
+/* { dg-do run } */
+/* { dg-require-effective-target lp64 } */
+
Index: gcc/testsuite/gcc.target/i386/vecinit-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vecinit-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vecinit-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vecinit-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vecinit-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
char a;
Index: gcc/testsuite/gcc.target/i386/sse2-punpckhbw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-punpckhbw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-punpckhbw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-punpckhbw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-punpckhbw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-psrlq-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psrlq-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psrlq-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psrlq-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psrlq-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-psrldq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psrldq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psrldq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psrldq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psrldq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr37216.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr37216.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr37216.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr37216.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr37216.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do run } */
/* { dg-options "-O3 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-paddsw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-paddsw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-paddsw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-paddsw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-paddsw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr22152.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr22152.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr22152.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr22152.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr22152.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-packuswb-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-packuswb-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-packuswb-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-packuswb-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-packuswb-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr37843-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr37843-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr37843-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr37843-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr37843-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* Test for stack alignment with sibcall optimization. */
/* { dg-do compile { target { ilp32 && nonpic } } } */
/* { dg-final { scan-assembler "jmp\[\\t \]*_?foo" } } */
Index: gcc/testsuite/gcc.target/i386/sse2-pshuflw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pshuflw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pshuflw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pshuflw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pshuflw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-andnpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-andnpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-andnpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-andnpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-andnpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/mmx-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/mmx-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/mmx-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/mmx-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/mmx-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5,6 +5,13 @@
static void mmx_test (void);
}
Index: gcc/testsuite/gcc.target/i386/sse2-movdqu-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movdqu-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movdqu-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movdqu-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movdqu-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr23575.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr23575.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr23575.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr23575.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr23575.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-msse2 -O2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-vec-5.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-vec-5.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-vec-5.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-vec-5.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-vec-5.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/3dnowA-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/3dnowA-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/3dnowA-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/3dnowA-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/3dnowA-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do assemble } */
+/* { dg-require-effective-target 3dnow } */
/* Test that the intrinsics compile with optimization. All of them are
Index: gcc/testsuite/gcc.target/i386/ssetype-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/ssetype-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/ssetype-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/ssetype-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/ssetype-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* This test checks for absolute memory operands. */
/* { dg-final { scan-assembler "andnpd\[^\\n\]*magic" } } */
Index: gcc/testsuite/gcc.target/i386/avx-vextractf128-256-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/avx-vextractf128-256-4.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/avx-vextractf128-256-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/avx-vextractf128-256-4.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/avx-vextractf128-256-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,7 @@
+/* { dg-do run } */
+/* { dg-require-effective-target avx } */
+#include "avx-vextractf128-256-2.c"
Index: gcc/testsuite/gcc.target/i386/sse2-cvtdq2ps-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvtdq2ps-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvtdq2ps-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvtdq2ps-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvtdq2ps-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-sqrtpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-sqrtpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-sqrtpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-sqrtpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-sqrtpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-subpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-subpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-subpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-subpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-subpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/vecinit-5.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vecinit-5.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vecinit-5.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vecinit-5.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vecinit-5.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
float a, b;
Index: gcc/testsuite/gcc.target/i386/sse2-lrintf-vec.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-lrintf-vec.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-lrintf-vec.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-lrintf-vec.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-lrintf-vec.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -ffast-math -ftree-vectorize -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse3-movsldup.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse3-movsldup.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse3-movsldup.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse3-movsldup.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse3-movsldup.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do run } */
+/* { dg-require-effective-target sse3 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/sse2-unpcklpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-unpcklpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-unpcklpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-unpcklpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-unpcklpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/incoming-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/incoming-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/incoming-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/incoming-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/incoming-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR middle-end/37009 */
/* { dg-do compile { target { { ! *-*-darwin* } && ilp32 } } } */
Index: gcc/testsuite/gcc.target/i386/sse2-por-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-por-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-por-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-por-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-por-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-paddusw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-paddusw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-paddusw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-paddusw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-paddusw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-pslld-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pslld-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pslld-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pslld-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pslld-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-pmullw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pmullw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pmullw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pmullw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pmullw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr35767-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr35767-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr35767-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr35767-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr35767-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/vectorize3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vectorize3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vectorize3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vectorize3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vectorize3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-require-effective-target ilp32 } */
float a[256];
Index: gcc/testsuite/gcc.target/i386/sse2-set-v8hi-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-set-v8hi-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-set-v8hi-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-set-v8hi-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-set-v8hi-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define TEST sse2_test
Index: gcc/testsuite/gcc.target/i386/pr39315-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr39315-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr39315-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr39315-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr39315-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR middle-end/39315 */
/* { dg-do compile } */
/* { dg-final { scan-assembler-not "movhps" } } */
Index: gcc/testsuite/gcc.target/i386/pr37434-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr37434-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr37434-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr37434-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr37434-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mtune=core2 -msse2" } */
typedef long long __m128i __attribute__ ((__vector_size__ (16)));
Index: gcc/testsuite/gcc.target/i386/pr35714.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr35714.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr35714.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr35714.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr35714.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-psadbw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psadbw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psadbw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psadbw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psadbw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/ssetype-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/ssetype-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/ssetype-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/ssetype-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/ssetype-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* This test checks for absolute memory operands. */
/* { dg-final { scan-assembler "andnps\[^\\n\]*magic" } } */
Index: gcc/testsuite/gcc.target/i386/sse2-movapd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movapd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movapd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movapd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movapd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-cvtdq2pd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvtdq2pd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvtdq2pd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvtdq2pd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvtdq2pd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-minpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-minpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-minpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-minpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-minpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/unordcmp-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/unordcmp-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/unordcmp-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/unordcmp-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/unordcmp-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
/* { dg-final { scan-assembler "cmpunordsd" } } */
Index: gcc/testsuite/gcc.target/i386/pr36578-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr36578-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr36578-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr36578-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr36578-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* Test for unsafe floating-point conversions. PR 36578. */
/* { dg-do run } */
Index: gcc/testsuite/gcc.target/i386/pr35767-2i.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr35767-2i.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr35767-2i.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr35767-2i.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr35767-2i.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-psubsb-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psubsb-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psubsb-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psubsb-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psubsb-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/ssse3-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/ssse3-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/ssse3-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/ssse3-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/ssse3-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5,6 +5,13 @@
static void ssse3_test (void);
}
Index: gcc/testsuite/gcc.target/i386/pr32961.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr32961.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr32961.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr32961.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr32961.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O0 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* This testcase caused a buffer overflow in simplify_immed_subreg. */
/* { dg-do compile } */
Index: gcc/testsuite/gcc.target/i386/sse2-movq-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movq-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movq-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movq-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movq-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-require-effective-target lp64 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/incoming-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/incoming-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/incoming-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/incoming-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/incoming-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR middle-end/37009 */
/* { dg-do compile { target { { ! *-*-darwin* } && ilp32 } } } */
#include <emmintrin.h>
Index: gcc/testsuite/gcc.target/i386/sse2-cvtsd2si-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvtsd2si-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvtsd2si-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvtsd2si-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvtsd2si-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-require-effective-target lp64 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/sse2-set-epi32-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-set-epi32-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-set-epi32-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-set-epi32-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-set-epi32-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-pcmpeqw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pcmpeqw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pcmpeqw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pcmpeqw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pcmpeqw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr43662.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr43662.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/pr43662.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr43662.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/pr43662.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,24 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target lp64 } */
+}
Index: gcc/testsuite/gcc.target/i386/sse3-movddup.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse3-movddup.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse3-movddup.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse3-movddup.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse3-movddup.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do run } */
+/* { dg-require-effective-target sse3 } */
#ifndef CHECK_H
Index: gcc/testsuite/gcc.target/i386/sse2-pmovmskb-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pmovmskb-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pmovmskb-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pmovmskb-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pmovmskb-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-punpckldq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-punpckldq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-punpckldq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-punpckldq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-punpckldq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sseregparm-4.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sseregparm-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sseregparm-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sseregparm-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sseregparm-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-msse2 -O2" } */
Index: gcc/testsuite/gcc.target/i386/sse-cmpss-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse-cmpss-1.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/sse-cmpss-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse-cmpss-1.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/sse-cmpss-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,59 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -msse -std=c99" } */
+}
Index: gcc/testsuite/gcc.target/i386/pr43671.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr43671.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/pr43671.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr43671.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/pr43671.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,27 @@
+/* { dg-do run } */
+/* { dg-require-effective-target ilp32 } */
+}
Index: gcc/testsuite/gcc.target/i386/pr39315-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr39315-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr39315-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr39315-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr39315-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR middle-end/39315 */
/* { dg-do compile } */
/* { dg-final { scan-assembler-not "movhps" } } */
Index: gcc/testsuite/gcc.target/i386/ssetype-5.c
===================================================================
---- gcc/testsuite/gcc.target/i386/ssetype-5.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/ssetype-5.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/ssetype-5.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/ssetype-5.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* This test checks for absolute memory operands. */
/* { dg-final { scan-assembler "pandn\[^\\n\]*magic" } } */
Index: gcc/testsuite/gcc.target/i386/pclmul-avx-check.h
===================================================================
---- gcc/testsuite/gcc.target/i386/pclmul-avx-check.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pclmul-avx-check.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pclmul-avx-check.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pclmul-avx-check.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,6 +6,13 @@
static void pclmul_avx_test (void);
#endif
Index: gcc/testsuite/gcc.target/i386/sse2-movlpd-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movlpd-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movlpd-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movlpd-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movlpd-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-init-v16qi-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-init-v16qi-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-init-v16qi-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-init-v16qi-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-init-v16qi-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-set-v8hi-1a.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-set-v8hi-1a.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-set-v8hi-1a.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-set-v8hi-1a.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-set-v8hi-1a.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -mtune=core2 -msse2" } */
#define TEST sse2_test
Index: gcc/testsuite/gcc.target/i386/sse2-maxpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-maxpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-maxpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-maxpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-maxpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/vperm-v2df.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vperm-v2df.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vperm-v2df.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vperm-v2df.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vperm-v2df.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-psrld-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psrld-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psrld-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psrld-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psrld-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr32000-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr32000-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr32000-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr32000-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr32000-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do run } */
/* { dg-skip-if "" { ! { ilp32 && dfp } } { "*" } { "" } } */
Index: gcc/testsuite/gcc.target/i386/sse2-ucomisd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-ucomisd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-ucomisd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-ucomisd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-ucomisd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr42542-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr42542-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr42542-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr42542-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr42542-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O1 -msse2 -ftree-vectorize" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-comisd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-comisd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-comisd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-comisd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-comisd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#ifndef CHECK_H
#define CHECK_H "sse2-check.h"
+Index: gcc/testsuite/gcc.target/i386/pr44546.c
+===================================================================
+--- gcc/testsuite/gcc.target/i386/pr44546.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/pr44546.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,22 @@
++/* { dg-do compile } */
++/* { dg-options "-Os -ffast-math -mfpmath=387" } */
++
++typedef __SIZE_TYPE__ size_t;
++typedef struct
++{
++ float *ewgts;
++} vtx_data;
++
++extern void *zmalloc (size_t);
++extern int whatever (vtx_data *);
++
++float *
++compute_apsp_artifical_weights_packed (vtx_data * graph, int n)
++{
++ float *weights;
++
++ weights = (float *) zmalloc (n * sizeof (float));
++ weights[n] =
++ whatever (graph) > graph[n].ewgts[n] ?
++ whatever (graph) : graph[n].ewgts[n];
++}
Index: gcc/testsuite/gcc.target/i386/sse-6.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse-6.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse-6.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse-6.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse-6.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/incoming-6.c
===================================================================
---- gcc/testsuite/gcc.target/i386/incoming-6.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/incoming-6.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/incoming-6.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/incoming-6.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR target/40838 */
/* { dg-do compile { target { { ! *-*-darwin* } && ilp32 } } } */
Index: gcc/testsuite/gcc.target/i386/vperm-v4si-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vperm-v4si-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vperm-v4si-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vperm-v4si-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vperm-v4si-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O -msse2" } */
Index: gcc/testsuite/gcc.target/i386/ordcmp-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/ordcmp-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/ordcmp-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/ordcmp-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/ordcmp-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
/* { dg-final { scan-assembler "cmpordsd" } } */
Index: gcc/testsuite/gcc.target/i386/vectorize7.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vectorize7.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vectorize7.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vectorize7.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vectorize7.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -msse2" } */
float b[256];
Index: gcc/testsuite/gcc.target/i386/sse2-pmulhuw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pmulhuw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pmulhuw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pmulhuw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pmulhuw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sseregparm-6.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sseregparm-6.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sseregparm-6.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sseregparm-6.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sseregparm-6.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-msse2 -O2" } */
Index: gcc/testsuite/gcc.target/i386/push-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/push-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/push-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/push-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/push-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */
/* { dg-options "-w -msse2 -Os" } */
Index: gcc/testsuite/gcc.target/i386/pr26449-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr26449-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr26449-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr26449-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr26449-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -mtune=k8" } */
typedef long long __m128i __attribute__ ((__vector_size__ (16)));
Index: gcc/testsuite/gcc.target/i386/sse2-pmuludq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pmuludq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pmuludq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pmuludq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pmuludq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse-11.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse-11.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse-11.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse-11.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse-11.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR rtl-optimization/21239 */
/* { dg-do run } */
Index: gcc/testsuite/gcc.target/i386/vararg-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vararg-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vararg-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vararg-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vararg-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,7 +1,9 @@
/* PR middle-end/36858 */
/* { dg-do run } */
#include <stdarg.h>
Index: gcc/testsuite/gcc.target/i386/sse2-cvtsd2ss-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-cvtsd2ss-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-cvtsd2ss-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-cvtsd2ss-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-cvtsd2ss-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-mulpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-mulpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-mulpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-mulpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-mulpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-pcmpgtb-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pcmpgtb-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pcmpgtb-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pcmpgtb-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pcmpgtb-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-ucomisd-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-ucomisd-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-ucomisd-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-ucomisd-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-ucomisd-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr32280.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr32280.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr32280.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr32280.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr32280.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/pr42542-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr42542-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr42542-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr42542-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr42542-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O1 -msse2 -ftree-vectorize" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-init-v8hi-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-init-v8hi-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-init-v8hi-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-init-v8hi-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-init-v8hi-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-comisd-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-comisd-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-comisd-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-comisd-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-comisd-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/20060512-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/20060512-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/20060512-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/20060512-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/20060512-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do run } */
/* { dg-require-effective-target ilp32 } */
Index: gcc/testsuite/gcc.target/i386/sse2-movhpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movhpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movhpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movhpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movhpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -mfpmath=sse -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/incoming-8.c
===================================================================
---- gcc/testsuite/gcc.target/i386/incoming-8.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/incoming-8.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/incoming-8.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/incoming-8.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR target/40838 */
/* { dg-do compile { target { { ! *-*-darwin* } && ilp32 } } } */
foo (float f)
Index: gcc/testsuite/gcc.target/i386/avx-cmpss-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/avx-cmpss-1.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/avx-cmpss-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/avx-cmpss-1.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/avx-cmpss-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,8 @@
+/* { dg-do run } */
+/* { dg-require-effective-target avx } */
+#include "sse-cmpss-1.c"
Index: gcc/testsuite/gcc.target/i386/pr36992-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr36992-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr36992-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr36992-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr36992-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile }
/* { dg-options "-O2 -msse2" } */
Index: gcc/testsuite/gcc.target/i386/sse2-psllw-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psllw-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psllw-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psllw-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psllw-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/funcspec-9.c
===================================================================
---- gcc/testsuite/gcc.target/i386/funcspec-9.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/funcspec-9.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/funcspec-9.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/funcspec-9.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* Test whether using target specific options, we can generate FMA4 code. */
/* { dg-do compile } */
Index: gcc/testsuite/gcc.target/i386/sse2-subsd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-subsd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-subsd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-subsd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-subsd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/abi-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/abi-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/abi-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/abi-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/abi-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* Make certain that we pass __m256i in the correct register for AVX. */
/* { dg-do compile } */
__m256i foo (void) { return (__m256i){ 1, 2, 3, 4 }; }
Index: gcc/testsuite/gcc.target/i386/sse2-movntdq-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movntdq-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movntdq-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movntdq-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movntdq-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-pxor-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pxor-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pxor-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pxor-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pxor-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-movsd-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movsd-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movsd-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movsd-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movsd-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-pandn-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-pandn-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-pandn-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-pandn-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-pandn-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-copysign-vec.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-copysign-vec.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-copysign-vec.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-copysign-vec.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-copysign-vec.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -ftree-vectorize -msse2" } */
Index: gcc/testsuite/gcc.target/i386/vararg-3.c
===================================================================
---- gcc/testsuite/gcc.target/i386/vararg-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/vararg-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/vararg-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/vararg-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#include <assert.h>
Index: gcc/testsuite/gcc.target/i386/3dnow-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/3dnow-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/3dnow-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/3dnow-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/3dnow-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-do assemble } */
+/* { dg-require-effective-target 3dnow } */
/* Test that the intrinsics compile without optimization. All of them are
Index: gcc/testsuite/gcc.target/i386/sse2-movdqa-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movdqa-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movdqa-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movdqa-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movdqa-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/reload-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/reload-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/reload-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/reload-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/reload-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-require-effective-target ilp32 } */
Index: gcc/testsuite/gcc.target/i386/sse2-orpd-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-orpd-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-orpd-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-orpd-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-orpd-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-movd-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-movd-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-movd-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-movd-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-movd-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/sse2-ucomisd-5.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-ucomisd-5.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-ucomisd-5.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-ucomisd-5.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-ucomisd-5.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr44223.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr44223.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.target/i386/pr44223.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr44223.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.target/i386/pr44223.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,36 @@
+/* PR debug/44223 */
+/* { dg-do compile } */
+}
Index: gcc/testsuite/gcc.target/i386/fpcvt-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/fpcvt-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/fpcvt-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/fpcvt-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/fpcvt-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -march=k8" } */
main()
Index: gcc/testsuite/gcc.target/i386/sse2-psrad-2.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-psrad-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-psrad-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-psrad-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-psrad-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gcc.target/i386/pr32708-1.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr32708-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr32708-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr32708-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr32708-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
typedef long long __m128i __attribute__ ((__vector_size__ (16)));
Index: gcc/testsuite/gcc.target/i386/pr17692.c
===================================================================
---- gcc/testsuite/gcc.target/i386/pr17692.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/pr17692.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/pr17692.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/pr17692.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O -mfpmath=sse -msse2" } */
hard register, which results in
Index: gcc/testsuite/gcc.target/i386/sse2-comisd-5.c
===================================================================
---- gcc/testsuite/gcc.target/i386/sse2-comisd-5.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.target/i386/sse2-comisd-5.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.target/i386/sse2-comisd-5.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.target/i386/sse2-comisd-5.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -msse2" } */
#define CHECK_H "sse2-check.h"
Index: gcc/testsuite/gnat.dg/pack15.adb
===================================================================
---- gcc/testsuite/gnat.dg/pack15.adb (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gnat.dg/pack15.adb (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gnat.dg/pack15.adb (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gnat.dg/pack15.adb (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,10 @@
+-- { dg-do compile }
+
+end Pack15;
Index: gcc/testsuite/gnat.dg/pack15.ads
===================================================================
---- gcc/testsuite/gnat.dg/pack15.ads (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gnat.dg/pack15.ads (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gnat.dg/pack15.ads (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gnat.dg/pack15.ads (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,22 @@
+package Pack15 is
+
+end Pack15;
Index: gcc/testsuite/gnat.dg/array13.adb
===================================================================
---- gcc/testsuite/gnat.dg/array13.adb (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gnat.dg/array13.adb (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gnat.dg/array13.adb (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gnat.dg/array13.adb (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,14 @@
+-- PR ada/38394
+-- Reporter: Michael Völske <michael.voelske@medien.uni-weimar.de>
+end Array13;
Index: gcc/testsuite/gnat.dg/array13.ads
===================================================================
---- gcc/testsuite/gnat.dg/array13.ads (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gnat.dg/array13.ads (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gnat.dg/array13.ads (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gnat.dg/array13.ads (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,13 @@
+package Array13 is
+
+end Array13;
Index: gcc/testsuite/gnat.dg/rep_clause5_pkg.ads
===================================================================
---- gcc/testsuite/gnat.dg/rep_clause5_pkg.ads (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gnat.dg/rep_clause5_pkg.ads (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gnat.dg/rep_clause5_pkg.ads (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gnat.dg/rep_clause5_pkg.ads (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,383 @@
+package Rep_Clause5_Pkg is
+
+end Rep_Clause5_Pkg;
Index: gcc/testsuite/gnat.dg/rep_clause5.adb
===================================================================
---- gcc/testsuite/gnat.dg/rep_clause5.adb (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gnat.dg/rep_clause5.adb (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gnat.dg/rep_clause5.adb (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gnat.dg/rep_clause5.adb (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,39 @@
+-- { dg-do compile }
+-- { dg-options "-O" }
+end Rep_Clause5;
Index: gcc/testsuite/gnat.dg/rep_clause5.ads
===================================================================
---- gcc/testsuite/gnat.dg/rep_clause5.ads (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gnat.dg/rep_clause5.ads (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gnat.dg/rep_clause5.ads (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gnat.dg/rep_clause5.ads (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,12 @@
+with Rep_Clause5_Pkg; use Rep_Clause5_Pkg;
+
+end Rep_Clause5;
Index: gcc/testsuite/gcc.dg/pr34856.c
===================================================================
---- gcc/testsuite/gcc.dg/pr34856.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/pr34856.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/pr34856.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/pr34856.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-options "-O2 -maltivec" { target { powerpc*-*-linux* && powerpc_altivec_ok } } } */
typedef unsigned __attribute__ ((__mode__ (__pointer__))) uintptr_t;
+Index: gcc/testsuite/gcc.dg/pr42461.c
+===================================================================
+--- gcc/testsuite/gcc.dg/pr42461.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/pr42461.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,14 @@
++/* PR rtl-optimization/42461 */
++/* Reported by Patrick Pelissier <patrick.pelissier@gmail.com> */
++
++/* { dg-do link } */
++/* { dg-options "-O2" } */
++
++extern int link_failure (int) __attribute__ ((pure));
++
++int main (void)
++{
++ if (link_failure (0) < 1)
++ __builtin_unreachable ();
++ return 0;
++}
Index: gcc/testsuite/gcc.dg/Warray-bounds-8.c
===================================================================
---- gcc/testsuite/gcc.dg/Warray-bounds-8.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/Warray-bounds-8.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/Warray-bounds-8.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/Warray-bounds-8.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,20 @@
+/* { dg-do compile } */
+/* { dg-options "-O3 -Wall" } */
+}
Index: gcc/testsuite/gcc.dg/gomp/pr44085.c
===================================================================
---- gcc/testsuite/gcc.dg/gomp/pr44085.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/gomp/pr44085.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/gomp/pr44085.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/gomp/pr44085.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,27 @@
+/* PR middle-end/44085 */
+/* { dg-do compile } */
+}
Index: gcc/testsuite/gcc.dg/c99-tgmath-1.c
===================================================================
---- gcc/testsuite/gcc.dg/c99-tgmath-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/c99-tgmath-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/c99-tgmath-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/c99-tgmath-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3,6 +3,7 @@
/* { dg-do preprocess { target c99_runtime } } */
/* { dg-options "-std=iso9899:1999" } */
#include <tgmath.h>
Index: gcc/testsuite/gcc.dg/pr41340.c
===================================================================
---- gcc/testsuite/gcc.dg/pr41340.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/pr41340.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/pr41340.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/pr41340.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -10,6 +10,8 @@
struct S3 { unsigned s3; struct S2 **s4; };
struct S5 { struct S2 *s5; };
return 0;
Index: gcc/testsuite/gcc.dg/pr32370.c
===================================================================
---- gcc/testsuite/gcc.dg/pr32370.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/pr32370.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/pr32370.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/pr32370.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2,15 +2,19 @@
/* { dg-do compile { target i?86-*-* x86_64-*-* ia64-*-* } } */
/* { dg-options "" { target ia64-*-* } } */
{
Index: gcc/testsuite/gcc.dg/compound-literal-1.c
===================================================================
---- gcc/testsuite/gcc.dg/compound-literal-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/compound-literal-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/compound-literal-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/compound-literal-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2,7 +2,7 @@
/* PR c/43248 */
}
Index: gcc/testsuite/gcc.dg/pr41551.c
===================================================================
---- gcc/testsuite/gcc.dg/pr41551.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/pr41551.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/pr41551.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/pr41551.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3,8 +3,10 @@
/* Make sure we do not ICE. */
}
Index: gcc/testsuite/gcc.dg/pr36584.c
===================================================================
---- gcc/testsuite/gcc.dg/pr36584.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/pr36584.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/pr36584.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/pr36584.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,8 +1,8 @@
/* { dg-do run } */
/* { dg-options "-O2 -lm" } */
#endif
Index: gcc/testsuite/gcc.dg/compat/union-m128-1_main.c
===================================================================
---- gcc/testsuite/gcc.dg/compat/union-m128-1_main.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/compat/union-m128-1_main.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/compat/union-m128-1_main.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/compat/union-m128-1_main.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-skip-if "test SSE2 support" { ! { i?86-*-* x86_64-*-* } } } */
/* { dg-options "-O" } */
Index: gcc/testsuite/gcc.dg/compat/vector-1a_main.c
===================================================================
---- gcc/testsuite/gcc.dg/compat/vector-1a_main.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/compat/vector-1a_main.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/compat/vector-1a_main.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/compat/vector-1a_main.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-skip-if "test SSE2 vector" { ! { i?86-*-* x86_64-*-* } } } */
+/* { dg-require-effective-target sse2 } */
modules, parameter passing, and function return. This test uses
Index: gcc/testsuite/gcc.dg/compat/vector-2a_main.c
===================================================================
---- gcc/testsuite/gcc.dg/compat/vector-2a_main.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/compat/vector-2a_main.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/compat/vector-2a_main.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/compat/vector-2a_main.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
/* { dg-skip-if "test SSE2 support" { ! { i?86-*-* x86_64-*-* } } } */
+/* { dg-require-effective-target sse2 } */
modules, parameter passing, and function return. This test uses
Index: gcc/testsuite/gcc.dg/debug/pr43972.c
===================================================================
---- gcc/testsuite/gcc.dg/debug/pr43972.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/debug/pr43972.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/debug/pr43972.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/debug/pr43972.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,29 @@
+/* PR debug/43972 */
+/* { dg-do compile } */
+}
Index: gcc/testsuite/gcc.dg/pr44012.c
===================================================================
---- gcc/testsuite/gcc.dg/pr44012.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/pr44012.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/pr44012.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/pr44012.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,58 @@
+/* { dg-do compile } */
+/* { dg-options "-O -fgcse" } */
+}
Index: gcc/testsuite/gcc.dg/c99-tgmath-2.c
===================================================================
---- gcc/testsuite/gcc.dg/c99-tgmath-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/c99-tgmath-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/c99-tgmath-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/c99-tgmath-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3,6 +3,7 @@
/* { dg-do compile { target c99_runtime } } */
/* { dg-options "-std=iso9899:1999" } */
/* Test that invoking type-generic sin on a float invokes sinf. */
#include <tgmath.h>
+Index: gcc/testsuite/gcc.dg/pr44393.c
+===================================================================
+--- gcc/testsuite/gcc.dg/pr44393.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/pr44393.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,15 @@
++/* { dg-do compile } */
++/* { dg-options "-Os -ftree-loop-distribution" } */
++
++int i;
++void foo ()
++{
++ int **pp = 0, *p = 0;
++ while (--i)
++ {
++ *p++ = 0;
++ *pp++ = p;
++ }
++ i = *p;
++}
++
Index: gcc/testsuite/gcc.dg/pr37561.c
===================================================================
---- gcc/testsuite/gcc.dg/pr37561.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/pr37561.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/pr37561.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/pr37561.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,7 +1,7 @@
/* PR c++/37561 */
/* { dg-do compile } */
void
Index: gcc/testsuite/gcc.dg/pr44136.c
===================================================================
---- gcc/testsuite/gcc.dg/pr44136.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/pr44136.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/pr44136.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/pr44136.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,27 @@
+/* PR debug/44136 */
+/* { dg-do compile } */
+ float f = ((float *)&c)[0];
+ return d * f;
+}
+Index: gcc/testsuite/gcc.dg/pr43643.c
+===================================================================
+--- gcc/testsuite/gcc.dg/pr43643.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/pr43643.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -3,6 +3,7 @@
+ /* { dg-do run } */
+ /* { dg-require-profiling "-pg" } */
+ /* { dg-options "-O2 -pg" } */
++/* { dg-options "-O2 -pg -static" { target hppa*-*-hpux* } } */
+
+ extern char *strdup (const char *);
+
Index: gcc/testsuite/gcc.dg/lto/20090206-1_0.c
===================================================================
---- gcc/testsuite/gcc.dg/lto/20090206-1_0.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/lto/20090206-1_0.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/lto/20090206-1_0.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/lto/20090206-1_0.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-lto-do link } */
/* { dg-skip-if "" { ! { i?86-*-linux* x86_64-*-linux* } } { "*" } { "" } } */
typedef short v8hi __attribute__((__vector_size__(16)));
Index: gcc/testsuite/gcc.dg/lto/20100423-1_0.c
===================================================================
---- gcc/testsuite/gcc.dg/lto/20100423-1_0.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/lto/20100423-1_0.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/lto/20100423-1_0.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/lto/20100423-1_0.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,11 @@
+/* { dg-lto-do run } */
+/* { dg-lto-options {{-O2 -flto}} } */
+
Index: gcc/testsuite/gcc.dg/lto/20100426_0.c
===================================================================
---- gcc/testsuite/gcc.dg/lto/20100426_0.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/lto/20100426_0.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/lto/20100426_0.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/lto/20100426_0.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,7 @@
+/* { dg-lto-do link } */
+/* { dg-lto-options {{-r -nostdlib -flto -g}} } */
+}
Index: gcc/testsuite/gcc.dg/lto/20100430-1_0.c
===================================================================
---- gcc/testsuite/gcc.dg/lto/20100430-1_0.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/lto/20100430-1_0.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/lto/20100430-1_0.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/lto/20100430-1_0.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,14 @@
+/* { dg-lto-do link } */
+/* { dg-lto-options {{-O2 -fprofile-arcs -flto -r -nostdlib}} } */
+}
Index: gcc/testsuite/gcc.dg/lto/20100518_0.c
===================================================================
---- gcc/testsuite/gcc.dg/lto/20100518_0.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/lto/20100518_0.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/lto/20100518_0.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/lto/20100518_0.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,13 @@
+/* { dg-lto-do link } */
+/* Forgot to steam in/out the number of labels for asm goto. PR44184. */
+}
Index: gcc/testsuite/gcc.dg/lto/20100423-1_1.c
===================================================================
---- gcc/testsuite/gcc.dg/lto/20100423-1_1.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/lto/20100423-1_1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/lto/20100423-1_1.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/lto/20100423-1_1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,7 @@
+typedef struct{int x;} bar;
+bar foo (void)
+
Index: gcc/testsuite/gcc.dg/c99-tgmath-3.c
===================================================================
---- gcc/testsuite/gcc.dg/c99-tgmath-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/c99-tgmath-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/c99-tgmath-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/c99-tgmath-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3,6 +3,7 @@
/* { dg-do compile { target c99_runtime } } */
/* { dg-options "-std=iso9899:1999" } */
#include <tgmath.h>
Index: gcc/testsuite/gcc.dg/torture/ipa-pta-1.c
===================================================================
---- gcc/testsuite/gcc.dg/torture/ipa-pta-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/torture/ipa-pta-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/torture/ipa-pta-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/torture/ipa-pta-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -42,5 +42,5 @@
bar (p);
}
/* { dg-final { cleanup-ipa-dump "pta" } } */
Index: gcc/testsuite/gcc.dg/torture/pr35771-1.c
===================================================================
---- gcc/testsuite/gcc.dg/torture/pr35771-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/torture/pr35771-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/torture/pr35771-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/torture/pr35771-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-msse2" } */
Index: gcc/testsuite/gcc.dg/torture/stackalign/vararg-3.c
===================================================================
---- gcc/testsuite/gcc.dg/torture/stackalign/vararg-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/torture/stackalign/vararg-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/torture/stackalign/vararg-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/torture/stackalign/vararg-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR middle-end/37009 */
/* { dg-do run { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */
#include <emmintrin.h>
Index: gcc/testsuite/gcc.dg/torture/stackalign/push-1.c
===================================================================
---- gcc/testsuite/gcc.dg/torture/stackalign/push-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/torture/stackalign/push-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/torture/stackalign/push-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/torture/stackalign/push-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR middle-end/37010 */
/* { dg-do run { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */
#include "cpuid.h"
Index: gcc/testsuite/gcc.dg/torture/stackalign/alloca-2.c
===================================================================
---- gcc/testsuite/gcc.dg/torture/stackalign/alloca-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/torture/stackalign/alloca-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/torture/stackalign/alloca-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/torture/stackalign/alloca-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR middle-end/37009 */
/* { dg-do run { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */
#include "cpuid.h"
Index: gcc/testsuite/gcc.dg/torture/stackalign/alloca-3.c
===================================================================
---- gcc/testsuite/gcc.dg/torture/stackalign/alloca-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/torture/stackalign/alloca-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/torture/stackalign/alloca-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/torture/stackalign/alloca-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR middle-end/37009 */
/* { dg-do run { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */
#include "cpuid.h"
Index: gcc/testsuite/gcc.dg/torture/pr35771-2.c
===================================================================
---- gcc/testsuite/gcc.dg/torture/pr35771-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/torture/pr35771-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/torture/pr35771-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/torture/pr35771-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-msse2" } */
Index: gcc/testsuite/gcc.dg/torture/pta-escape-1.c
===================================================================
---- gcc/testsuite/gcc.dg/torture/pta-escape-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/torture/pta-escape-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/torture/pta-escape-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/torture/pta-escape-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -30,5 +30,5 @@
return 0;
}
/* { dg-final { cleanup-tree-dump "alias" } } */
Index: gcc/testsuite/gcc.dg/torture/pr16104-1.c
===================================================================
---- gcc/testsuite/gcc.dg/torture/pr16104-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/torture/pr16104-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/torture/pr16104-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/torture/pr16104-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR rtl-optimization/16104 */
/* { dg-do run { target i?86-*-* x86_64-*-* } } */
#include "cpuid.h"
+Index: gcc/testsuite/gcc.dg/torture/pr44806.c
+===================================================================
+--- gcc/testsuite/gcc.dg/torture/pr44806.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/torture/pr44806.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,90 @@
++/* { dg-do run } */
++
++#include <stdint.h>
++
++extern void abort (void);
++
++#define N_DEV_BITS_4 5
++#define N_INO_BITS_4 (32 - N_DEV_BITS_4 - 2 - 1)
++
++#define N_DEV_BITS_8 8
++#define N_INO_BITS_8 (64 - N_DEV_BITS_8 - 2 - 1)
++
++struct dev_ino_4
++{
++ uint32_t mode:2;
++ uint32_t short_ino:N_INO_BITS_4;
++ uint32_t mapped_dev:N_DEV_BITS_4;
++ uint32_t always_set:1;
++};
++
++struct dev_ino_8
++{
++ uint32_t mode:2;
++ uint64_t short_ino:N_INO_BITS_8;
++ uint32_t mapped_dev:N_DEV_BITS_8;
++ uint32_t always_set:1;
++};
++
++struct dev_ino_full
++{
++ uint32_t mode:2;
++ uint32_t dev;
++ uint32_t ino;
++};
++
++enum di_mode
++{
++ DI_MODE_4 = 1,
++ DI_MODE_8 = 2,
++ DI_MODE_FULL = 3
++};
++
++struct di_ent
++{
++ union
++ {
++ struct dev_ino_4 di4;
++ struct dev_ino_8 di8;
++ struct dev_ino_full full;
++ uint32_t u32;
++ uint64_t u64;
++ void *ptr;
++ } u;
++};
++
++static struct di_ent
++decode_ptr (struct di_ent const *v)
++{
++ struct di_ent di;
++ di.u.ptr = (void *) v;
++ return di;
++}
++
++static int
++di_ent_equal (void const *x, void const *y)
++{
++ struct di_ent a = decode_ptr (x);
++ struct di_ent b = decode_ptr (y);
++ if (a.u.di4.mode != b.u.di4.mode)
++ return 0;
++
++ if (a.u.di4.mode == DI_MODE_4)
++ return (a.u.di4.short_ino == b.u.di4.short_ino
++ && a.u.di4.mapped_dev == b.u.di4.mapped_dev);
++
++ if (a.u.di8.mode == DI_MODE_8)
++ return (a.u.di8.short_ino == b.u.di8.short_ino
++ && a.u.di8.mapped_dev == b.u.di8.mapped_dev);
++
++ return (a.u.full.ino == b.u.full.ino
++ && a.u.full.dev == b.u.full.dev);
++}
++
++int
++main ()
++{
++ if (di_ent_equal ((void *) 0x80143c4d, (void *) 0x80173851) != 0)
++ abort ();
++ return 0;
++}
Index: gcc/testsuite/gcc.dg/torture/pr35771-3.c
===================================================================
---- gcc/testsuite/gcc.dg/torture/pr35771-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/torture/pr35771-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/torture/pr35771-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/torture/pr35771-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-msse2" } */
Index: gcc/testsuite/gcc.dg/pr37544.c
===================================================================
---- gcc/testsuite/gcc.dg/pr37544.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/pr37544.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/pr37544.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/pr37544.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* { dg-do run } */
/* { dg-options "-O2" } */
#include "cpuid.h"
Index: gcc/testsuite/gcc.dg/tree-ssa/tailcall-6.c
===================================================================
---- gcc/testsuite/gcc.dg/tree-ssa/tailcall-6.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/tree-ssa/tailcall-6.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/tree-ssa/tailcall-6.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/tree-ssa/tailcall-6.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,33 @@
+/* PR tree-optimization/43904. */
+/* { dg-do run } */
+ expose_bug(&ptr, sizeof(ptr));
+ return 0;
+}
+Index: gcc/testsuite/gcc.dg/tree-ssa/ltrans-8.c
+===================================================================
+--- gcc/testsuite/gcc.dg/tree-ssa/ltrans-8.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/ltrans-8.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,5 +1,6 @@
+ /* { dg-do compile } */
+ /* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
++/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32} } } */
+ double foo(double *a)
+ {
+ int i,j;
Index: gcc/testsuite/gcc.dg/tree-ssa/pr44423.c
===================================================================
---- gcc/testsuite/gcc.dg/tree-ssa/pr44423.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/tree-ssa/pr44423.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/tree-ssa/pr44423.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/tree-ssa/pr44423.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,47 @@
+/* { dg-do compile { target x86_64-*-* } } */
+/* { dg-options "-O2 -fdump-tree-esra-details" } */
+
+/* { dg-final { scan-tree-dump-times "Created a replacement" 0 "esra"} } */
+/* { dg-final { cleanup-tree-dump "esra" } } */
+Index: gcc/testsuite/gcc.dg/tree-ssa/vrp47.c
+===================================================================
+--- gcc/testsuite/gcc.dg/tree-ssa/vrp47.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/vrp47.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -5,6 +5,7 @@
+ this. */
+ /* { dg-do compile { target { ! "mips*-*-* s390*-*-* avr-*-*" } } } */
+ /* { dg-options "-O2 -fdump-tree-vrp -fdump-tree-dom" } */
++/* { dg-options "-O2 -fdump-tree-vrp -fdump-tree-dom -march=i586" { target { i?86-*-* && ilp32 } } } */
+
+ int h(int x, int y)
+ {
+Index: gcc/testsuite/gcc.dg/tree-ssa/sra-9.c
+===================================================================
+--- gcc/testsuite/gcc.dg/tree-ssa/sra-9.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/tree-ssa/sra-9.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,20 @@
++/* { dg-do compile } */
++/* { dg-options "-O1 -fdump-tree-optimized" } */
++
++struct S
++{
++ int a, b, c;
++ int z[20];
++};
++
++int foo (int d)
++{
++ struct S s;
++
++ s.a = d;
++ return s.a + s.b;
++}
++
++/* There should be no reference to s.b. */
++/* { dg-final { scan-tree-dump-times "= s\.b" 0 "optimized"} } */
++/* { dg-final { cleanup-tree-dump "optimized" } } */
Index: gcc/testsuite/gcc.dg/tree-ssa/vrp49.c
===================================================================
---- gcc/testsuite/gcc.dg/tree-ssa/vrp49.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/tree-ssa/vrp49.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/tree-ssa/vrp49.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/tree-ssa/vrp49.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,28 @@
+/* { dg-do link } */
+/* { dg-options "-O2" } */
+}
Index: gcc/testsuite/gcc.dg/tree-ssa/prefetch-6.c
===================================================================
---- gcc/testsuite/gcc.dg/tree-ssa/prefetch-6.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/tree-ssa/prefetch-6.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/tree-ssa/prefetch-6.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/prefetch-6.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
/* { dg-require-effective-target ilp32 } */
#define N 1000
Index: gcc/testsuite/gcc.dg/tree-ssa/pta-escape-1.c
===================================================================
---- gcc/testsuite/gcc.dg/tree-ssa/pta-escape-1.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/tree-ssa/pta-escape-1.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/tree-ssa/pta-escape-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/pta-escape-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -33,5 +33,5 @@
return 0;
}
/* { dg-final { cleanup-tree-dump "alias" } } */
Index: gcc/testsuite/gcc.dg/tree-ssa/prefetch-7.c
===================================================================
---- gcc/testsuite/gcc.dg/tree-ssa/prefetch-7.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/tree-ssa/prefetch-7.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/tree-ssa/prefetch-7.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/prefetch-7.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
/* { dg-require-effective-target ilp32 } */
Index: gcc/testsuite/gcc.dg/tree-ssa/pta-escape-2.c
===================================================================
---- gcc/testsuite/gcc.dg/tree-ssa/pta-escape-2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/tree-ssa/pta-escape-2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/tree-ssa/pta-escape-2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/pta-escape-2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -34,5 +34,5 @@
return 0;
}
/* { dg-final { cleanup-tree-dump "alias" } } */
Index: gcc/testsuite/gcc.dg/tree-ssa/pta-escape-3.c
===================================================================
---- gcc/testsuite/gcc.dg/tree-ssa/pta-escape-3.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/tree-ssa/pta-escape-3.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/tree-ssa/pta-escape-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/pta-escape-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -38,5 +38,5 @@
return 0;
}
/* { dg-final { cleanup-tree-dump "alias" } } */
Index: gcc/testsuite/gcc.dg/tree-ssa/pr44258.c
===================================================================
---- gcc/testsuite/gcc.dg/tree-ssa/pr44258.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/tree-ssa/pr44258.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/tree-ssa/pr44258.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/tree-ssa/pr44258.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,43 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fdump-tree-esra-details" } */
+/* { dg-final { cleanup-tree-dump "esra" } } */
Index: gcc/testsuite/gcc.dg/tree-ssa/pr21086.c
===================================================================
---- gcc/testsuite/gcc.dg/tree-ssa/pr21086.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/tree-ssa/pr21086.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/tree-ssa/pr21086.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/pr21086.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-vrp1" } */
+/* { dg-final { scan-tree-dump "b_. =" "dce1" { target { avr-*-* } } } } */
/* { dg-final { cleanup-tree-dump "vrp1" } } */
+/* { dg-final { cleanup-tree-dump "dce1" } } */
+Index: gcc/testsuite/gcc.dg/tree-ssa/ltrans-1.c
+===================================================================
+--- gcc/testsuite/gcc.dg/tree-ssa/ltrans-1.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/ltrans-1.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,5 +1,6 @@
+ /* { dg-do compile } */
+ /* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
++/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32} } } */
+ /* { dg-require-effective-target size32plus } */
+
+ double u[1782225];
+Index: gcc/testsuite/gcc.dg/tree-ssa/ltrans-3.c
+===================================================================
+--- gcc/testsuite/gcc.dg/tree-ssa/ltrans-3.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/ltrans-3.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,5 +1,6 @@
+ /* { dg-do compile } */
+ /* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
++/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32} } } */
+ /* { dg-require-effective-target size32plus } */
+
+ double u[1782225];
+Index: gcc/testsuite/gcc.dg/tree-ssa/ltrans-4.c
+===================================================================
+--- gcc/testsuite/gcc.dg/tree-ssa/ltrans-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/ltrans-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,5 +1,6 @@
+ /* { dg-do compile } */
+ /* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
++/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32} } } */
+ /* { dg-require-effective-target size32plus } */
+
+ double u[1782225];
+Index: gcc/testsuite/gcc.dg/tree-ssa/ltrans-5.c
+===================================================================
+--- gcc/testsuite/gcc.dg/tree-ssa/ltrans-5.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/ltrans-5.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,5 +1,6 @@
+ /* { dg-do compile { target { size32plus } } } */
+ /* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
++/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32} } } */
+
+ int foo ()
+ {
Index: gcc/testsuite/gcc.dg/tree-ssa/sra-10.c
===================================================================
---- gcc/testsuite/gcc.dg/tree-ssa/sra-10.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/tree-ssa/sra-10.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/tree-ssa/sra-10.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/tree-ssa/sra-10.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,19 @@
+/* { dg-do compile } */
+/* { dg-options "-O1 -fdump-tree-optimized -fdump-tree-esra-details" } */
+
+/* { dg-final { scan-tree-dump-times "disappear" 0 "optimized"} } */
+/* { dg-final { cleanup-tree-dump "optimized" } } */
+Index: gcc/testsuite/gcc.dg/tree-ssa/pr44133.c
+===================================================================
+--- gcc/testsuite/gcc.dg/tree-ssa/pr44133.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/tree-ssa/pr44133.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,11 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -Wall" } */
++
++struct S { int i, j; };
++
++int foo (int l)
++{
++ struct S s;
++ s.j = l - 22; /* { dg-warning ".s\.i. is used uninitialized" } */
++ return s.i + s.j;
++}
Index: gcc/testsuite/gcc.dg/tree-ssa/tailcall-5.c
===================================================================
---- gcc/testsuite/gcc.dg/tree-ssa/tailcall-5.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/tree-ssa/tailcall-5.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/tree-ssa/tailcall-5.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/tree-ssa/tailcall-5.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,12 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fdump-tree-tailc" } */
+
+/* { dg-final { scan-tree-dump-not "tail call" "tailc" } } */
+/* { dg-final { cleanup-tree-dump "tailc" } } */
+Index: gcc/testsuite/gcc.dg/tree-ssa/ltrans-6.c
+===================================================================
+--- gcc/testsuite/gcc.dg/tree-ssa/ltrans-6.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/tree-ssa/ltrans-6.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,5 +1,6 @@
+ /* { dg-do compile } */
+ /* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
++/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32} } } */
+ /* { dg-require-effective-target size32plus } */
+
+
+Index: gcc/testsuite/gcc.dg/pr44674.c
+===================================================================
+--- gcc/testsuite/gcc.dg/pr44674.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/pr44674.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,10 @@
++/* { dg-do compile } */
++/* { dg-options "-O -fprofile-generate" } */
++
++void
++jumpfunc (void *p)
++{
++ void *l = &&jumplabel;
++jumplabel:
++ __builtin_memcpy (p, l, 1);
++}
Index: gcc/testsuite/gcc.dg/pr44028.c
===================================================================
---- gcc/testsuite/gcc.dg/pr44028.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/pr44028.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/pr44028.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/pr44028.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,22 @@
+/* PR debug/44028 */
+/* { dg-do compile } */
+}
Index: gcc/testsuite/gcc.dg/pr44337.c
===================================================================
---- gcc/testsuite/gcc.dg/pr44337.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/pr44337.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/pr44337.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/pr44337.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,10 @@
+/* PR middle-end/44337 */
+/* { dg-do compile } */
+}
Index: gcc/testsuite/gcc.dg/c99-tgmath-4.c
===================================================================
---- gcc/testsuite/gcc.dg/c99-tgmath-4.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/c99-tgmath-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/c99-tgmath-4.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/c99-tgmath-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3,6 +3,7 @@
/* { dg-do compile { target c99_runtime } } */
/* { dg-options "-std=iso9899:1999" } */
#include <tgmath.h>
Index: gcc/testsuite/gcc.dg/vect/costmodel/i386/i386-costmodel-vect.exp
===================================================================
---- gcc/testsuite/gcc.dg/vect/costmodel/i386/i386-costmodel-vect.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/vect/costmodel/i386/i386-costmodel-vect.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/vect/costmodel/i386/i386-costmodel-vect.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/vect/costmodel/i386/i386-costmodel-vect.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-# Copyright (C) 1997, 2004, 2005, 2006, 2007, 2008
+# Copyright (C) 1997, 2004, 2005, 2006, 2007, 2008, 2010
set dg-do-what-default run
Index: gcc/testsuite/gcc.dg/vect/pr44507.c
===================================================================
---- gcc/testsuite/gcc.dg/vect/pr44507.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gcc.dg/vect/pr44507.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/vect/pr44507.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gcc.dg/vect/pr44507.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,55 @@
+/* { dg-require-effective-target vect_int } */
+
+ index < 64;
+ index += (int)sizeof(unsigned int))
+ {
-+ curVal = *((unsigned long *)(&pArray[index]));
++ curVal = *((unsigned int *)(&pArray[index]));
+ orVal = orVal | curVal;
+ andVal = andVal & curVal;
+ }
+
Index: gcc/testsuite/gcc.dg/vect/vect-debug-pr41926.c
===================================================================
---- gcc/testsuite/gcc.dg/vect/vect-debug-pr41926.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/vect/vect-debug-pr41926.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/vect/vect-debug-pr41926.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/vect/vect-debug-pr41926.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
/* PR debug/41926 */
/* { dg-do compile } */
foo (double (*__restrict p)[4], double (*__restrict q)[4],
Index: gcc/testsuite/gcc.dg/vect/vect.exp
===================================================================
---- gcc/testsuite/gcc.dg/vect/vect.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/vect/vect.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/vect/vect.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/vect/vect.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-# Copyright (C) 1997, 2004, 2005, 2006, 2007, 2008
+# Copyright (C) 1997, 2004, 2005, 2006, 2007, 2008, 2010
lappend DEFAULT_VECTCFLAGS "-msse2"
if [check_sse2_hw_available] {
set dg-do-what-default run
+Index: gcc/testsuite/gcc.dg/vect/slp-perm-5.c
+===================================================================
+--- gcc/testsuite/gcc.dg/vect/slp-perm-5.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/vect/slp-perm-5.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -61,8 +61,7 @@
+ input2[i] = i%256;
+ output[i] = 0;
+ output2[i] = 0;
+- if (input[i] > 256)
+- abort ();
++ __asm__ volatile ("");
+ }
+
+ foo (input, output, input2, output2);
+Index: gcc/testsuite/gcc.dg/vect/slp-perm-6.c
+===================================================================
+--- gcc/testsuite/gcc.dg/vect/slp-perm-6.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/vect/slp-perm-6.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -60,8 +60,7 @@
+ input2[i] = i%256;
+ output[i] = 0;
+ output2[i] = 0;
+- if (input[i] > 256)
+- abort ();
++ __asm__ volatile ("");
+ }
+
+ foo (input, output, input2, output2);
Index: gcc/testsuite/gcc.dg/pr36997.c
===================================================================
---- gcc/testsuite/gcc.dg/pr36997.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gcc.dg/pr36997.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gcc.dg/pr36997.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gcc.dg/pr36997.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,9 +1,10 @@
/* { dg-do compile { target x86_64-*-* i?86-*-* } } */
/* { dg-options "-std=c99 -msse2" } */
}
Index: gcc/testsuite/ada/acats/run_acats
===================================================================
---- gcc/testsuite/ada/acats/run_acats (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/ada/acats/run_acats (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/ada/acats/run_acats (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/ada/acats/run_acats (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5,10 +5,25 @@
exit 1
fi
Index: gcc/testsuite/ChangeLog
===================================================================
---- gcc/testsuite/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -1,3 +1,1078 @@
+--- gcc/testsuite/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,3 +1,1284 @@
++2010-07-03 H.J. Lu <hongjiu.lu@intel.com>
++
++ Backport from mainline
++ 2010-07-03 H.J. Lu <hongjiu.lu@intel.com>
++
++ PR c/44806
++ * gcc.dg/torture/pr44806.c: New.
++
++2010-07-02 Iain Sandoe <iains@gcc.gnu.org>
++
++ * objc-obj-c++-shared/Object1.h: Correct Line endings.
++
++2010-07-02 Paolo Carlini <paolo.carlini@oracle.com>
++
++ * g++.dg/template/crash98.C: Remove stray // from dg-error comment.
++
++2010-07-02 Paolo Carlini <paolo.carlini@oracle.com>
++
++ PR c++/44039
++ * g++.dg/template/crash98.C: New.
++
++2010-07-02 Iain Sandoe <iains@gcc.gnu.org>
++
++ * obj-c++.dg/cxx-ivars-3.mm: Make the test require OSX <= 10.4.
++ Use the ABI-0 accessors and fail it for m64.
++
++2010-07-02 Iain Sandoe <iains@gcc.gnu.org>
++
++ * objc-obj-c++-shared/next-abi.h: Remove dependency on system
++ headers. Add clause to reflect that, pre-10.5, ABI is always 0.
++ * objc/execute/forward-1.m: Depend only on __NEXT_RUNTIME__ for
++ the method types to forward:.
++
++2010-07-01 Jakub Jelinek <jakub@redhat.com>
++
++ PR tree-optimization/40421
++ * gfortran.fortran-torture/compile/pr40421.f90: New test.
++
++2010-07-01 Jakub Jelinek <jakub@redhat.com>
++
++ Backport from mainline
++ 2010-06-29 Jakub Jelinek <jakub@redhat.com>
++
++ PR tree-optimization/43801
++ * g++.dg/torture/pr43801.C: New test.
++
++ 2010-06-21 Jakub Jelinek <jakub@redhat.com>
++
++ PR target/44575
++ * gcc.c-torture/execute/pr44575.c: New test.
++
++2010-06-30 Paolo Carlini <paolo.carlini@oracle.com>
++
++ PR c++/44628
++ * g++.dg/template/crash97.C: New.
++
++2010-06-30 Jakub Jelinek <jakub@redhat.com>
++
++ Backport from mainline
++ 2010-06-25 Jakub Jelinek <jakub@redhat.com>
++
++ PR middle-end/43866
++ * gfortran.dg/pr43866.f90: New test.
++
++2010-06-30 Martin Jambor <mjambor@suse.cz>
++
++ PR tree-optimization/43905
++ * g++.dg/torture/pr43905.C: New test.
++
++2010-06-29 Jason Merrill <jason@redhat.com>
++
++ PR c++/44587
++ * g++.dg/template/qualified-id2.C: New.
++ * g++.dg/template/qualified-id3.C: New.
++
++2010-06-29 Paul Thomas <pault@gcc.gnu.org>
++
++ PR fortran/44582
++ * gfortran.dg/aliasing_array_result_1.f90 : New test.
++
++2010-06-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
++
++ * lib/lto.exp (lto_prune_warns): Also accept leading single quote.
++
++2010-06-29 Martin Jambor <mjambor@suse.cz>
++
++ Backport from mainline
++ 2010-05-17 Martin Jambor <mjambor@suse.cz>
++
++ PR middle-end/44133
++ * gcc.dg/tree-ssa/pr44133.c: New test.
++
++2010-06-29 Martin Jambor <mjambor@suse.cz>
++
++ Backport from mainline
++ 2010-04-13 Martin Jambor <mjambor@suse.cz>
++
++ * gcc.dg/tree-ssa/sra-9.c: New test.
++
++2010-06-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
++
++ * gcc.dg/tree-ssa/ltrans-1.c: Add -march=i486 for i?86-*-* && ilp32.
++ * gcc.dg/tree-ssa/ltrans-3.c: Likewise.
++ * gcc.dg/tree-ssa/ltrans-4.c: Likewise.
++ * gcc.dg/tree-ssa/ltrans-5.c: Likewise.
++ * gcc.dg/tree-ssa/ltrans-6.c: Likewise.
++ * gcc.dg/tree-ssa/ltrans-8.c: Likewise.
++ * gcc.dg/tree-ssa/vrp47.c: Add -march=i586 for i?86-*-* && ilp32.
++ * gfortran.dg/ltrans-7.f90: Add -march=i486 for i?86-*-* && ilp32.
++
++2010-06-27 Paul Thomas <pault@gcc.gnu.org>
++
++ PR fortran/43841
++ PR fortran/43843
++ * gfortran.dg/elemental_scalar_args_1.f90 : New test.
++
++2010-06-27 Richard Guenther <rguenther@suse.de>
++
++ PR tree-optimization/44683
++ * gcc.c-torture/execute/pr44683.c: New testcase.
++
++2010-06-26 Richard Guenther <rguenther@suse.de>
++
++ PR tree-optimization/44393
++ * gcc.dg/pr44393.c: New testcase.
++
++2010-06-26 Richard Guenther <rguenther@suse.de>
++
++ PR middle-end/44674
++ * gcc.dg/pr44674.c: New testcase.
++
++2010-06-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
++
++ PR fortran/44448
++ * gfortran.dg/atan2_1.f90: Add -ffloat-store.
++
++2010-06-25 Richard Guenther <rguenther@suse.de>
++
++ Backport from mainline
++ 2010-06-16 Richard Guenther <rguenther@suse.de>
++
++ PR c/44555
++ * gcc.c-torture/execute/pr44555.c: New testcase.
++
++2010-06-22 Jakub Jelinek <jakub@redhat.com>
++
++ PR c++/44627
++ * g++.dg/other/method1.C: New test.
++
++2010-06-22 Tobias Burnus <burnus@net-b.de>
++
++ PR fortran/44556
++ * gfortran.dg/allocate_alloc_opt_11.f90: New.
++
++2010-06-21 H.J. Lu <hongjiu.lu@intel.com>
++
++ Backport from mainline
++ 2010-06-21 H.J. Lu <hongjiu.lu@intel.com>
++
++ PR target/44615
++ * gcc.target/i386/sse2-vec-2a.c: New.
++
++2010-06-21 H.J. Lu <hongjiu.lu@intel.com>
++
++ Backport from mainline
++ 2010-06-21 H.J. Lu <hongjiu.lu@intel.com>
++
++ PR target/44615
++ * gcc.target/i386/amd64-abi-3.c: Add -mtune=k8.
++
++2010-06-20 Uros Bizjak <ubizjak@gmail.com>
++
++ PR target/44546
++ * gcc.target/i386/pr44546.c: New test.
++
++2010-06-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
++
++ * g++.dg/ext/label13.C: Fix typo in last change.
++
++2010-06-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
++
++ PR c++/41090
++ * g++.dg/ext/label13.C: xfail on 32-bit hppa*-*-hpux*.
++
++ Backport from mainline
++ 2010-04-14 Steve Ellcey <sje@cup.hp.com>
++
++ PR testsuite/43739
++ * gcc.dg/pr43643.c: Use static link on hppa*-*-hpux*.
++
++2010-06-16 Mikael Pettersson <mikpe@it.uu.se>
++
++ PR testsuite/44538
++ * gcc.dg/vect/slp-perm-5.c (main): Prevent
++ initialization loop from being vectorized.
++ * gcc.dg/vect/slp-perm-6.c (main): Likewise.
++
++2010-06-16 Alan Modra <amodra@gmail.com>
++
++ PR tree-optimization/44507
++ * gcc.dg/vect/pr44507.c (seeIf256ByteArrayIsConstant): Correct cast.
++
++2010-06-15 Eric Botcazou <ebotcazou@adacore.com>
++
++ * gcc.dg/pr42461.c: New test.
++
+2010-06-15 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/44536
2010-04-14 Release Manager
* GCC 4.5.0 released.
-@@ -44,7 +1119,7 @@
+@@ -44,7 +1325,7 @@
2010-04-06 Dodji Seketeli <dodji@redhat.com>
c-c++-common/dwarf2/redeclaration-1.C
2010-04-06 Jakub Jelinek <jakub@redhat.com>
-@@ -71,7 +1146,7 @@
+@@ -71,7 +1352,7 @@
* gcc.c-torture/execute/pr43629.c: New testcase.
2010-04-01 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/43605
* gfortran.dg/ftell_3.f90: Enhance test case by reading more.
-@@ -100,7 +1175,7 @@
+@@ -100,7 +1381,7 @@
PR tree-optimization/43141
* gcc.dg/guality/pr43141.c: New test.
2010-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* g++.dg/cpp/_Pragma1.C: Skip on alpha*-dec-osf*.
-@@ -413,13 +1488,13 @@
+@@ -413,13 +1694,13 @@
* objc/execute/class_self-2.m: Include <stdlib.h>.
* objc/execute/forward-1.x: Do not XFAIL for 32bit powerpc-darwin.
* objc.dg/desig-init-1.m: Use shared wrapper headers (Object1.h,
* objc.dg/encode-2.m: Ditto.
* objc.dg/category-1.m: Ditto.
* objc.dg/encode-3.m: Ditto.
-@@ -439,10 +1514,10 @@
+@@ -439,10 +1720,10 @@
* objc.dg/call-super-1.m: Ditto.
* objc.dg/type-size-2.m: Ditto.
* objc.dg/method-10.m: Ditto.
* objc.dg/comp-types-8.m: Ditto.
Index: gcc/testsuite/g++.old-deja/g++.oliva/dwarf2.C
===================================================================
---- gcc/testsuite/g++.old-deja/g++.oliva/dwarf2.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.old-deja/g++.oliva/dwarf2.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.old-deja/g++.oliva/dwarf2.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.old-deja/g++.oliva/dwarf2.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,4 @@
// { dg-do assemble }
-// { dg-xfail-if "" { i386-pc-solaris* } { "*" } { "" } }
Index: gcc/testsuite/g++.old-deja/g++.oliva/dwarf3.C
===================================================================
---- gcc/testsuite/g++.old-deja/g++.oliva/dwarf3.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.old-deja/g++.oliva/dwarf3.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.old-deja/g++.oliva/dwarf3.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.old-deja/g++.oliva/dwarf3.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,4 @@
// { dg-do assemble }
-// { dg-xfail-if "" { i386-pc-solaris* } { "*" } { "" } }
Index: gcc/testsuite/g++.old-deja/g++.other/init19.C
===================================================================
---- gcc/testsuite/g++.old-deja/g++.other/init19.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.old-deja/g++.other/init19.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.old-deja/g++.other/init19.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.old-deja/g++.other/init19.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-// { dg-do run { xfail { ! cxa_atexit } } }
+// { dg-do run { xfail { { ! cxa_atexit } && { ! *-*-solaris2* } } } }
#include <stdlib.h>
#define assert(x) do { if (! (x)) abort(); } while (0)
+Index: gcc/testsuite/gfortran.fortran-torture/compile/pr40421.f90
+===================================================================
+--- gcc/testsuite/gfortran.fortran-torture/compile/pr40421.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.fortran-torture/compile/pr40421.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,15 @@
++subroutine pr40421 (j, q, r)
++ double precision :: q(1,1), r(1,1,3)
++ save
++ integer :: i, j, m, n
++ double precision :: s, t, u
++ do i=1,2
++ do m=1,j
++ do n=1,1
++ s=q(n,m)*r(n,m,1)
++ t=q(n,m)*r(n,m,2)
++ u=q(n,m)*r(n,m,3)
++ end do
++ end do
++ end do
++end
+Index: gcc/testsuite/objc-obj-c++-shared/next-abi.h
+===================================================================
+--- gcc/testsuite/objc-obj-c++-shared/next-abi.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/objc-obj-c++-shared/next-abi.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -19,7 +19,7 @@
+ #undef NEXT_OBJC_USE_NEW_INTERFACE
+
+ #ifdef __NEXT_RUNTIME__
+-# if (MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 || __OBJC2__)
++# if (__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1050 || __OBJC2__)
+ /* We have to use an updated interface for 32bit NeXT to avoid
+ * 'deprecated' warnings.
+ * For 64bit NeXT the ABI is different (and the interfaces 'deprecated'
+@@ -36,6 +36,9 @@
+ */
+ # define NEXT_OBJC_ABI_VERSION 0
+ # endif
++# else
++ /* All before 10.5 is ABI 0 */
++# define NEXT_OBJC_ABI_VERSION 0
+ # endif
+ #endif
+
+Index: gcc/testsuite/g++.dg/other/method1.C
+===================================================================
+--- gcc/testsuite/g++.dg/other/method1.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/other/method1.C (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,20 @@
++// PR c++/44627
++// { dg-do compile }
++
++struct A
++{
++ A *foo ();
++};
++
++template <class T>
++void
++bar ()
++{
++ A::foo ().anything; // { dg-error "request for member" }
++}
++
++void
++baz ()
++{
++ bar <int> ();
++}
Index: gcc/testsuite/g++.dg/other/i386-4.C
===================================================================
---- gcc/testsuite/g++.dg/other/i386-4.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/other/i386-4.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/other/i386-4.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/other/i386-4.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-O1 -msse2" } */
Index: gcc/testsuite/g++.dg/other/pr39496.C
===================================================================
---- gcc/testsuite/g++.dg/other/pr39496.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/other/pr39496.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/other/pr39496.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/other/pr39496.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
// PR target/39496
// { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && ilp32 } } }
// { dg-final { scan-assembler "\[^0-9-\]8\\(%ebp\\),\[^\n\]*fooparam," } }
Index: gcc/testsuite/g++.dg/other/crash-12.C
===================================================================
---- gcc/testsuite/g++.dg/other/crash-12.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/other/crash-12.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/other/crash-12.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/other/crash-12.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,25 @@
+// Origin: PR c++/43953
+
+
Index: gcc/testsuite/g++.dg/other/pr40446.C
===================================================================
---- gcc/testsuite/g++.dg/other/pr40446.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/other/pr40446.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/other/pr40446.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/other/pr40446.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
// PR middle-end/40446
// { dg-do run { target i?86-*-* x86_64-*-* } }
#include "cpuid.h"
Index: gcc/testsuite/g++.dg/other/i386-1.C
===================================================================
---- gcc/testsuite/g++.dg/other/i386-1.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/other/i386-1.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/other/i386-1.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/other/i386-1.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do run { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-msse2" } */
Index: gcc/testsuite/g++.dg/other/pr34435.C
===================================================================
---- gcc/testsuite/g++.dg/other/pr34435.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/other/pr34435.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/other/pr34435.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/other/pr34435.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-msse2 -Wno-abi" } */
Index: gcc/testsuite/g++.dg/tree-ssa/pr13146.C
===================================================================
---- gcc/testsuite/g++.dg/tree-ssa/pr13146.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/tree-ssa/pr13146.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/tree-ssa/pr13146.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/tree-ssa/pr13146.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -30,7 +30,10 @@
{
public:
extern void link_error ();
Index: gcc/testsuite/g++.dg/debug/pr44182.C
===================================================================
---- gcc/testsuite/g++.dg/debug/pr44182.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/debug/pr44182.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/debug/pr44182.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/debug/pr44182.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,26 @@
+// PR tree-optimization/44182
+// { dg-do compile }
+}
Index: gcc/testsuite/g++.dg/debug/pr44178.C
===================================================================
---- gcc/testsuite/g++.dg/debug/pr44178.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/debug/pr44178.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/debug/pr44178.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/debug/pr44178.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,39 @@
+// PR debug/44178
+// { dg-do compile }
+}
Index: gcc/testsuite/g++.dg/lto/20100423-1_0.C
===================================================================
---- gcc/testsuite/g++.dg/lto/20100423-1_0.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/lto/20100423-1_0.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/lto/20100423-1_0.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/lto/20100423-1_0.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,38 @@
+// { dg-lto-do assemble }
+// { dg-lto-options {{-g -flto}} }
+
Index: gcc/testsuite/g++.dg/lto/20100423-2_0.C
===================================================================
---- gcc/testsuite/g++.dg/lto/20100423-2_0.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/lto/20100423-2_0.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/lto/20100423-2_0.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/lto/20100423-2_0.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,14 @@
+// { dg-lto-do assemble }
+// { dg-lto-options {{-flto -g}} }
+
Index: gcc/testsuite/g++.dg/lto/20100423-3_0.C
===================================================================
---- gcc/testsuite/g++.dg/lto/20100423-3_0.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/lto/20100423-3_0.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/lto/20100423-3_0.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/lto/20100423-3_0.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,14 @@
+// { dg-lto-do assemble }
+// { dg-lto-options {{-flto -g}} }
+
Index: gcc/testsuite/g++.dg/lto/20100519-1_0.C
===================================================================
---- gcc/testsuite/g++.dg/lto/20100519-1_0.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/lto/20100519-1_0.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/lto/20100519-1_0.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/lto/20100519-1_0.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,23 @@
+// { dg-lto-do link }
+
+}
Index: gcc/testsuite/g++.dg/ext/vla9.C
===================================================================
---- gcc/testsuite/g++.dg/ext/vla9.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/ext/vla9.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/ext/vla9.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/ext/vla9.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,38 @@
+// PR c++/43555
+// { dg-options "" }
+}
Index: gcc/testsuite/g++.dg/ext/attrib35.C
===================================================================
---- gcc/testsuite/g++.dg/ext/attrib35.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/ext/attrib35.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/ext/attrib35.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/ext/attrib35.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
// { dg-do compile { target i?86-*-* x86_64-*-* } }
// { dg-options "-O3 -msse2" }
typedef double AlignedDoubleType __attribute__((aligned(16)));
Index: gcc/testsuite/g++.dg/ext/label13.C
===================================================================
---- gcc/testsuite/g++.dg/ext/label13.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/ext/label13.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/ext/label13.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/ext/label13.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -8,7 +8,7 @@
C();
};
-C::C() // { dg-bogus "can never be copied" "" { xfail *-apple-darwin* alpha*-ded-osf* } }
-+C::C() // { dg-bogus "can never be copied" "" { xfail *-apple-darwin* alpha*-dec-osf* } }
++C::C() // { dg-bogus "can never be copied" "" { xfail { { *-apple-darwin* alpha*-dec-osf* } || { hppa*-*-hpux* && { ! hppa*64*-*-* } } } } }
{
static void *labelref = &&label;
goto *labelref;
Index: gcc/testsuite/g++.dg/ext/attrib39.C
===================================================================
---- gcc/testsuite/g++.dg/ext/attrib39.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/ext/attrib39.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/ext/attrib39.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/ext/attrib39.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,9 @@
+// PR debug/43370
+// { dg-options "-g" }
+}
Index: gcc/testsuite/g++.dg/ext/asmgoto1.C
===================================================================
---- gcc/testsuite/g++.dg/ext/asmgoto1.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/ext/asmgoto1.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/ext/asmgoto1.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/ext/asmgoto1.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,32 @@
+// PR middle-end/44102
+// { dg-do compile }
+}
Index: gcc/testsuite/g++.dg/vect/vect.exp
===================================================================
---- gcc/testsuite/g++.dg/vect/vect.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/vect/vect.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/vect/vect.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/vect/vect.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-# Copyright (C) 2004, 2007, 2008 Free Software Foundation, Inc.
+# Copyright (C) 2004, 2007, 2008, 2010 Free Software Foundation, Inc.
set dg-do-what-default run
Index: gcc/testsuite/g++.dg/vect/pr43771.cc
===================================================================
---- gcc/testsuite/g++.dg/vect/pr43771.cc (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/vect/pr43771.cc (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/vect/pr43771.cc (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/vect/pr43771.cc (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,14 @@
+/* { dg-do compile } */
+
+/* { dg-final { cleanup-tree-dump "vect" } } */
Index: gcc/testsuite/g++.dg/opt/empty1.C
===================================================================
---- gcc/testsuite/g++.dg/opt/empty1.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/opt/empty1.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/opt/empty1.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/opt/empty1.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,11 @@
+// PR c++/43787
+// Test that we don't try to copy *x.
+}
Index: gcc/testsuite/g++.dg/opt/pr40496.C
===================================================================
---- gcc/testsuite/g++.dg/opt/pr40496.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/opt/pr40496.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/opt/pr40496.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/opt/pr40496.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
// { dg-do compile }
// { dg-options "-O2 -fprefetch-loop-arrays -msse2" { target i?86-*-* x86_64-*-* } }
{
Index: gcc/testsuite/g++.dg/cdce3.C
===================================================================
---- gcc/testsuite/g++.dg/cdce3.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/cdce3.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/cdce3.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/cdce3.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,13 +1,13 @@
/* { dg-do run } */
/* { dg-require-effective-target c99_runtime } */
#include <math.h>
Index: gcc/testsuite/g++.dg/warn/miss-format-1.C
===================================================================
---- gcc/testsuite/g++.dg/warn/miss-format-1.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/warn/miss-format-1.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/warn/miss-format-1.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/warn/miss-format-1.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -23,7 +23,7 @@
{
va_list ap;
Index: gcc/testsuite/g++.dg/warn/Warray-bounds-5.C
===================================================================
---- gcc/testsuite/g++.dg/warn/Warray-bounds-5.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/warn/Warray-bounds-5.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/warn/Warray-bounds-5.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/warn/Warray-bounds-5.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,24 @@
+// { dg-do compile }
+// { dg-options "-O2 -Warray-bounds" }
+ }
+}
+
+
+Zmiany atrybutów dla: gcc/testsuite/g++.dg/warn/Wconversion-null-2.C
+___________________________________________________________________
+Usunięte: svn:mergeinfo
+
Index: gcc/testsuite/g++.dg/tc1/dr147.C
===================================================================
---- gcc/testsuite/g++.dg/tc1/dr147.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/tc1/dr147.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/tc1/dr147.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/tc1/dr147.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -54,3 +54,13 @@
{
D(): C::C() { }
+int E::*p = &E::E;
Index: gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv4.C
===================================================================
---- gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv4.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv4.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv4.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/cpp0x/lambda/lambda-conv4.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,13 @@
+// PR c++/43641
+// { dg-options "-std=c++0x" }
+}
Index: gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this2.C
===================================================================
---- gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this2.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this2.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this2.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/cpp0x/lambda/lambda-this2.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,16 @@
+// PR c++/43856
+// Test for implicit 'this' capture via rewriting.
+};
Index: gcc/testsuite/g++.dg/cpp0x/lambda/lambda-uneval.C
===================================================================
---- gcc/testsuite/g++.dg/cpp0x/lambda/lambda-uneval.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/cpp0x/lambda/lambda-uneval.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/cpp0x/lambda/lambda-uneval.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/cpp0x/lambda/lambda-uneval.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,7 @@
+// 5.1.2/2: A lambda-expression shall not appear in an unevaluated operand.
+// { dg-options "-std=c++0x" }
+
Index: gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce2.C
===================================================================
---- gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce2.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce2.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce2.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/cpp0x/lambda/lambda-deduce2.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,7 @@
+// PR c++/43875
+// { dg-options "-std=c++0x" }
+}
Index: gcc/testsuite/g++.dg/cpp0x/enum3.C
===================================================================
---- gcc/testsuite/g++.dg/cpp0x/enum3.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/cpp0x/enum3.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/cpp0x/enum3.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/cpp0x/enum3.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -14,4 +14,14 @@
E e = E::elem;
if (!f (e == E::elem))
}
Index: gcc/testsuite/g++.dg/cpp0x/variadic101.C
===================================================================
---- gcc/testsuite/g++.dg/cpp0x/variadic101.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/cpp0x/variadic101.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/cpp0x/variadic101.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/cpp0x/variadic101.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,23 @@
+// PR c++/43382
+// { dg-options "-std=c++0x" }
+}
Index: gcc/testsuite/g++.dg/cpp0x/initlist34.C
===================================================================
---- gcc/testsuite/g++.dg/cpp0x/initlist34.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/cpp0x/initlist34.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/cpp0x/initlist34.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/cpp0x/initlist34.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,14 @@
+// PR c++/44157
+// { dg-options "-std=c++0x" }
+}
Index: gcc/testsuite/g++.dg/cpp0x/decltype23.C
===================================================================
---- gcc/testsuite/g++.dg/cpp0x/decltype23.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/cpp0x/decltype23.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/cpp0x/decltype23.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/cpp0x/decltype23.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,12 @@
+// PR c++/44366
+// While printing the operand of decltype We were trying to print f as the
+}
Index: gcc/testsuite/g++.dg/cpp0x/rv-trivial-bug.C
===================================================================
---- gcc/testsuite/g++.dg/cpp0x/rv-trivial-bug.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/cpp0x/rv-trivial-bug.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/cpp0x/rv-trivial-bug.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/cpp0x/rv-trivial-bug.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -19,7 +19,8 @@
base2 b2(b);
assert(move_construct == 0);
b = static_cast<base2&&>(b2);
Index: gcc/testsuite/g++.dg/cpp0x/initlist35.C
===================================================================
---- gcc/testsuite/g++.dg/cpp0x/initlist35.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/cpp0x/initlist35.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/cpp0x/initlist35.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/cpp0x/initlist35.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,24 @@
+// PR c++/41510
+// { dg-options "-std=c++0x" }
+template void g<int>();
Index: gcc/testsuite/g++.dg/cpp0x/initlist36.C
===================================================================
---- gcc/testsuite/g++.dg/cpp0x/initlist36.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/cpp0x/initlist36.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/cpp0x/initlist36.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/cpp0x/initlist36.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,21 @@
+// PR c++/44358
+// { dg-options "-std=c++0x" }
+}
Index: gcc/testsuite/g++.dg/abi/mangle42.C
===================================================================
---- gcc/testsuite/g++.dg/abi/mangle42.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/abi/mangle42.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/abi/mangle42.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/abi/mangle42.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
// Origin: PR c++/43375
// { dg-do compile { target i?86-*-* x86_64-*-* } }
typedef int __v4si __attribute__ ((__vector_size__ (16)));
Index: gcc/testsuite/g++.dg/eh/terminate1.C
===================================================================
---- gcc/testsuite/g++.dg/eh/terminate1.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/eh/terminate1.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/eh/terminate1.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/eh/terminate1.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,29 @@
+// PR c++/44127
+
+}
Index: gcc/testsuite/g++.dg/init/brace6.C
===================================================================
---- gcc/testsuite/g++.dg/init/brace6.C (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/g++.dg/init/brace6.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/init/brace6.C (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/g++.dg/init/brace6.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,7 +6,7 @@
};
}
Index: gcc/testsuite/g++.dg/torture/pr43880.C
===================================================================
---- gcc/testsuite/g++.dg/torture/pr43880.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/torture/pr43880.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/torture/pr43880.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/torture/pr43880.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,16 @@
+// { dg-do compile }
+
+
Index: gcc/testsuite/g++.dg/torture/pr43611.C
===================================================================
---- gcc/testsuite/g++.dg/torture/pr43611.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/torture/pr43611.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/torture/pr43611.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/torture/pr43611.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,22 @@
+// { dg-do compile }
+// { dg-options "-fkeep-inline-functions" }
+B < int > b;
Index: gcc/testsuite/g++.dg/torture/pr44069.C
===================================================================
---- gcc/testsuite/g++.dg/torture/pr44069.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/torture/pr44069.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/torture/pr44069.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/torture/pr44069.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,25 @@
+/* { dg-do run } */
+
+ return 0;
+}
+
+Index: gcc/testsuite/g++.dg/torture/pr43801.C
+===================================================================
+--- gcc/testsuite/g++.dg/torture/pr43801.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/torture/pr43801.C (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,22 @@
++// PR tree-optimization/43801
++// { dg-do compile }
++// { dg-options "-fipa-cp -fipa-cp-clone" }
++
++struct A
++{
++ virtual void f (int);
++};
++struct B : virtual A
++{
++ virtual void f (int i) { if (i) A::f(0); }
++};
++struct C : virtual B
++{
++ virtual void f (int) { B::f(0); }
++};
++
++void
++foo ()
++{
++ C ();
++}
+Index: gcc/testsuite/g++.dg/torture/pr43905.C
+===================================================================
+--- gcc/testsuite/g++.dg/torture/pr43905.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/torture/pr43905.C (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,13 @@
++extern void sf ( __const char *);
++struct Matrix{
++ int operator[](int n){
++ sf ( __PRETTY_FUNCTION__);
++ }
++ int operator[](int n)const{
++ sf ( __PRETTY_FUNCTION__);
++ }
++};
++void calcmy(Matrix const &b, Matrix &c, int k){
++ b[k];
++ c[k];
++}
Index: gcc/testsuite/g++.dg/ipa/pr43812.C
===================================================================
---- gcc/testsuite/g++.dg/ipa/pr43812.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/ipa/pr43812.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/ipa/pr43812.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/ipa/pr43812.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,38 @@
+/* { dg-do compile } */
+/* { dg-options "-O -fwhole-program -fipa-cp" } */
+BBox LocalSurface::bbox () const { }
Index: gcc/testsuite/g++.dg/template/typedef33.C
===================================================================
---- gcc/testsuite/g++.dg/template/typedef33.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/template/typedef33.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/template/typedef33.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/template/typedef33.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,21 @@
+// Origin PR c++/43800
+// { dg-do compile }
+
Index: gcc/testsuite/g++.dg/template/ptrmem21.C
===================================================================
---- gcc/testsuite/g++.dg/template/ptrmem21.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/template/ptrmem21.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/template/ptrmem21.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/template/ptrmem21.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,37 @@
+// PR c++/43868
+// { dg-options "-g" }
+{
+ register_foo( (int (Bar::*) () const) 0);
+}
+Index: gcc/testsuite/g++.dg/template/qualified-id2.C
+===================================================================
+--- gcc/testsuite/g++.dg/template/qualified-id2.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/template/qualified-id2.C (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,27 @@
++// PR c++/44587
++// { dg-do run }
++
++template <const char *N> struct A { static const char *p; };
++template <const char *N> const char *A<N>::p = N;
++template <class T> struct B { static const char c[1]; typedef A<B<T>::c> C; };
++template <class T> const char B<T>::c[1] = "";
++template <class T> struct D { static const char c[1]; typedef A<c> C; };
++template <class T> const char D<T>::c[1] = "";
++
++template <int& I> struct E { static int *ip; };
++template <int& I> int* E<I>::ip = &I;
++template <class T> struct F { static int i; typedef E<F<T>::i> C; };
++template <class T> int F<T>::i;
++template <class T> struct G { static int i; typedef E<i> C; };
++template <class T> int G<T>::i;
++
++#define AS(X) if (!(X)) return 1;
++int main()
++{
++ AS(B<int>::C::p == B<int>::c);
++ AS(B<float>::C::p == B<float>::c);
++ AS(B<float>::C::p != B<int>::c);
++ AS(D<int>::C::p == D<int>::c);
++ AS(D<float>::C::p == D<float>::c);
++ AS(D<float>::C::p != D<int>::c);
++}
+Index: gcc/testsuite/g++.dg/template/qualified-id3.C
+===================================================================
+--- gcc/testsuite/g++.dg/template/qualified-id3.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/template/qualified-id3.C (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,14 @@
++// PR c++/44587
++
++template <const int N> struct A { };
++template <class T> struct B {
++ static const int c;
++ typedef A<B<T>::c> C; // { dg-error "non-constant" }
++};
++template <class T> const int B<T>::c = sizeof (T);
++
++template <const int N> struct D { };
++template <class T> struct E {
++ static const int c = sizeof (T);
++ typedef D<E<T>::c> F; // OK
++};
Index: gcc/testsuite/g++.dg/template/crash96.C
===================================================================
---- gcc/testsuite/g++.dg/template/crash96.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/template/crash96.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/template/crash96.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/template/crash96.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,6 @@
+// PR c++/40406
+
+{
+ template<int> template<int> void A::foo() {} // { dg-error "extra qualification" }
+};
+Index: gcc/testsuite/g++.dg/template/crash97.C
+===================================================================
+--- gcc/testsuite/g++.dg/template/crash97.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/template/crash97.C (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,24 @@
++// PR c++/44628
++
++template <typename T>
++class Temp
++{
++ int Val;
++ public:
++ operator T&(void) { return Val; }
++
++ virtual T& operator=(T a ) // { dg-error "overriding" }
++ {
++ Val = a;
++ return Val;
++ }
++};
++
++class Int : public Temp<int>
++{
++ public:
++ Int& operator=(int a) // { dg-error "conflicting return type" }
++ {
++ return (*this);
++ }
++};
Index: gcc/testsuite/g++.dg/template/error-recovery2.C
===================================================================
---- gcc/testsuite/g++.dg/template/error-recovery2.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/template/error-recovery2.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/template/error-recovery2.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/template/error-recovery2.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,7 @@
+// PR c++/43621
+
+ template <typename>
+ A<T> A<T>::f(); // { dg-error "extra qualification" }
+};
+Index: gcc/testsuite/g++.dg/template/crash98.C
+===================================================================
+--- gcc/testsuite/g++.dg/template/crash98.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/template/crash98.C (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,12 @@
++// PR c++/44039
++
++struct locale { };
++
++template<class charT>
++ void
++ foo()
++ { locale::locale(); } // { dg-error "cannot call|function-style" }
++
++void
++bar()
++{ foo<char>(); }
Index: gcc/testsuite/g++.dg/template/typedef32.C
===================================================================
---- gcc/testsuite/g++.dg/template/typedef32.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/template/typedef32.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/template/typedef32.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/template/typedef32.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,46 @@
+// Origin: PR c++/43704
+// { dg-do compile }
+
Index: gcc/testsuite/g++.dg/template/fntype1.C
===================================================================
---- gcc/testsuite/g++.dg/template/fntype1.C (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/g++.dg/template/fntype1.C (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/g++.dg/template/fntype1.C (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/g++.dg/template/fntype1.C (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,26 @@
+bool f(int i) { return i != 5; }
+
+}
Index: gcc/testsuite/lib/lto.exp
===================================================================
---- gcc/testsuite/lib/lto.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/lib/lto.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/lib/lto.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/lib/lto.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-# Copyright (C) 2009 Free Software Foundation, Inc.
+# Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+
+ # Sun ld warns about common symbols with differing sizes. Unlike GNU ld
+ # --warn-common (off by default), they cannot be disabled.
-+ regsub -all "(^|\n)ld: warning: symbol `\[^\n\]*' has differing sizes:" $text "" text
++ regsub -all "(^|\n)ld: warning: symbol \[`'\]\[^\n\]*' has differing sizes:" $text "" text
+ regsub -all "(^|\n)\[ \t\]*\[\(\]file \[^\n\]* value=\[^\n\]*; file \[^\n\]* value=\[^\n\]*\[)\];" $text "" text
+ regsub -all "(^|\n)\[ \t\]*\[^\n\]* definition taken" $text "" text
+
unresolved "$testcase $testname execute $optstr"
Index: gcc/testsuite/lib/dg-pch.exp
===================================================================
---- gcc/testsuite/lib/dg-pch.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/lib/dg-pch.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/lib/dg-pch.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/lib/dg-pch.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -16,7 +16,7 @@
load_lib copy-file.exp
\ No newline at end of file
Index: gcc/testsuite/lib/target-supports-dg.exp
===================================================================
---- gcc/testsuite/lib/target-supports-dg.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/lib/target-supports-dg.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/lib/target-supports-dg.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/lib/target-supports-dg.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-# Copyright (C) 1997, 1999, 2000, 2003, 2004, 2005, 2007, 2008, 2009
+# Copyright (C) 1997, 1999, 2000, 2003, 2004, 2005, 2007, 2008, 2009, 2010
set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
Index: gcc/testsuite/lib/fortran-torture.exp
===================================================================
---- gcc/testsuite/lib/fortran-torture.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/lib/fortran-torture.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/lib/fortran-torture.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/lib/fortran-torture.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-# Copyright (C) 2003, 2006, 2007, 2008 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2006, 2007, 2008, 2010 Free Software Foundation, Inc.
set test_tree_vectorize 1
Index: gcc/testsuite/lib/objc-torture.exp
===================================================================
---- gcc/testsuite/lib/objc-torture.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/lib/objc-torture.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/lib/objc-torture.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/lib/objc-torture.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -46,28 +46,55 @@
lappend options $args
}
Index: gcc/testsuite/lib/target-supports.exp
===================================================================
---- gcc/testsuite/lib/target-supports.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/lib/target-supports.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/lib/target-supports.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/lib/target-supports.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3133,6 +3133,18 @@
} "-O2 -mavx" ]
}
Index: gcc/testsuite/objc.dg/stubify-2.m
===================================================================
---- gcc/testsuite/objc.dg/stubify-2.m (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/objc.dg/stubify-2.m (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/objc.dg/stubify-2.m (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/objc.dg/stubify-2.m (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,9 +1,10 @@
-/* All calls must be properly stubified. */
+/* All calls must be properly stubified, m32 only. */
int x = 41 ;
Index: gcc/testsuite/objc.dg/stret-2.m
===================================================================
---- gcc/testsuite/objc.dg/stret-2.m (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/objc.dg/stret-2.m (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/objc.dg/stret-2.m (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/objc.dg/stret-2.m (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4,12 +4,14 @@
/* Contributed by Ziemowit Laski <zlaski@apple.com>. */
/* { dg-do compile { target *-*-darwin* } } */
float a, b, c, d, e, f;
Index: gcc/testsuite/objc.dg/objc-gc-4.m
===================================================================
---- gcc/testsuite/objc.dg/objc-gc-4.m (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/objc.dg/objc-gc-4.m (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/objc.dg/objc-gc-4.m (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/objc.dg/objc-gc-4.m (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2,8 +2,9 @@
(where component references get rewritten). */
/* Contributed by Ziemowit Laski <zlaski@apple.com> */
Index: gcc/testsuite/objc.dg/encode-10.m
===================================================================
---- gcc/testsuite/objc.dg/encode-10.m (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/objc.dg/encode-10.m (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/objc.dg/encode-10.m (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/objc.dg/encode-10.m (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,19 @@
+/* { dg-do compile } */
+
+/* { dg-final { scan-assembler "{?=fd{Vec=ddi}i}" } } */
Index: gcc/testsuite/objc.dg/pch/pch.exp
===================================================================
---- gcc/testsuite/objc.dg/pch/pch.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/objc.dg/pch/pch.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/objc.dg/pch/pch.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/objc.dg/pch/pch.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -26,19 +26,34 @@
dg-init
set dg-do-what-default "$old_dg_do_what_default"
Index: gcc/testsuite/objc.dg/next-runtime-1.m
===================================================================
---- gcc/testsuite/objc.dg/next-runtime-1.m (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/objc.dg/next-runtime-1.m (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/objc.dg/next-runtime-1.m (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/objc.dg/next-runtime-1.m (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -15,4 +15,5 @@
- (void)boo { }
@end
+/* { dg-final { scan-assembler "L_OBJC_MODULES:\n\[ \t\]*\.quad\t6\n" { target { *-*-darwin* && { lp64 } } } } } */
Index: gcc/testsuite/objc.dg/const-str-9.m
===================================================================
---- gcc/testsuite/objc.dg/const-str-9.m (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/objc.dg/const-str-9.m (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/objc.dg/const-str-9.m (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/objc.dg/const-str-9.m (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -18,7 +18,7 @@
Class _NSConstantStringClassReference;
#endif
/* { dg-final { scan-assembler ".long\t__NSConstantStringClassReference\n\t.long\t.*\n\t.long\t5\n\t.data" { target { *-*-darwin* && { ! lp64 } } } } } */
Index: gcc/testsuite/objc.dg/encode-11.m
===================================================================
---- gcc/testsuite/objc.dg/encode-11.m (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/objc.dg/encode-11.m (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/objc.dg/encode-11.m (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/objc.dg/encode-11.m (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,43 @@
+/* { dg-do run } */
+
+}
Index: gcc/testsuite/objc.dg/symtab-1.m
===================================================================
---- gcc/testsuite/objc.dg/symtab-1.m (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/objc.dg/symtab-1.m (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/objc.dg/symtab-1.m (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/objc.dg/symtab-1.m (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -22,4 +22,6 @@
-(void)checkValues { }
@end
+/* { dg-final { scan-assembler "L_OBJC_SYMBOLS.*:\n\t.quad\t0\n\t.long\t0\n\t.space 4\n\t.word\t2\n\t.word\t0\n\t.space 4\n\t.quad\tL_OBJC_CLASS_Derived.*\n\t.quad\tL_OBJC_CLASS_Base.*\n" { target { *-*-darwin* && { lp64 } } } } } */
Index: gcc/testsuite/objc.dg/stubify-1.m
===================================================================
---- gcc/testsuite/objc.dg/stubify-1.m (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/objc.dg/stubify-1.m (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/objc.dg/stubify-1.m (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/objc.dg/stubify-1.m (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3,7 +3,8 @@
/* { dg-do compile { target *-*-darwin* } } */
int x = 41 ;
Index: gcc/testsuite/obj-c++.dg/comp-types-10.mm
===================================================================
---- gcc/testsuite/obj-c++.dg/comp-types-10.mm (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/obj-c++.dg/comp-types-10.mm (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/obj-c++.dg/comp-types-10.mm (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/obj-c++.dg/comp-types-10.mm (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,5 @@
/* Yet another mysterious gimplifier crasher. */
/* { dg-do compile } */
Index: gcc/testsuite/obj-c++.dg/stubify-1.mm
===================================================================
---- gcc/testsuite/obj-c++.dg/stubify-1.mm (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/obj-c++.dg/stubify-1.mm (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/obj-c++.dg/stubify-1.mm (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/obj-c++.dg/stubify-1.mm (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,8 +1,10 @@
/* All calls must be properly stubified. Complain about any "call
_objc_msgSend<end-of-line>" without the $stub suffix. */
int x = 41 ;
Index: gcc/testsuite/obj-c++.dg/try-catch-9.mm
===================================================================
---- gcc/testsuite/obj-c++.dg/try-catch-9.mm (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/obj-c++.dg/try-catch-9.mm (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/obj-c++.dg/try-catch-9.mm (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/obj-c++.dg/try-catch-9.mm (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3,8 +3,8 @@
/* Developed by Ziemowit Laski <zlaski@apple.com>. */
/* { dg-prune-output ".*internal compiler error.*" } */
/* { dg-options "-fobjc-exceptions -O2" } */
+Index: gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm
+===================================================================
+--- gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,13 +1,12 @@
+ // Check if ObjC classes with non-POD C++ ivars are specially marked in the metadata.
+
+ // { dg-do run { target *-*-darwin* } }
+-// { dg-skip-if "" { *-*-* } { "-fgnu-runtime" } { "" } }
+-// { dg-options "-fobjc-call-cxx-cdtors" }
+-// { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } }
++// { dg-skip-if "" { *-*-* } { "-fgnu-runtime" } { "" } }
++// { dg-options "-fobjc-call-cxx-cdtors -mmacosx-version-min=10.4" }
++// This test has no equivalent or meaning for m64/ABI V2
++// { dg-xfail-run-if "No Test Avail" { *-*-darwin* && lp64 } { "-fnext-runtime" } { "" } }
+
+-#include "../objc-obj-c++-shared/Object1.h"
+-#include "../objc-obj-c++-shared/next-mapping.h"
+-
++#include <objc/objc-runtime.h>
+ #include <stdlib.h>
+ #define CHECK_IF(expr) if(!(expr)) abort()
+
+@@ -39,18 +38,17 @@
+
+ int main (void)
+ {
++#ifndef __LP64__
+ Class cls;
+
+- cls = objc_get_class("Foo");
+-#if NEXT_OBJC_USE_NEW_INTERFACE
+- CHECK_IF(class_isMetaClass(cls) & CLS_HAS_CXX_STRUCTORS);
+- cls = objc_getClass("Bar");
+- CHECK_IF(!(class_isMetaClass(cls) & CLS_HAS_CXX_STRUCTORS));
+-#else
++ cls = objc_getClass("Foo");
+ CHECK_IF(cls->info & CLS_HAS_CXX_STRUCTORS);
+ cls = objc_getClass("Bar");
+ CHECK_IF(!(cls->info & CLS_HAS_CXX_STRUCTORS));
++
++#else
++ /* No test needed or available. */
++ abort ();
+ #endif
+ return 0;
+ }
+-#include "../objc-obj-c++-shared/Object1-implementation.h"
Index: gcc/testsuite/obj-c++.dg/encode-2.mm
===================================================================
---- gcc/testsuite/obj-c++.dg/encode-2.mm (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/obj-c++.dg/encode-2.mm (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/obj-c++.dg/encode-2.mm (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/obj-c++.dg/encode-2.mm (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,9 +6,21 @@
int z;
};
+/* { dg-final { scan-assembler "{?={Vec<double>=ddi}{Vec<float>=ffi}fd{Vec<char>=cci}i}" { xfail "*-*-*" } } } PR44518 */
Index: gcc/testsuite/obj-c++.dg/stubify-2.mm
===================================================================
---- gcc/testsuite/obj-c++.dg/stubify-2.mm (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/obj-c++.dg/stubify-2.mm (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/obj-c++.dg/stubify-2.mm (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/obj-c++.dg/stubify-2.mm (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2,7 +2,9 @@
/* Testcase extracted from TextEdit:Document.m. */
+/* { dg-final { scan-rtl-dump-not "symbol_ref.*\"objc_msgSend\"" "jump" } } */
Index: gcc/testsuite/obj-c++.dg/try-catch-2.mm
===================================================================
---- gcc/testsuite/obj-c++.dg/try-catch-2.mm (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/obj-c++.dg/try-catch-2.mm (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/obj-c++.dg/try-catch-2.mm (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/obj-c++.dg/try-catch-2.mm (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3,8 +3,8 @@
/* Developed by Ziemowit Laski <zlaski@apple.com>. */
#include "../objc-obj-c++-shared/Object1.h"
Index: gcc/testsuite/obj-c++.dg/objc-gc-3.mm
===================================================================
---- gcc/testsuite/obj-c++.dg/objc-gc-3.mm (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/obj-c++.dg/objc-gc-3.mm (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/obj-c++.dg/objc-gc-3.mm (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/obj-c++.dg/objc-gc-3.mm (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2,8 +2,9 @@
(where component references get rewritten). */
/* Contributed by Ziemowit Laski <zlaski@apple.com> */
Index: gcc/testsuite/obj-c++.dg/encode-8.mm
===================================================================
---- gcc/testsuite/obj-c++.dg/encode-8.mm (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/obj-c++.dg/encode-8.mm (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/obj-c++.dg/encode-8.mm (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/obj-c++.dg/encode-8.mm (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2,8 +2,8 @@
'BOOL *' (which should be encoded as '^c') and 'char *' (which
should be encoded as '*'). */
#include <stdlib.h>
Index: gcc/testsuite/obj-c++.dg/encode-3.mm
===================================================================
---- gcc/testsuite/obj-c++.dg/encode-3.mm (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/obj-c++.dg/encode-3.mm (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/obj-c++.dg/encode-3.mm (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/obj-c++.dg/encode-3.mm (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,18 +1,30 @@
-/* { dg-do run { xfail { "*-*-*" } } } PR32052 */
+/* { dg-do run } */
}
Index: gcc/testsuite/obj-c++.dg/cxx-ivars-2.mm
===================================================================
---- gcc/testsuite/obj-c++.dg/cxx-ivars-2.mm (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/obj-c++.dg/cxx-ivars-2.mm (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/obj-c++.dg/cxx-ivars-2.mm (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/obj-c++.dg/cxx-ivars-2.mm (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,8 +1,9 @@
// Check if the '- .cxx_construct' and '-.cxx_destruct' methods get called
// and if they perform their desired function.
#include "../objc-obj-c++-shared/Object1.h"
Index: gcc/testsuite/gfortran.dg/spec_expr_6.f90
===================================================================
---- gcc/testsuite/gfortran.dg/spec_expr_6.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/spec_expr_6.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/spec_expr_6.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/spec_expr_6.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,52 @@
+! { dg-do compile }
+!
+! { dg-final { cleanup-modules "m m2" } }
Index: gcc/testsuite/gfortran.dg/actual_array_interface_2.f90
===================================================================
---- gcc/testsuite/gfortran.dg/actual_array_interface_2.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/actual_array_interface_2.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/actual_array_interface_2.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/actual_array_interface_2.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,13 @@
+! { dg-do compile }
+program gprogram
+
Index: gcc/testsuite/gfortran.dg/unexpected_interface.f90
===================================================================
---- gcc/testsuite/gfortran.dg/unexpected_interface.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/unexpected_interface.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/unexpected_interface.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/unexpected_interface.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,9 @@
+! { dg-do compile }
+! PR fortran/43592
+! { dg-error "Unexpected end of file" "" { target "*-*-*" } 0 }
Index: gcc/testsuite/gfortran.dg/pr43796.f90
===================================================================
---- gcc/testsuite/gfortran.dg/pr43796.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/pr43796.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/pr43796.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/pr43796.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,51 @@
+! { dg-do compile }
+! { dg-options "-O2 -fcheck=bounds" }
+
Index: gcc/testsuite/gfortran.dg/gomp/pr43337.f90
===================================================================
---- gcc/testsuite/gfortran.dg/gomp/pr43337.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/gomp/pr43337.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/gomp/pr43337.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/gomp/pr43337.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,30 @@
+! PR middle-end/43337
+! { dg-do compile }
+end subroutine pr43337
Index: gcc/testsuite/gfortran.dg/gomp/pr44085.f90
===================================================================
---- gcc/testsuite/gfortran.dg/gomp/pr44085.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/gomp/pr44085.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/gomp/pr44085.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/gomp/pr44085.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,25 @@
+! PR middle-end/44085
+! { dg-do compile }
+ end
Index: gcc/testsuite/gfortran.dg/gomp/pr43836.f90
===================================================================
---- gcc/testsuite/gfortran.dg/gomp/pr43836.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/gomp/pr43836.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/gomp/pr43836.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/gomp/pr43836.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,10 @@
+! PR fortran/43836
+! { dg-do compile }
+end subroutine foo
Index: gcc/testsuite/gfortran.dg/gomp/sharing-2.f90
===================================================================
---- gcc/testsuite/gfortran.dg/gomp/sharing-2.f90 (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gfortran.dg/gomp/sharing-2.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/gomp/sharing-2.f90 (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gfortran.dg/gomp/sharing-2.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -28,14 +28,14 @@
end do
!$omp end single
!$omp parallel default (none) shared (a)
Index: gcc/testsuite/gfortran.dg/gomp/sharing-3.f90
===================================================================
---- gcc/testsuite/gfortran.dg/gomp/sharing-3.f90 (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gfortran.dg/gomp/sharing-3.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/gomp/sharing-3.f90 (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gfortran.dg/gomp/sharing-3.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -29,7 +29,7 @@
!$omp master
vara(1) = 1 ! { dg-error "not specified" }
!$omp end master
Index: gcc/testsuite/gfortran.dg/gomp/crayptr5.f90
===================================================================
---- gcc/testsuite/gfortran.dg/gomp/crayptr5.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/gomp/crayptr5.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/gomp/crayptr5.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/gomp/crayptr5.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,27 @@
+! { dg-do compile }
+! { dg-options "-fopenmp -fcray-pointer" }
+end
Index: gcc/testsuite/gfortran.dg/gomp/pr44036-1.f90
===================================================================
---- gcc/testsuite/gfortran.dg/gomp/pr44036-1.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/gomp/pr44036-1.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/gomp/pr44036-1.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/gomp/pr44036-1.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,24 @@
+! PR fortran/44036
+! { dg-do compile }
+end
Index: gcc/testsuite/gfortran.dg/gomp/pr44036-2.f90
===================================================================
---- gcc/testsuite/gfortran.dg/gomp/pr44036-2.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/gomp/pr44036-2.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/gomp/pr44036-2.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/gomp/pr44036-2.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,17 @@
+! PR fortran/44036
+! { dg-do compile }
+end
Index: gcc/testsuite/gfortran.dg/gomp/pr44036-3.f90
===================================================================
---- gcc/testsuite/gfortran.dg/gomp/pr44036-3.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/gomp/pr44036-3.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/gomp/pr44036-3.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/gomp/pr44036-3.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,13 @@
+! PR fortran/44036
+! { dg-do compile }
+end
Index: gcc/testsuite/gfortran.dg/gomp/pr44536.f90
===================================================================
---- gcc/testsuite/gfortran.dg/gomp/pr44536.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/gomp/pr44536.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/gomp/pr44536.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/gomp/pr44536.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,10 @@
+! PR fortran/44536
+! { dg-do compile }
+ end subroutine
Index: gcc/testsuite/gfortran.dg/mvbits_9.f90
===================================================================
---- gcc/testsuite/gfortran.dg/mvbits_9.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/mvbits_9.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/mvbits_9.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/mvbits_9.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,19 @@
+! { dg-do compile }
+!
+ ! FROMPOS negative
+ call mvbits(n, -1, 2, n, 3) ! { dg-error "must be nonnegative" }
+end program a
+Index: gcc/testsuite/gfortran.dg/pr43866.f90
+===================================================================
+--- gcc/testsuite/gfortran.dg/pr43866.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/pr43866.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,44 @@
++! PR middle-end/43866
++! { dg-do run }
++! { dg-options "-funswitch-loops -fbounds-check" }
++
++MODULE PR43866
++ IMPLICIT NONE
++ TYPE TT
++ REAL(KIND=4), DIMENSION(:,:), POINTER :: A
++ REAL(KIND=8), DIMENSION(:,:), POINTER :: B
++ END TYPE
++CONTAINS
++ SUBROUTINE FOO(M,X,Y,T)
++ TYPE(TT), POINTER :: M
++ INTEGER, INTENT(IN) :: Y, X
++ INTEGER :: C, D
++ LOGICAL :: T
++ REAL(KIND = 4), DIMENSION(:,:), POINTER :: P
++ REAL(KIND = 8), DIMENSION(:,:), POINTER :: Q
++
++ Q => M%B
++ P => M%A
++ DO C=1,X
++ DO D=C+1,Y
++ IF (T) THEN
++ P(D,C)=P(C,D)
++ ELSE
++ Q(D,C)=Q(C,D)
++ ENDIF
++ ENDDO
++ ENDDO
++ END SUBROUTINE FOO
++END MODULE PR43866
++
++ USE PR43866
++ TYPE(TT), POINTER :: Q
++ INTEGER, PARAMETER :: N=17
++ ALLOCATE (Q)
++ NULLIFY (Q%A)
++ ALLOCATE (Q%B(N,N))
++ Q%B=0
++ CALL FOO (Q,N,N,.FALSE.)
++END
++
++! { dg-final { cleanup-modules "pr43866" } }
Index: gcc/testsuite/gfortran.dg/proc_decl_23.f90
===================================================================
---- gcc/testsuite/gfortran.dg/proc_decl_23.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/proc_decl_23.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/proc_decl_23.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/proc_decl_23.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,43 @@
+! { dg-do compile }
+! Test the fix for PR43227, in which the lines below would segfault.
+! { dg-final { cleanup-tree-dump "m_string" } }
Index: gcc/testsuite/gfortran.dg/ibset_1.f90
===================================================================
---- gcc/testsuite/gfortran.dg/ibset_1.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/ibset_1.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/ibset_1.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/ibset_1.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,7 @@
+! { dg-do compile }
+program a
+ l = ibset(i, -1) ! { dg-error "must be nonnegative" }
+ l = ibset(i, 65) ! { dg-error "must be less than" }
+end program a
+Index: gcc/testsuite/gfortran.dg/ltrans-7.f90
+===================================================================
+--- gcc/testsuite/gfortran.dg/ltrans-7.f90 (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gfortran.dg/ltrans-7.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,5 +1,6 @@
+ ! { dg-do compile }
+ ! { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" }
++! { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32 } } }
+
+ Program FOO
+ IMPLICIT INTEGER (I-N)
Index: gcc/testsuite/gfortran.dg/graphite/pr42326.f90
===================================================================
---- gcc/testsuite/gfortran.dg/graphite/pr42326.f90 (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gfortran.dg/graphite/pr42326.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/graphite/pr42326.f90 (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gfortran.dg/graphite/pr42326.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
! { dg-do compile { target i?86-*-* x86_64-*-* } }
! { dg-require-effective-target ilp32 }
subroutine blts ( ldmx, ldmy, v, tmp1, i, j, k)
Index: gcc/testsuite/gfortran.dg/graphite/pr42326-1.f90
===================================================================
---- gcc/testsuite/gfortran.dg/graphite/pr42326-1.f90 (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gfortran.dg/graphite/pr42326-1.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/graphite/pr42326-1.f90 (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gfortran.dg/graphite/pr42326-1.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
! { dg-do compile { target i?86-*-* x86_64-*-* } }
! { dg-require-effective-target ilp32 }
subroutine phasad(t,i,ium)
Index: gcc/testsuite/gfortran.dg/ibits_1.f90
===================================================================
---- gcc/testsuite/gfortran.dg/ibits_1.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/ibits_1.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/ibits_1.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/ibits_1.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,13 @@
+! { dg-do compile }
+!
+
Index: gcc/testsuite/gfortran.dg/pr43793.f90
===================================================================
---- gcc/testsuite/gfortran.dg/pr43793.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/pr43793.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/pr43793.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/pr43793.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,23 @@
+! { dg-do compile }
+!
+! { dg-final { cleanup-modules "fft_tools" } }
Index: gcc/testsuite/gfortran.dg/bounds_check_fail_4.f90
===================================================================
---- gcc/testsuite/gfortran.dg/bounds_check_fail_4.f90 (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gfortran.dg/bounds_check_fail_4.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/bounds_check_fail_4.f90 (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gfortran.dg/bounds_check_fail_4.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -9,4 +9,4 @@
if (any(x /= (/ 5, 2, 3, 6, 5, 6, 7, 8, 9, 10 /))) call abort()
x(8:1:m) = x(1:3) + x(5:2:n)
+! { dg-output "line 10 .* bound mismatch .* dimension 1 .* array \'x\' \\\(2/3\\\)" }
Index: gcc/testsuite/gfortran.dg/selected_char_kind_3.f90
===================================================================
---- gcc/testsuite/gfortran.dg/selected_char_kind_3.f90 (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gfortran.dg/selected_char_kind_3.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/selected_char_kind_3.f90 (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gfortran.dg/selected_char_kind_3.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4,7 +4,7 @@
! Check that SELECTED_CHAR_KIND is rejected with -std=f95
!
end
Index: gcc/testsuite/gfortran.dg/selected_real_kind_1.f90
===================================================================
---- gcc/testsuite/gfortran.dg/selected_real_kind_1.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/selected_real_kind_1.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/selected_real_kind_1.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/selected_real_kind_1.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,10 @@
+! { dg-do "compile" }
+!
+end
Index: gcc/testsuite/gfortran.dg/intrinsic_std_1.f90
===================================================================
---- gcc/testsuite/gfortran.dg/intrinsic_std_1.f90 (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gfortran.dg/intrinsic_std_1.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/intrinsic_std_1.f90 (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gfortran.dg/intrinsic_std_1.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -20,7 +20,7 @@
! ASINH is an intrinsic of F2008
! The warning should be issued in the declaration above where it is declared
SUBROUTINE implicit_type
Index: gcc/testsuite/gfortran.dg/intrinsic_std_5.f03
===================================================================
---- gcc/testsuite/gfortran.dg/intrinsic_std_5.f03 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/intrinsic_std_5.f03 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/intrinsic_std_5.f03 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/intrinsic_std_5.f03 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,24 @@
+! { dg-do compile }
+! { dg-options "-std=f2003" }
+END SUBROUTINE
Index: gcc/testsuite/gfortran.dg/btest_1.f90
===================================================================
---- gcc/testsuite/gfortran.dg/btest_1.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/btest_1.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/btest_1.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/btest_1.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,7 @@
+! { dg-do compile }
+program a
+end program a
Index: gcc/testsuite/gfortran.dg/use_13.f90
===================================================================
---- gcc/testsuite/gfortran.dg/use_13.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/use_13.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/use_13.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/use_13.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,45 @@
+! { dg-do run }
+!
+call test()
+end
+! { dg-final { cleanup-modules "m m2" } }
+Index: gcc/testsuite/gfortran.dg/aliasing_array_result_1.f90
+===================================================================
+--- gcc/testsuite/gfortran.dg/aliasing_array_result_1.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/aliasing_array_result_1.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,164 @@
++! { dg-do run }
++! Tests the fic for PR44582, where gfortran was found to
++! produce an incorrect result when the result of a function
++! was aliased by a host or use associated variable, to which
++! the function is assigned. In these cases a temporary is
++! required in the function assignments. The check has to be
++! rather restrictive. Whilst the cases marked below might
++! not need temporaries, the TODOs are going to be tough.
++!
++! Reported by Yin Ma <yin@absoft.com> and
++! elaborated by Tobias Burnus <burnus@gcc.gnu.org>
++!
++module foo
++ INTEGER, PARAMETER :: ONE = 1
++ INTEGER, PARAMETER :: TEN = 10
++ INTEGER, PARAMETER :: FIVE = TEN/2
++ INTEGER, PARAMETER :: TWO = 2
++ integer :: foo_a(ONE)
++ integer :: check(ONE) = TEN
++ LOGICAL :: abort_flag = .false.
++contains
++ function foo_f()
++ integer :: foo_f(ONE)
++ foo_f = -FIVE
++ foo_f = foo_a - foo_f
++ end function foo_f
++ subroutine bar
++ foo_a = FIVE
++! This aliases 'foo_a' by host association.
++ foo_a = foo_f ()
++ if (any (foo_a .ne. check)) call myabort (0)
++ end subroutine bar
++ subroutine myabort(fl)
++ integer :: fl
++ print *, fl
++ abort_flag = .true.
++ end subroutine myabort
++end module foo
++
++function h_ext()
++ use foo
++ integer :: h_ext(ONE)
++ h_ext = -FIVE
++ h_ext = FIVE - h_ext
++end function h_ext
++
++function i_ext() result (h)
++ use foo
++ integer :: h(ONE)
++ h = -FIVE
++ h = FIVE - h
++end function i_ext
++
++subroutine tobias
++ use foo
++ integer :: a(ONE)
++ a = FIVE
++ call sub1(a)
++ if (any (a .ne. check)) call myabort (1)
++contains
++ subroutine sub1(x)
++ integer :: x(ONE)
++! 'x' is aliased by host association in 'f'.
++ x = f()
++ end subroutine sub1
++ function f()
++ integer :: f(ONE)
++ f = ONE
++ f = a + FIVE
++ end function f
++end subroutine tobias
++
++program test
++ use foo
++ implicit none
++ common /foo_bar/ c
++ integer :: a(ONE), b(ONE), c(ONE), d(ONE)
++ interface
++ function h_ext()
++ use foo
++ integer :: h_ext(ONE)
++ end function h_ext
++ end interface
++ interface
++ function i_ext() result (h)
++ use foo
++ integer :: h(ONE)
++ end function i_ext
++ end interface
++
++ a = FIVE
++! This aliases 'a' by host association
++ a = f()
++ if (any (a .ne. check)) call myabort (2)
++ a = FIVE
++ if (any (f() .ne. check)) call myabort (3)
++ call bar
++ foo_a = FIVE
++! This aliases 'foo_a' by host association.
++ foo_a = g ()
++ if (any (foo_a .ne. check)) call myabort (4)
++ a = FIVE
++ a = h() ! TODO: Needs no temporary
++ if (any (a .ne. check)) call myabort (5)
++ a = FIVE
++ a = i() ! TODO: Needs no temporary
++ if (any (a .ne. check)) call myabort (6)
++ a = FIVE
++ a = h_ext() ! Needs no temporary - was OK
++ if (any (a .ne. check)) call myabort (15)
++ a = FIVE
++ a = i_ext() ! Needs no temporary - was OK
++ if (any (a .ne. check)) call myabort (16)
++ c = FIVE
++! This aliases 'c' through the common block.
++ c = j()
++ if (any (c .ne. check)) call myabort (7)
++ call aaa
++ call tobias
++ if (abort_flag) call abort
++contains
++ function f()
++ integer :: f(ONE)
++ f = -FIVE
++ f = a - f
++ end function f
++ function g()
++ integer :: g(ONE)
++ g = -FIVE
++ g = foo_a - g
++ end function g
++ function h()
++ integer :: h(ONE)
++ h = -FIVE
++ h = FIVE - h
++ end function h
++ function i() result (h)
++ integer :: h(ONE)
++ h = -FIVE
++ h = FIVE - h
++ end function i
++ function j()
++ common /foo_bar/ cc
++ integer :: j(ONE), cc(ONE)
++ j = -FIVE
++ j = cc - j
++ end function j
++ subroutine aaa()
++ d = TEN - TWO
++! This aliases 'd' through 'get_d'.
++ d = bbb()
++ if (any (d .ne. check)) call myabort (8)
++ end subroutine aaa
++ function bbb()
++ integer :: bbb(ONE)
++ bbb = TWO
++ bbb = bbb + get_d()
++ end function bbb
++ function get_d()
++ integer :: get_d(ONE)
++ get_d = d
++ end function get_d
++end program test
++! { dg-final { cleanup-modules "foo" } }
+Index: gcc/testsuite/gfortran.dg/allocate_alloc_opt_11.f90
+===================================================================
+--- gcc/testsuite/gfortran.dg/allocate_alloc_opt_11.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/allocate_alloc_opt_11.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,26 @@
++! { dg-do compile }
++!
++! PR fortran/44556
++!
++! Contributed by Jonathan Hogg and Steve Kargl.
++!
++program oh_my
++ implicit none
++ type a
++ integer, allocatable :: b(:), d(:)
++ character(len=80) :: err
++ character(len=80), allocatable :: str(:)
++ integer :: src
++ end type a
++
++ integer j
++ type(a) :: c
++ c%err = 'ok'
++ allocate(c%d(1))
++ allocate(c%b(2), errmsg=c%err, stat=c%d(1)) ! OK
++ deallocate(c%b, errmsg=c%err, stat=c%d(1)) ! OK
++ allocate(c%b(2), errmsg=c%err, stat=c%b(1)) ! { dg-error "the same ALLOCATE statement" }
++ deallocate(c%b, errmsg=c%err, stat=c%b(1)) ! { dg-error "the same DEALLOCATE statement" }
++ allocate(c%str(2), errmsg=c%str(1), stat=j) ! { dg-error "the same ALLOCATE statement" }
++ deallocate(c%str, errmsg=c%str(1), stat=j) ! { dg-error "the same DEALLOCATE statement" }
++end program oh_my
Index: gcc/testsuite/gfortran.dg/abstract_type_6.f03
===================================================================
---- gcc/testsuite/gfortran.dg/abstract_type_6.f03 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/abstract_type_6.f03 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/abstract_type_6.f03 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/abstract_type_6.f03 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,53 @@
+! { dg-do "compile" }
+! Test the fix for PR43266, in which an ICE followed correct error messages.
+! { dg-final { cleanup-modules "m" } }
Index: gcc/testsuite/gfortran.dg/ibclr_1.f90
===================================================================
---- gcc/testsuite/gfortran.dg/ibclr_1.f90 (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/gfortran.dg/ibclr_1.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/ibclr_1.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/ibclr_1.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,7 @@
+! { dg-do compile }
+program a
+ l = ibclr(i, -1) ! { dg-error "must be nonnegative" }
+ l = ibclr(i, 65) ! { dg-error "must be less than" }
+end program a
+Index: gcc/testsuite/gfortran.dg/elemental_scalar_args_1.f90
+===================================================================
+--- gcc/testsuite/gfortran.dg/elemental_scalar_args_1.f90 (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/gfortran.dg/elemental_scalar_args_1.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,87 @@
++! { dg-do compile }
++! Test the fix for PR43843, in which the temporary for b(1) in
++! test_member was an indirect reference, rather then the value.
++!
++! Contributed by Kyle Horne <horne.kyle@gmail.com>
++! Reported by Tobias Burnus <burnus@gcc.gno.org>
++! Reported by Harald Anlauf <anlauf@gmx.de> (PR43841)
++!
++module polar_mod
++ implicit none
++ complex, parameter :: i = (0.0,1.0)
++ real, parameter :: pi = 3.14159265359
++ real, parameter :: e = exp (1.0)
++ type :: polar_t
++ real :: l, th
++ end type
++ type(polar_t) :: one = polar_t (1.0, 0)
++ interface operator(/)
++ module procedure div_pp
++ end interface
++ interface operator(.ne.)
++ module procedure ne_pp
++ end interface
++contains
++ elemental function div_pp(u,v) result(o)
++ type(polar_t), intent(in) :: u, v
++ type(polar_t) :: o
++ complex :: a, b, c
++ a = u%l*exp (i*u%th*pi)
++ b = v%l*exp (i*v%th*pi)
++ c = a/b
++ o%l = abs (c)
++ o%th = atan2 (imag (c), real (c))/pi
++ end function div_pp
++ elemental function ne_pp(u,v) result(o)
++ type(polar_t), intent(in) :: u, v
++ LOGICAL :: o
++ if (u%l .ne. v%l) then
++ o = .true.
++ else if (u%th .ne. v%th) then
++ o = .true.
++ else
++ o = .false.
++ end if
++ end function ne_pp
++end module polar_mod
++
++program main
++ use polar_mod
++ implicit none
++ call test_member
++ call test_other
++ call test_scalar
++ call test_real
++contains
++ subroutine test_member
++ type(polar_t), dimension(3) :: b
++ b = polar_t (2.0,0.5)
++ b(:) = b(:)/b(1)
++ if (any (b .ne. one)) call abort
++ end subroutine test_member
++ subroutine test_other
++ type(polar_t), dimension(3) :: b
++ type(polar_t), dimension(3) :: c
++ b = polar_t (3.0,1.0)
++ c = polar_t (3.0,1.0)
++ b(:) = b(:)/c(1)
++ if (any (b .ne. one)) call abort
++ end subroutine test_other
++ subroutine test_scalar
++ type(polar_t), dimension(3) :: b
++ type(polar_t) :: c
++ b = polar_t (4.0,1.5)
++ c = b(1)
++ b(:) = b(:)/c
++ if (any (b .ne. one)) call abort
++ end subroutine test_scalar
++ subroutine test_real
++ real,dimension(3) :: b
++ real :: real_one
++ b = 2.0
++ real_one = b(2)/b(1)
++ b(:) = b(:)/b(1)
++ if (any (b .ne. real_one)) call abort
++ end subroutine test_real
++end program main
++! { dg-final { cleanup-modules "polar_mod" } }
Index: gcc/testsuite/gfortran.dg/vect/vect.exp
===================================================================
---- gcc/testsuite/gfortran.dg/vect/vect.exp (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gfortran.dg/vect/vect.exp (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/vect/vect.exp (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gfortran.dg/vect/vect.exp (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-# Copyright (C) 1997, 2004, 2007, 2008 Free Software Foundation, Inc.
+# Copyright (C) 1997, 2004, 2007, 2008, 2010 Free Software Foundation, Inc.
set dg-do-what-default run
Index: gcc/testsuite/gfortran.dg/vect/fast-math-mgrid-resid.f
===================================================================
---- gcc/testsuite/gfortran.dg/vect/fast-math-mgrid-resid.f (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gfortran.dg/vect/fast-math-mgrid-resid.f (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/vect/fast-math-mgrid-resid.f (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gfortran.dg/vect/fast-math-mgrid-resid.f (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,6 @@
! { dg-do compile { target i?86-*-* x86_64-*-* } }
! { dg-require-effective-target vect_double }
! { dg-options "-O3 -ffast-math -msse2 -fpredictive-commoning -ftree-vectorize -fdump-tree-optimized" }
+Index: gcc/testsuite/gfortran.dg/atan2_1.f90
+===================================================================
+--- gcc/testsuite/gfortran.dg/atan2_1.f90 (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gfortran.dg/atan2_1.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,4 +1,5 @@
+ ! { dg-do run }
++! { dg-options "-ffloat-store" }
+ !
+ ! PR fortran/33197
+ !
Index: gcc/testsuite/gfortran.dg/bounds_check_fail_3.f90
===================================================================
---- gcc/testsuite/gfortran.dg/bounds_check_fail_3.f90 (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/testsuite/gfortran.dg/bounds_check_fail_3.f90 (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/gfortran.dg/bounds_check_fail_3.f90 (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/gfortran.dg/bounds_check_fail_3.f90 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -9,4 +9,4 @@
if (any(x /= (/ 2, 2, 3, 4, 5, 6, 6, 8, 9, 10 /))) call abort()
x(8:1:m) = x(5:2:n)
end
-! { dg-output "line 10 .* bound mismatch, .* dimension 1 .* array \'x\' \\\(3/2\\\)" }
+! { dg-output "line 10 .* bound mismatch .* dimension 1 .* array \'x\' \\\(3/2\\\)" }
+Index: gcc/testsuite/objc/execute/forward-1.m
+===================================================================
+--- gcc/testsuite/objc/execute/forward-1.m (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/testsuite/objc/execute/forward-1.m (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -55,13 +55,12 @@
+ receiver = theReceiver;
+ return self;
+ }
+-#ifdef NEXT_OBJC_USE_NEW_INTERFACE
++#ifdef __NEXT_RUNTIME__
+ - forward: (SEL)theSel: (marg_list)theArgFrame
+-{
+ #else
+ -(retval_t) forward: (SEL)theSel: (arglist_t)theArgFrame
+-{
+ #endif
++{
+ /* If we have a reciever try to perform on that object */
+ if (receiver)
+ return [receiver performv: theSel: theArgFrame];
Index: gcc/testsuite/c-c++-common/asmgoto-4.c
===================================================================
---- gcc/testsuite/c-c++-common/asmgoto-4.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/c-c++-common/asmgoto-4.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/c-c++-common/asmgoto-4.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/c-c++-common/asmgoto-4.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,44 @@
+/* PR middle-end/44071 */
+/* { dg-do compile } */
+}
Index: gcc/testsuite/c-c++-common/pr43942.c
===================================================================
---- gcc/testsuite/c-c++-common/pr43942.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/testsuite/c-c++-common/pr43942.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/testsuite/c-c++-common/pr43942.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/testsuite/c-c++-common/pr43942.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,33 @@
+/* PR debug/43942 */
+/* { dg-do compile } */
+}
Index: gcc/df-scan.c
===================================================================
---- gcc/df-scan.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/df-scan.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/df-scan.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/df-scan.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2396,7 +2396,7 @@
if (DF_REF_EXTRACT_MODE (ref1) != DF_REF_EXTRACT_MODE (ref2))
return DF_REF_EXTRACT_MODE (ref1) - DF_REF_EXTRACT_MODE (ref2);
static void
Index: gcc/cp/typeck.c
===================================================================
---- gcc/cp/typeck.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/typeck.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/typeck.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/typeck.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1142,6 +1142,7 @@
incompatible_dependent_types_p (tree t1, tree t2)
{
short_compare = 1;
else if (code0 == POINTER_TYPE && code1 == POINTER_TYPE)
result_type = composite_pointer_type (type0, type1, op0, op1,
+@@ -4651,7 +4667,7 @@
+ tree val;
+ const char *invalid_op_diag;
+
+- if (error_operand_p (arg))
++ if (!arg || error_operand_p (arg))
+ return error_mark_node;
+
+ if ((invalid_op_diag
Index: gcc/cp/init.c
===================================================================
---- gcc/cp/init.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/init.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/init.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/init.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1230,7 +1230,9 @@
TREE_READONLY (exp) = 0;
TREE_THIS_VOLATILE (exp) = 0;
if (TREE_CODE (type) == ARRAY_TYPE)
Index: gcc/cp/decl.c
===================================================================
---- gcc/cp/decl.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/decl.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/decl.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/decl.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5220,7 +5220,6 @@
error ("in C++98 %qD must be initialized by constructor, "
"not by %<{...}%>",
/* In C++0x, the type we are creating a reference to might be
Index: gcc/cp/except.c
===================================================================
---- gcc/cp/except.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/except.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/except.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/except.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -214,10 +214,10 @@
static int
dtor_nothrow (tree type)
if (CLASSTYPE_LAZY_DESTRUCTOR (type))
Index: gcc/cp/error.c
===================================================================
---- gcc/cp/error.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/error.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/error.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/error.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -840,6 +840,7 @@
pp_maybe_space (cxx_pp);
}
&& (!DECL_INITIAL (t)
|| TREE_CODE (DECL_INITIAL (t)) != TEMPLATE_PARM_INDEX))
dump_scope (CP_DECL_CONTEXT (t), flags);
+@@ -1724,7 +1725,9 @@
+ if (TREE_CODE (fn) == OBJ_TYPE_REF)
+ fn = resolve_virtual_fun_from_obj_type_ref (fn);
+
+- if (TREE_TYPE (fn) != NULL_TREE && NEXT_CODE (fn) == METHOD_TYPE)
++ if (TREE_TYPE (fn) != NULL_TREE
++ && NEXT_CODE (fn) == METHOD_TYPE
++ && call_expr_nargs (t))
+ {
+ tree ob = CALL_EXPR_ARG (t, 0);
+ if (TREE_CODE (ob) == ADDR_EXPR)
Index: gcc/cp/tree.c
===================================================================
---- gcc/cp/tree.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/tree.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/tree.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/tree.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2309,6 +2309,13 @@
&& same_type_p (TYPE_MAIN_VARIANT (TREE_TYPE (current_class_ref)),
current_class_type))
Index: gcc/cp/ChangeLog
===================================================================
---- gcc/cp/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -1,3 +1,131 @@
+--- gcc/cp/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,3 +1,161 @@
++2010-07-02 Paolo Carlini <paolo.carlini@oracle.com>
++
++ PR c++/44039
++ * pt.c (tsubst_baselink): Return error_mark_node if lookup_fnfields
++ returns NULL_TREE.
++
++2010-06-30 Paolo Carlini <paolo.carlini@oracle.com>
++
++ PR c++/44628
++ * typeck.c (cp_build_unary_op): Early return error_mark_node when
++ arg is NULL_TREE too.
++ * call.c (convert_class_to_reference): Return error_mark_node when
++ expr is NULL_TREE.
++
++2010-06-29 Jason Merrill <jason@redhat.com>
++
++ PR c++/44587
++ * pt.c (has_value_dependent_address): New.
++ (value_dependent_expression_p): Check it.
++ (convert_nontype_argument): Likewise. Call decay_conversion before
++ folding if we want a pointer.
++ * semantics.c (finish_id_expression): Don't add SCOPE_REF if the
++ scope is the current instantiation.
++
++2010-06-22 Jakub Jelinek <jakub@redhat.com>
++
++ PR c++/44627
++ * error.c (dump_expr): Don't look at CALL_EXPR_ARG (t, 0) if
++ the CALL_EXPR has no arguments.
++
+2010-06-07 Jason Merrill <jason@redhat.com>
+
+ PR c++/44366
* GCC 4.5.0 released.
Index: gcc/cp/cp-gimplify.c
===================================================================
---- gcc/cp/cp-gimplify.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/cp-gimplify.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/cp-gimplify.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/cp-gimplify.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -480,11 +480,16 @@
tree stmt = *expr_p;
tree temp = voidify_wrapper_expr (stmt, NULL);
break;
Index: gcc/cp/cxx-pretty-print.c
===================================================================
---- gcc/cp/cxx-pretty-print.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/cxx-pretty-print.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/cxx-pretty-print.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/cxx-pretty-print.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1275,6 +1275,17 @@
pp_cxx_right_paren (pp);
break;
pp_c_specifier_qualifier_list (pp_c_base (pp), t);
Index: gcc/cp/pt.c
===================================================================
---- gcc/cp/pt.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/pt.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/pt.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/pt.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1563,6 +1563,12 @@
val = iterative_hash_template_arg (TREE_TYPE (arg), val);
return iterative_hash_template_arg (TYPE_DOMAIN (arg), val);
}
if (type == error_mark_node)
-@@ -8234,7 +8242,7 @@
+@@ -4873,6 +4881,36 @@
+ return false;
+ }
+
++/* Returns TRUE iff the address of OP is value-dependent.
++
++ 14.6.2.4 [temp.dep.temp]:
++ A non-integral non-type template-argument is dependent if its type is
++ dependent or it has either of the following forms
++ qualified-id
++ & qualified-id
++ and contains a nested-name-specifier which specifies a class-name that
++ names a dependent type.
++
++ We generalize this to just say that the address of a member of a
++ dependent class is value-dependent; the above doesn't cover the
++ address of a static data member named with an unqualified-id. */
++
++static bool
++has_value_dependent_address (tree op)
++{
++ /* We could use get_inner_reference here, but there's no need;
++ this is only relevant for template non-type arguments, which
++ can only be expressed as &id-expression. */
++ if (DECL_P (op))
++ {
++ tree ctx = CP_DECL_CONTEXT (op);
++ if (TYPE_P (ctx) && dependent_type_p (ctx))
++ return true;
++ }
++
++ return false;
++}
++
+ /* Attempt to convert the non-type template parameter EXPR to the
+ indicated TYPE. If the conversion is successful, return the
+ converted value. If the conversion is unsuccessful, return
+@@ -4911,6 +4949,11 @@
+ return NULL_TREE;
+ }
+
++ /* Add the ADDR_EXPR now for the benefit of
++ value_dependent_expression_p. */
++ if (TYPE_PTROBV_P (type))
++ expr = decay_conversion (expr);
++
+ /* If we are in a template, EXPR may be non-dependent, but still
+ have a syntactic, rather than semantic, form. For example, EXPR
+ might be a SCOPE_REF, rather than the VAR_DECL to which the
+@@ -4918,7 +4961,11 @@
+ so that access checking can be performed when the template is
+ instantiated -- but here we need the resolved form so that we can
+ convert the argument. */
+- expr = fold_non_dependent_expr (expr);
++ if (TYPE_REF_OBJ_P (type)
++ && has_value_dependent_address (expr))
++ /* If we want the address and it's value-dependent, don't fold. */;
++ else
++ expr = fold_non_dependent_expr (expr);
+ if (error_operand_p (expr))
+ return error_mark_node;
+ expr_type = TREE_TYPE (expr);
+@@ -8234,7 +8281,7 @@
int i, len = -1;
tree result;
int incomplete = 0;
gcc_assert (PACK_EXPANSION_P (t));
pattern = PACK_EXPANSION_PATTERN (t);
-@@ -8252,13 +8260,15 @@
+@@ -8252,13 +8299,15 @@
if (TREE_CODE (parm_pack) == PARM_DECL)
{
arg_pack = tsubst_decl (parm_pack, args, complain);
arg_pack = make_fnparm_pack (arg_pack);
}
-@@ -8364,11 +8374,13 @@
+@@ -8364,11 +8413,13 @@
if (len < 0)
return error_mark_node;
local_specializations = htab_create (37,
hash_local_specialization,
eq_local_specializations,
-@@ -8459,10 +8471,10 @@
+@@ -8459,10 +8510,10 @@
}
}
}
return result;
-@@ -10460,6 +10472,7 @@
+@@ -10460,6 +10511,7 @@
in_decl, /*entering_scope=*/1);
tree f = tsubst_copy (TYPENAME_TYPE_FULLNAME (t), args,
complain, in_decl);
if (ctx == error_mark_node || f == error_mark_node)
return error_mark_node;
-@@ -10510,8 +10523,15 @@
+@@ -10510,8 +10562,15 @@
t, f);
}
}
case UNBOUND_CLASS_TEMPLATE:
-@@ -15923,12 +15943,13 @@
+@@ -10672,6 +10731,8 @@
+ if (IDENTIFIER_TYPENAME_P (name))
+ name = mangle_conv_op_name_for_type (optype);
+ baselink = lookup_fnfields (qualifying_scope, name, /*protect=*/1);
++ if (!baselink)
++ return error_mark_node;
+
+ /* If lookup found a single function, mark it as used at this
+ point. (If it lookup found multiple functions the one selected
+@@ -15923,12 +15984,13 @@
tree parms = TREE_VALUE (t);
partial_spec_args = CLASSTYPE_TI_ARGS (TREE_TYPE (t));
/* Discard the outer levels of args, and then substitute in the
template args from the enclosing class. */
partial_spec_args = INNERMOST_TEMPLATE_ARGS (partial_spec_args);
-@@ -15945,7 +15966,6 @@
+@@ -15945,7 +16007,6 @@
TREE_VEC_ELT (parms, i) =
tsubst (TREE_VEC_ELT (parms, i), outer_args, tf_none, NULL_TREE);
}
partial_spec_args =
-@@ -15956,6 +15976,8 @@
+@@ -15956,6 +16017,8 @@
/*require_all_args=*/true,
/*use_default_args=*/true);
if (partial_spec_args == error_mark_node)
return error_mark_node;
+@@ -17590,6 +17653,13 @@
+ return ((value_dependent_expression_p (TREE_OPERAND (expression, 0)))
+ || (value_dependent_expression_p (TREE_OPERAND (expression, 2))));
+
++ case ADDR_EXPR:
++ {
++ tree op = TREE_OPERAND (expression, 0);
++ return (value_dependent_expression_p (op)
++ || has_value_dependent_address (op));
++ }
++
+ default:
+ /* A constant expression is value-dependent if any subexpression is
+ value-dependent. */
Index: gcc/cp/semantics.c
===================================================================
---- gcc/cp/semantics.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/semantics.c (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -3449,7 +3449,9 @@
+--- gcc/cp/semantics.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/semantics.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -3144,7 +3144,13 @@
+ {
+ tree r = convert_from_reference (decl);
+
+- if (processing_template_decl && TYPE_P (scope))
++ /* In a template, return a SCOPE_REF for most qualified-ids
++ so that we can check access at instantiation time. But if
++ we're looking at a member of the current instantiation, we
++ know we have access and building up the SCOPE_REF confuses
++ non-type template argument handling. */
++ if (processing_template_decl && TYPE_P (scope)
++ && !currently_open_class (scope))
+ r = build_qualified_name (TREE_TYPE (r),
+ scope, decl,
+ template_p);
+@@ -3449,7 +3455,9 @@
this function as needed so that finish_file will make sure to
output it later. Similarly, all dllexport'd functions must
be emitted; there may be callers in other DLLs. */
|| lookup_attribute ("dllexport", DECL_ATTRIBUTES (fn)))
mark_needed (fn);
}
-@@ -5514,6 +5516,11 @@
+@@ -5514,6 +5522,11 @@
lambda_return_type (tree expr)
{
tree type;
if (type_dependent_expression_p (expr))
{
type = cxx_make_type (DECLTYPE_TYPE);
-@@ -5856,6 +5863,32 @@
+@@ -5856,6 +5869,32 @@
return result;
}
/* If the closure TYPE has a static op(), also add a conversion to function
pointer. */
-@@ -5961,9 +5994,12 @@
+@@ -5961,9 +6000,12 @@
VEC_quick_push (tree, argvec, arg);
for (arg = DECL_ARGUMENTS (statfn); arg; arg = TREE_CHAIN (arg))
VEC_safe_push (tree, gc, argvec, arg);
finish_compound_stmt (compound_stmt);
Index: gcc/cp/parser.c
===================================================================
---- gcc/cp/parser.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/parser.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/parser.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/parser.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -7081,6 +7081,10 @@
LAMBDA_EXPR_LOCATION (lambda_expr)
= cp_lexer_peek_token (parser->lexer)->location;
&& !really_overloaded_fn (decl))
Index: gcc/cp/call.c
===================================================================
---- gcc/cp/call.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/call.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/call.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/call.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -447,6 +447,7 @@
indicated by the CONVERSION_PATH. */
tree conversion_path;
FOR_EACH_CONSTRUCTOR_VALUE (CONSTRUCTOR_ELTS (ctor), i, val)
{
conversion *sub
-@@ -2586,6 +2593,7 @@
+@@ -1013,6 +1020,9 @@
+ struct z_candidate *cand;
+ bool any_viable_p;
+
++ if (!expr)
++ return NULL;
++
+ conversions = lookup_conversions (s, /*lookup_template_convs_p=*/true);
+ if (!conversions)
+ return NULL;
+@@ -2586,6 +2596,7 @@
cand->template_decl = build_template_info (tmpl, targs);
else
cand->template_decl = DECL_TEMPLATE_INFO (fn);
return cand;
}
-@@ -5638,6 +5646,7 @@
+@@ -5638,6 +5649,7 @@
parm = TREE_CHAIN (parm), ++arg_index, ++i)
{
tree type = TREE_VALUE (parm);
conv = convs[i];
-@@ -5652,7 +5661,8 @@
+@@ -5652,7 +5664,8 @@
if (cxx_dialect > cxx98
&& flag_deduce_init_list
&& cand->template_decl
{
tree tmpl = TI_TEMPLATE (cand->template_decl);
tree realparm = chain_index (j, DECL_ARGUMENTS (cand->fn));
-@@ -5662,7 +5672,10 @@
+@@ -5662,7 +5675,10 @@
pattype = PACK_EXPANSION_PATTERN (pattype);
pattype = non_reference (pattype);
{
pedwarn (input_location, 0, "deducing %qT as %qT",
non_reference (TREE_TYPE (patparm)),
-@@ -5673,9 +5686,7 @@
+@@ -5673,9 +5689,7 @@
}
}
val = convert_for_arg_passing (type, val);
if (val == error_mark_node)
-@@ -5747,7 +5758,8 @@
+@@ -5747,7 +5761,8 @@
}
/* [class.copy]: the copy constructor is implicitly defined even if
the implementation elided its use. */
{
mark_used (fn);
already_used = true;
-@@ -5765,7 +5777,8 @@
+@@ -5765,7 +5780,8 @@
{
if (TREE_CODE (arg) == TARGET_EXPR)
return arg;
return build_target_expr_with_type (arg, DECL_CONTEXT (fn));
}
else if (TREE_CODE (arg) == TARGET_EXPR
-@@ -5774,20 +5787,8 @@
+@@ -5774,20 +5790,8 @@
{
tree to = stabilize_reference (cp_build_indirect_ref (fa, RO_NULL,
complain));
return val;
}
}
-@@ -6326,7 +6327,8 @@
+@@ -6326,7 +6330,8 @@
&& CONSTRUCTOR_IS_DIRECT_INIT (VEC_index (tree, *args, 0))
&& !TYPE_HAS_LIST_CTOR (basetype))
{
Index: gcc/cp/cp-tree.h
===================================================================
---- gcc/cp/cp-tree.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/cp-tree.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/cp-tree.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/cp-tree.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5204,6 +5204,7 @@
extern tree add_default_capture (tree, tree, tree);
extern void register_capture_members (tree);
/* in tree.c */
Index: gcc/cp/name-lookup.c
===================================================================
---- gcc/cp/name-lookup.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cp/name-lookup.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cp/name-lookup.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cp/name-lookup.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3806,6 +3806,10 @@
if (cp_unevaluated_operand && TREE_CODE (val) == FIELD_DECL
&& DECL_NORMAL_CAPTURE_P (val))
Index: gcc/tree-ssa-ccp.c
===================================================================
---- gcc/tree-ssa-ccp.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-ssa-ccp.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-ssa-ccp.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-ssa-ccp.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -728,7 +728,7 @@
do_dbg_cnt ();
&& tree_int_cst_equal (gimple_assign_rhs2 (offset_def),
Index: gcc/haifa-sched.c
===================================================================
---- gcc/haifa-sched.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/haifa-sched.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/haifa-sched.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/haifa-sched.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -718,7 +718,7 @@
if (current_nr_blocks > 1)
setup_ref_regs (PATTERN (insn));
initiate_reg_pressure_info (df_get_live_in (bb));
#ifdef EH_RETURN_DATA_REGNO
-@@ -1695,6 +1695,7 @@
+@@ -1586,7 +1586,8 @@
+ max_reg_pressure[ira_reg_class_cover[i]]
+ = curr_reg_pressure[ira_reg_class_cover[i]];
+ for (insn = NEXT_INSN (after);
+- insn != NULL_RTX && BLOCK_FOR_INSN (insn) == BLOCK_FOR_INSN (after);
++ insn != NULL_RTX && ! BARRIER_P (insn)
++ && BLOCK_FOR_INSN (insn) == BLOCK_FOR_INSN (after);
+ insn = NEXT_INSN (insn))
+ if (NONDEBUG_INSN_P (insn))
+ {
+@@ -1695,6 +1696,7 @@
sd_iterator_cond (&sd_it, &dep);)
{
rtx dbg = DEP_PRO (dep);
gcc_assert (DEBUG_INSN_P (dbg));
-@@ -1716,6 +1717,20 @@
+@@ -1716,6 +1718,20 @@
INSN_VAR_LOCATION_LOC (dbg) = gen_rtx_UNKNOWN_VAR_LOC ();
df_insn_rescan (dbg);
expected to be released before backward deps. */
Index: gcc/tree-ssa-loop-ivopts.c
===================================================================
---- gcc/tree-ssa-loop-ivopts.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-ssa-loop-ivopts.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-ssa-loop-ivopts.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-ssa-loop-ivopts.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1537,17 +1537,19 @@
if (mode != BLKmode)
}
return false;
+@@ -3851,6 +3853,7 @@
+ aratio = ratio > 0 ? ratio : -ratio;
+ if (aratio != 1)
+ cost.cost += multiply_by_cost (aratio, TYPE_MODE (ctype), speed);
++ return cost;
+
+ fallback:
+ if (can_autoinc)
Index: gcc/lto-streamer-out.c
===================================================================
---- gcc/lto-streamer-out.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/lto-streamer-out.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/lto-streamer-out.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/lto-streamer-out.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -388,6 +388,7 @@
struct fixed_value fv = TREE_FIXED_CST (expr);
bp_pack_value (bp, fv.data.low, HOST_BITS_PER_WIDE_INT);
output_string (ob, ob->main_stream, gimple_asm_string (stmt));
/* Fallthru */
+Index: gcc/tree-ssa-dom.c
+===================================================================
+--- gcc/tree-ssa-dom.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-ssa-dom.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1588,7 +1588,7 @@
+ edge_info = allocate_edge_info (false_edge);
+ record_conditions (edge_info, inverted, cond);
+
+- if (code == NE_EXPR)
++ if (TREE_CODE (inverted) == EQ_EXPR)
+ {
+ edge_info->lhs = op1;
+ edge_info->rhs = op0;
+@@ -1615,7 +1615,7 @@
+ edge_info = allocate_edge_info (false_edge);
+ record_conditions (edge_info, inverted, cond);
+
+- if (TREE_CODE (cond) == NE_EXPR)
++ if (TREE_CODE (inverted) == EQ_EXPR)
+ {
+ edge_info->lhs = op0;
+ edge_info->rhs = op1;
Index: gcc/tree-ssa-propagate.c
===================================================================
---- gcc/tree-ssa-propagate.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-ssa-propagate.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-ssa-propagate.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-ssa-propagate.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -967,10 +967,13 @@
If FOLD_FN is non-NULL the function will be invoked on all statements
before propagating values for pass specific simplification.
&& !stmt_could_throw_p (stmt)
Index: gcc/tree-ssa-propagate.h
===================================================================
---- gcc/tree-ssa-propagate.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-ssa-propagate.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-ssa-propagate.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-ssa-propagate.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -120,6 +120,6 @@
void move_ssa_defining_stmt_for_defs (gimple, gimple);
bool update_call_from_tree (gimple_stmt_iterator *, tree);
#endif /* _TREE_SSA_PROPAGATE_H */
Index: gcc/tree-ssa-alias.c
===================================================================
---- gcc/tree-ssa-alias.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-ssa-alias.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-ssa-alias.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-ssa-alias.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -561,13 +561,21 @@
/* Determine if the two component references REF1 and REF2 which are
return true;
}
-@@ -909,14 +937,18 @@
+@@ -772,18 +800,20 @@
+ bool var1_p, var2_p, ind1_p, ind2_p;
+ alias_set_type set;
+
++#ifdef ENABLE_CHECKING
+ gcc_assert ((!ref1->ref
+- || SSA_VAR_P (ref1->ref)
++ || TREE_CODE (ref1->ref) == SSA_NAME
++ || DECL_P (ref1->ref)
+ || handled_component_p (ref1->ref)
+ || INDIRECT_REF_P (ref1->ref)
+- || TREE_CODE (ref1->ref) == TARGET_MEM_REF
+- || TREE_CODE (ref1->ref) == CONST_DECL)
++ || TREE_CODE (ref1->ref) == TARGET_MEM_REF)
+ && (!ref2->ref
+- || SSA_VAR_P (ref2->ref)
++ || TREE_CODE (ref2->ref) == SSA_NAME
++ || DECL_P (ref2->ref)
+ || handled_component_p (ref2->ref)
+ || INDIRECT_REF_P (ref2->ref)
+- || TREE_CODE (ref2->ref) == TARGET_MEM_REF
+- || TREE_CODE (ref2->ref) == CONST_DECL));
++ || TREE_CODE (ref2->ref) == TARGET_MEM_REF));
++#endif
+
+ /* Decompose the references into their base objects and the access. */
+ base1 = ao_ref_base (ref1);
+@@ -804,10 +834,13 @@
+ || is_gimple_min_invariant (base2))
+ return false;
+
+- /* We can end up refering to code via function decls. As we likely
+- do not properly track code aliases conservatively bail out. */
++ /* We can end up refering to code via function and label decls.
++ As we likely do not properly track code aliases conservatively
++ bail out. */
+ if (TREE_CODE (base1) == FUNCTION_DECL
+- || TREE_CODE (base2) == FUNCTION_DECL)
++ || TREE_CODE (base2) == FUNCTION_DECL
++ || TREE_CODE (base1) == LABEL_DECL
++ || TREE_CODE (base2) == LABEL_DECL)
+ return true;
+
+ /* Defer to simple offset based disambiguation if we have
+@@ -909,14 +942,18 @@
set = tbaa_p ? -1 : 0;
if (var1_p && ind2_p)
return indirect_ref_may_alias_decl_p (ref2->ref, TREE_OPERAND (base2, 0),
gcc_unreachable ();
}
+@@ -1398,11 +1435,15 @@
+
+ return call_may_clobber_ref_p_1 (stmt, ref);
+ }
+- else if (is_gimple_assign (stmt))
++ else if (gimple_assign_single_p (stmt))
+ {
+- ao_ref r;
+- ao_ref_init (&r, gimple_assign_lhs (stmt));
+- return refs_may_alias_p_1 (ref, &r, true);
++ tree lhs = gimple_assign_lhs (stmt);
++ if (!is_gimple_reg (lhs))
++ {
++ ao_ref r;
++ ao_ref_init (&r, gimple_assign_lhs (stmt));
++ return refs_may_alias_p_1 (ref, &r, true);
++ }
+ }
+ else if (gimple_code (stmt) == GIMPLE_ASM)
+ return true;
+Index: gcc/ipa-inline.c
+===================================================================
+--- gcc/ipa-inline.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/ipa-inline.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -305,8 +305,6 @@
+ struct cgraph_node *to = NULL, *what;
+ struct cgraph_edge *curr = e;
+ int freq;
+- bool duplicate = false;
+- int orig_size = e->callee->global.size;
+
+ gcc_assert (e->inline_failed);
+ e->inline_failed = CIF_OK;
+@@ -315,10 +313,6 @@
+ DECL_POSSIBLY_INLINED (e->callee->decl) = true;
+ e->callee->global.inlined = true;
+
+- if (e->callee->callers->next_caller
+- || !cgraph_can_remove_if_no_direct_calls_p (e->callee)
+- || e->callee->same_comdat_group)
+- duplicate = true;
+ cgraph_clone_inlined_nodes (e, true, update_original);
+
+ what = e->callee;
+@@ -336,8 +330,6 @@
+ gcc_assert (what->global.inlined_to == to);
+ if (new_size > old_size)
+ overall_size += new_size - old_size;
+- if (!duplicate)
+- overall_size -= orig_size;
+ ncalls_inlined++;
+
+ if (flag_indirect_inlining)
+@@ -544,23 +536,57 @@
+ of the function or function body size. */
+
+ static int
+-cgraph_edge_badness (struct cgraph_edge *edge)
++cgraph_edge_badness (struct cgraph_edge *edge, bool dump)
+ {
+ gcov_type badness;
+ int growth =
+- cgraph_estimate_size_after_inlining (1, edge->caller, edge->callee);
++ (cgraph_estimate_size_after_inlining (1, edge->caller, edge->callee)
++ - edge->caller->global.size);
+
+- growth -= edge->caller->global.size;
++ if (edge->callee->local.disregard_inline_limits)
++ return INT_MIN;
+
++ if (dump)
++ {
++ fprintf (dump_file, " Badness calculcation for %s -> %s\n",
++ cgraph_node_name (edge->caller),
++ cgraph_node_name (edge->callee));
++ fprintf (dump_file, " growth %i, time %i-%i, size %i-%i\n",
++ growth,
++ edge->callee->global.time,
++ inline_summary (edge->callee)->time_inlining_benefit,
++ edge->callee->global.size,
++ inline_summary (edge->callee)->size_inlining_benefit);
++ }
++
+ /* Always prefer inlining saving code size. */
+ if (growth <= 0)
+- badness = INT_MIN - growth;
++ {
++ badness = INT_MIN - growth;
++ if (dump)
++ fprintf (dump_file, " %i: Growth %i < 0\n", (int) badness,
++ growth);
++ }
+
+ /* When profiling is available, base priorities -(#calls / growth).
+ So we optimize for overall number of "executed" inlined calls. */
+ else if (max_count)
+- badness = ((int)((double)edge->count * INT_MIN / max_count / (max_benefit + 1))
+- * (inline_summary (edge->callee)->time_inlining_benefit + 1)) / growth;
++ {
++ badness =
++ ((int)
++ ((double) edge->count * INT_MIN / max_count / (max_benefit + 1)) *
++ (inline_summary (edge->callee)->time_inlining_benefit + 1)) / growth;
++ if (dump)
++ {
++ fprintf (dump_file,
++ " %i (relative %f): profile info. Relative count %f"
++ " * Relative benefit %f\n",
++ (int) badness, (double) badness / INT_MIN,
++ (double) edge->count / max_count,
++ (double) (inline_summary (edge->callee)->
++ time_inlining_benefit + 1) / (max_benefit + 1));
++ }
++ }
+
+ /* When function local profile is available, base priorities on
+ growth / frequency, so we optimize for overall frequency of inlined
+@@ -574,9 +600,13 @@
+ else if (flag_guess_branch_prob)
+ {
+ int div = edge->frequency * 100 / CGRAPH_FREQ_BASE + 1;
++ int benefitperc;
++ int growth_for_all;
+ badness = growth * 10000;
+- div *= MIN (100 * inline_summary (edge->callee)->time_inlining_benefit
+- / (edge->callee->global.time + 1) + 1, 100);
++ benefitperc =
++ MIN (100 * inline_summary (edge->callee)->time_inlining_benefit /
++ (edge->callee->global.time + 1) +1, 100);
++ div *= benefitperc;
+
+
+ /* Decrease badness if call is nested. */
+@@ -587,9 +617,17 @@
+ div = 1;
+ if (badness > 0)
+ badness /= div;
+- badness += cgraph_estimate_growth (edge->callee);
++ growth_for_all = cgraph_estimate_growth (edge->callee);
++ badness += growth_for_all;
+ if (badness > INT_MAX)
+- badness = INT_MAX;
++ badness = INT_MAX;
++ if (dump)
++ {
++ fprintf (dump_file,
++ " %i: guessed profile. frequency %i, overall growth %i,"
++ " benefit %i%%, divisor %i\n",
++ (int) badness, edge->frequency, growth_for_all, benefitperc, div);
++ }
+ }
+ /* When function local profile is not available or it does not give
+ useful information (ie frequency is zero), base the cost on
+@@ -604,10 +642,14 @@
+ if (badness > 0)
+ badness >>= nest;
+ else
+- {
++ {
+ badness <<= nest;
+- }
++ }
++ if (dump)
++ fprintf (dump_file, " %i: no profile. nest %i\n", (int) badness,
++ nest);
+ }
++
+ /* Make recursive inlining happen always after other inlining is done. */
+ if (cgraph_recursive_inlining_p (edge->caller, edge->callee, NULL))
+ return badness + 1;
+@@ -634,10 +676,16 @@
+
+ if (!node->local.inlinable)
+ return;
++ /* See if there is something to do. */
++ for (edge = node->callers; edge; edge = edge->next_caller)
++ if (edge->inline_failed)
++ break;
++ if (!edge)
++ return;
+ /* Prune out edges we won't inline into anymore. */
+ if (!cgraph_default_inline_p (node, &failed_reason))
+ {
+- for (edge = node->callers; edge; edge = edge->next_caller)
++ for (; edge; edge = edge->next_caller)
+ if (edge->aux)
+ {
+ fibheap_delete_node (heap, (fibnode_t) edge->aux);
+@@ -648,10 +696,10 @@
+ return;
+ }
+
+- for (edge = node->callers; edge; edge = edge->next_caller)
++ for (; edge; edge = edge->next_caller)
+ if (edge->inline_failed)
+ {
+- int badness = cgraph_edge_badness (edge);
++ int badness = cgraph_edge_badness (edge, false);
+ if (edge->aux)
+ {
+ fibnode_t n = (fibnode_t) edge->aux;
+@@ -659,29 +707,55 @@
+ if (n->key == badness)
+ continue;
+
+- /* fibheap_replace_key only increase the keys. */
+- if (fibheap_replace_key (heap, n, badness))
+- continue;
+- fibheap_delete_node (heap, (fibnode_t) edge->aux);
++ /* fibheap_replace_key only decrease the keys.
++ When we increase the key we do not update heap
++ and instead re-insert the element once it becomes
++ a minium of heap. */
++ if (badness < n->key)
++ {
++ fibheap_replace_key (heap, n, badness);
++ gcc_assert (n->key == badness);
++ continue;
++ }
+ }
+- edge->aux = fibheap_insert (heap, badness, edge);
++ else
++ edge->aux = fibheap_insert (heap, badness, edge);
+ }
+ }
+
+-/* Recompute heap nodes for each of caller edges of each of callees. */
++/* Recompute heap nodes for each of caller edges of each of callees.
++ Walk recursively into all inline clones. */
+
+ static void
+ update_callee_keys (fibheap_t heap, struct cgraph_node *node,
+ bitmap updated_nodes)
+ {
+- struct cgraph_edge *e;
++ struct cgraph_edge *e = node->callees;
+ node->global.estimated_growth = INT_MIN;
+
+- for (e = node->callees; e; e = e->next_callee)
+- if (e->inline_failed)
+- update_caller_keys (heap, e->callee, updated_nodes);
+- else if (!e->inline_failed)
+- update_callee_keys (heap, e->callee, updated_nodes);
++ if (!e)
++ return;
++ while (true)
++ if (!e->inline_failed && e->callee->callees)
++ e = e->callee->callees;
++ else
++ {
++ if (e->inline_failed)
++ update_caller_keys (heap, e->callee, updated_nodes);
++ if (e->next_callee)
++ e = e->next_callee;
++ else
++ {
++ do
++ {
++ if (e->caller == node)
++ return;
++ e = e->caller->callers;
++ }
++ while (!e->next_callee);
++ e = e->next_callee;
++ }
++ }
+ }
+
+ /* Enqueue all recursive calls from NODE into priority queue depending on
+@@ -883,7 +957,9 @@
+ struct cgraph_edge *edge = VEC_pop (cgraph_edge_p, new_edges);
+
+ gcc_assert (!edge->aux);
+- edge->aux = fibheap_insert (heap, cgraph_edge_badness (edge), edge);
++ if (edge->callee->local.inlinable
++ && cgraph_default_inline_p (edge->callee, &edge->inline_failed))
++ edge->aux = fibheap_insert (heap, cgraph_edge_badness (edge, false), edge);
+ }
+ }
+
+@@ -933,7 +1009,7 @@
+ if (edge->inline_failed)
+ {
+ gcc_assert (!edge->aux);
+- edge->aux = fibheap_insert (heap, cgraph_edge_badness (edge), edge);
++ edge->aux = fibheap_insert (heap, cgraph_edge_badness (edge, false), edge);
+ }
+ }
+
+@@ -941,16 +1017,37 @@
+ min_size = overall_size;
+
+ while (overall_size <= max_size
+- && (edge = (struct cgraph_edge *) fibheap_extract_min (heap)))
++ && !fibheap_empty (heap))
+ {
+ int old_size = overall_size;
+- struct cgraph_node *where;
+- int growth =
+- cgraph_estimate_size_after_inlining (1, edge->caller, edge->callee);
++ struct cgraph_node *where, *callee;
++ int badness = fibheap_min_key (heap);
++ int current_badness;
++ int growth;
+ cgraph_inline_failed_t not_good = CIF_OK;
+
+- growth -= edge->caller->global.size;
++ edge = (struct cgraph_edge *) fibheap_extract_min (heap);
++ gcc_assert (edge->aux);
++ edge->aux = NULL;
++ if (!edge->inline_failed)
++ continue;
+
++ /* When updating the edge costs, we only decrease badness in the keys.
++ When the badness increase, we keep the heap as it is and re-insert
++ key now. */
++ current_badness = cgraph_edge_badness (edge, false);
++ gcc_assert (current_badness >= badness);
++ if (current_badness != badness)
++ {
++ edge->aux = fibheap_insert (heap, current_badness, edge);
++ continue;
++ }
++
++ callee = edge->callee;
++
++ growth = (cgraph_estimate_size_after_inlining (1, edge->caller, edge->callee)
++ - edge->caller->global.size);
++
+ if (dump_file)
+ {
+ fprintf (dump_file,
+@@ -962,18 +1059,17 @@
+ " Estimated growth after inlined into all callees is %+i insns.\n"
+ " Estimated badness is %i, frequency %.2f.\n",
+ cgraph_node_name (edge->caller),
+- gimple_filename ((const_gimple) edge->call_stmt),
+- gimple_lineno ((const_gimple) edge->call_stmt),
++ flag_wpa ? "unknown"
++ : gimple_filename ((const_gimple) edge->call_stmt),
++ flag_wpa ? -1 : gimple_lineno ((const_gimple) edge->call_stmt),
+ cgraph_estimate_growth (edge->callee),
+- cgraph_edge_badness (edge),
++ badness,
+ edge->frequency / (double)CGRAPH_FREQ_BASE);
+ if (edge->count)
+ fprintf (dump_file," Called "HOST_WIDEST_INT_PRINT_DEC"x\n", edge->count);
++ if (dump_flags & TDF_DETAILS)
++ cgraph_edge_badness (edge, true);
+ }
+- gcc_assert (edge->aux);
+- edge->aux = NULL;
+- if (!edge->inline_failed)
+- continue;
+
+ /* When not having profile info ready we don't weight by any way the
+ position of call in procedure itself. This means if call of
+@@ -1091,6 +1187,11 @@
+ called by function we inlined (since number of it inlinable callers
+ might change). */
+ update_caller_keys (heap, where, updated_nodes);
++
++ /* We removed one call of the function we just inlined. If offline
++ copy is still needed, be sure to update the keys. */
++ if (callee != where && !callee->global.inlined_to)
++ update_caller_keys (heap, callee, updated_nodes);
+ bitmap_clear (updated_nodes);
+
+ if (dump_file)
Index: gcc/config.in
===================================================================
---- gcc/config.in (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config.in (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config.in (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config.in (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -309,8 +309,20 @@
#endif
# undef _ALL_SOURCE
Index: gcc/dwarf2out.c
===================================================================
---- gcc/dwarf2out.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/dwarf2out.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/dwarf2out.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/dwarf2out.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1040,7 +1040,7 @@
cfi = new_cfi ();
{
/* Construct a "DW_CFA_def_cfa_register <register>" instruction,
indicating the CFA register has changed to <register> but the
+@@ -12014,10 +12015,6 @@
+
+ base_type_result = new_die (DW_TAG_base_type, comp_unit_die, type);
+
+- /* This probably indicates a bug. */
+- if (! TYPE_NAME (type))
+- add_name_attribute (base_type_result, "__unknown__");
+-
+ add_AT_unsigned (base_type_result, DW_AT_byte_size,
+ int_size_in_bytes (type));
+ add_AT_unsigned (base_type_result, DW_AT_encoding, encoding);
+@@ -12135,6 +12132,21 @@
+ ((is_const_type ? TYPE_QUAL_CONST : 0)
+ | (is_volatile_type ? TYPE_QUAL_VOLATILE : 0)));
+
++ if (qualified_type == sizetype
++ && TYPE_NAME (qualified_type)
++ && TREE_CODE (TYPE_NAME (qualified_type)) == TYPE_DECL)
++ {
++#ifdef ENABLE_CHECKING
++ gcc_assert (TREE_CODE (TREE_TYPE (TYPE_NAME (qualified_type)))
++ == INTEGER_TYPE
++ && TYPE_PRECISION (TREE_TYPE (TYPE_NAME (qualified_type)))
++ == TYPE_PRECISION (qualified_type)
++ && TYPE_UNSIGNED (TREE_TYPE (TYPE_NAME (qualified_type)))
++ == TYPE_UNSIGNED (qualified_type));
++#endif
++ qualified_type = TREE_TYPE (TYPE_NAME (qualified_type));
++ }
++
+ /* If we do, then we can just use its DIE, if it exists. */
+ if (qualified_type)
+ {
+@@ -12246,6 +12258,9 @@
+ name = DECL_NAME (name);
+ add_name_attribute (mod_type_die, IDENTIFIER_POINTER (name));
+ }
++ /* This probably indicates a bug. */
++ else if (mod_type_die && mod_type_die->die_tag == DW_TAG_base_type)
++ add_name_attribute (mod_type_die, "__unknown__");
+
+ if (qualified_type)
+ equate_type_number_to_die (qualified_type, mod_type_die);
+@@ -12508,6 +12523,26 @@
+ if (REGNO (rtl) >= FIRST_PSEUDO_REGISTER)
+ return 0;
+
++ /* We only use "frame base" when we're sure we're talking about the
++ post-prologue local stack frame. We do this by *not* running
++ register elimination until this point, and recognizing the special
++ argument pointer and soft frame pointer rtx's.
++ Use DW_OP_fbreg offset DW_OP_stack_value in this case. */
++ if ((rtl == arg_pointer_rtx || rtl == frame_pointer_rtx)
++ && eliminate_regs (rtl, VOIDmode, NULL_RTX) != rtl)
++ {
++ dw_loc_descr_ref result = NULL;
++
++ if (dwarf_version >= 4 || !dwarf_strict)
++ {
++ result = mem_loc_descriptor (rtl, VOIDmode, initialized);
++ if (result)
++ add_loc_descr (&result,
++ new_loc_descr (DW_OP_stack_value, 0, 0));
++ }
++ return result;
++ }
++
+ regs = targetm.dwarf_register_span (rtl);
+
+ if (hard_regno_nregs[REGNO (rtl)][GET_MODE (rtl)] > 1 || regs)
+@@ -19747,10 +19782,7 @@
+
+ if (TREE_CODE (decl) == TYPE_DECL || TREE_CODE (decl) == CONST_DECL)
+ {
+- if (is_base_type (TREE_TYPE (decl)))
+- at_import_die = base_type_die (TREE_TYPE (decl));
+- else
+- at_import_die = force_type_die (TREE_TYPE (decl));
++ at_import_die = force_type_die (TREE_TYPE (decl));
+ /* For namespace N { typedef void T; } using N::T; base_type_die
+ returns NULL, but DW_TAG_imported_declaration requires
+ the DW_AT_import tag. Force creation of DW_TAG_typedef. */
Index: gcc/expr.c
===================================================================
---- gcc/expr.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/expr.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/expr.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/expr.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4272,8 +4272,19 @@
offset));
}
{
Index: gcc/opts.c
===================================================================
---- gcc/opts.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/opts.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/opts.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/opts.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -616,24 +616,30 @@
{
if (lang_hooks.handle_option (opt_index, arg, value) == 0)
/* Allow default optimizations to be specified on a per-machine basis. */
Index: gcc/unwind-dw2.c
===================================================================
---- gcc/unwind-dw2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/unwind-dw2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/unwind-dw2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/unwind-dw2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1473,7 +1473,8 @@
context->ra = __builtin_extract_return_addr (outer_ra);
}
/* This function is called during unwinding. It is intended as a hook
for a debugger to intercept exceptions. CFA is the CFA of the
+Index: gcc/gimple-iterator.c
+===================================================================
+--- gcc/gimple-iterator.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/gimple-iterator.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -381,8 +381,12 @@
+ maybe_clean_or_replace_eh_stmt (orig_stmt, stmt);
+
+ gimple_duplicate_stmt_histograms (cfun, stmt, cfun, orig_stmt);
++
++ /* Free all the data flow information for ORIG_STMT. */
++ gimple_set_bb (orig_stmt, NULL);
+ gimple_remove_stmt_histograms (cfun, orig_stmt);
+ delink_stmt_imm_use (orig_stmt);
++
+ *gsi_stmt_ptr (gsi) = stmt;
+ gimple_set_modified (stmt, true);
+ update_modified_stmt (stmt);
Index: gcc/ada/ChangeLog
===================================================================
---- gcc/ada/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/ada/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/ada/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/ada/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,8 @@
+2010-04-25 Eric Botcazou <ebotcazou@adacore.com>
+
* GCC 4.5.0 released.
Index: gcc/ada/gcc-interface/trans.c
===================================================================
---- gcc/ada/gcc-interface/trans.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/ada/gcc-interface/trans.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/ada/gcc-interface/trans.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/ada/gcc-interface/trans.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4563,10 +4563,12 @@
gnu_result
= build_binary_op (MODIFY_EXPR, NULL_TREE, gnu_lhs, gnu_rhs);
tree to, from, size, to_ptr, from_ptr, t;
Index: gcc/sel-sched-ir.c
===================================================================
---- gcc/sel-sched-ir.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/sel-sched-ir.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/sel-sched-ir.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/sel-sched-ir.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -426,7 +426,7 @@
}
\f
/* Unconditional jump is just a transfer of control flow.
Index: gcc/lto-streamer-in.c
===================================================================
---- gcc/lto-streamer-in.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/lto-streamer-in.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/lto-streamer-in.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/lto-streamer-in.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1047,6 +1047,7 @@
stmt->gimple_asm.ni = lto_input_uleb128 (ib);
stmt->gimple_asm.no = lto_input_uleb128 (ib);
TYPE_DEBUG_REPRESENTATION_TYPE (expr) = lto_input_tree (ib, data_in);
Index: gcc/sel-sched-ir.h
===================================================================
---- gcc/sel-sched-ir.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/sel-sched-ir.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/sel-sched-ir.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/sel-sched-ir.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -727,7 +727,7 @@
htab_t transformed_insns;
to handle sched group instructions. If it is non-null, then it points
Index: gcc/fortran/openmp.c
===================================================================
---- gcc/fortran/openmp.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/openmp.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/openmp.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/openmp.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,5 @@
/* OpenMP directive matching and resolving.
- Copyright (C) 2005, 2006, 2007, 2008
Index: gcc/fortran/interface.c
===================================================================
---- gcc/fortran/interface.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/interface.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/interface.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/interface.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1582,8 +1582,8 @@
|| sym->as->lower[i]->expr_type != EXPR_CONSTANT)
return 0;
return strlen*elements;
Index: gcc/fortran/intrinsic.c
===================================================================
---- gcc/fortran/intrinsic.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/intrinsic.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/intrinsic.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/intrinsic.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -956,17 +956,14 @@
/* See if this intrinsic is allowed in the current standard. */
if (gfc_check_intrinsic_standard (isym, &symstd, false, loc) == FAILURE)
f->name, name, where);
return FAILURE;
}
+Index: gcc/fortran/trans-expr.c
+===================================================================
+--- gcc/fortran/trans-expr.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/trans-expr.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -4531,6 +4531,8 @@
+ /* Substitute a scalar expression evaluated outside the scalarization
+ loop. */
+ se->expr = se->ss->data.scalar.expr;
++ if (se->ss->type == GFC_SS_REFERENCE)
++ se->expr = gfc_build_addr_expr (NULL_TREE, se->expr);
+ se->string_length = se->ss->string_length;
+ gfc_advance_se_ss_chain (se);
+ return;
+@@ -4651,9 +4653,9 @@
+ if (se->ss && se->ss->expr == expr
+ && se->ss->type == GFC_SS_REFERENCE)
+ {
+- se->expr = se->ss->data.scalar.expr;
+- se->string_length = se->ss->string_length;
+- gfc_advance_se_ss_chain (se);
++ /* Returns a reference to the scalar evaluated outside the loop
++ for this case. */
++ gfc_conv_expr (se, expr);
+ return;
+ }
+
+@@ -4998,41 +5000,40 @@
+ }
+
+
+-/* Try to translate array(:) = func (...), where func is a transformational
+- array function, without using a temporary. Returns NULL is this isn't the
+- case. */
++/* There are quite a lot of restrictions on the optimisation in using an
++ array function assign without a temporary. */
+
+-static tree
+-gfc_trans_arrayfunc_assign (gfc_expr * expr1, gfc_expr * expr2)
++static bool
++arrayfunc_assign_needs_temporary (gfc_expr * expr1, gfc_expr * expr2)
+ {
+- gfc_se se;
+- gfc_ss *ss;
+ gfc_ref * ref;
+ bool seen_array_ref;
+ bool c = false;
+- gfc_component *comp = NULL;
++ gfc_symbol *sym = expr1->symtree->n.sym;
+
+ /* The caller has already checked rank>0 and expr_type == EXPR_FUNCTION. */
+ if (expr2->value.function.isym && !gfc_is_intrinsic_libcall (expr2))
+- return NULL;
++ return true;
+
+- /* Elemental functions don't need a temporary anyway. */
++ /* Elemental functions are scalarized so that they don't need a
++ temporary in gfc_trans_assignment_1, so return a true. Otherwise,
++ they would need special treatment in gfc_trans_arrayfunc_assign. */
+ if (expr2->value.function.esym != NULL
+ && expr2->value.function.esym->attr.elemental)
+- return NULL;
++ return true;
+
+- /* Fail if rhs is not FULL or a contiguous section. */
++ /* Need a temporary if rhs is not FULL or a contiguous section. */
+ if (expr1->ref && !(gfc_full_array_ref_p (expr1->ref, &c) || c))
+- return NULL;
++ return true;
+
+- /* Fail if EXPR1 can't be expressed as a descriptor. */
++ /* Need a temporary if EXPR1 can't be expressed as a descriptor. */
+ if (gfc_ref_needs_temporary_p (expr1->ref))
+- return NULL;
++ return true;
+
+ /* Functions returning pointers need temporaries. */
+ if (expr2->symtree->n.sym->attr.pointer
+ || expr2->symtree->n.sym->attr.allocatable)
+- return NULL;
++ return true;
+
+ /* Character array functions need temporaries unless the
+ character lengths are the same. */
+@@ -5040,15 +5041,15 @@
+ {
+ if (expr1->ts.u.cl->length == NULL
+ || expr1->ts.u.cl->length->expr_type != EXPR_CONSTANT)
+- return NULL;
++ return true;
+
+ if (expr2->ts.u.cl->length == NULL
+ || expr2->ts.u.cl->length->expr_type != EXPR_CONSTANT)
+- return NULL;
++ return true;
+
+ if (mpz_cmp (expr1->ts.u.cl->length->value.integer,
+ expr2->ts.u.cl->length->value.integer) != 0)
+- return NULL;
++ return true;
+ }
+
+ /* Check that no LHS component references appear during an array
+@@ -5062,7 +5063,7 @@
+ if (ref->type == REF_ARRAY)
+ seen_array_ref= true;
+ else if (ref->type == REF_COMPONENT && seen_array_ref)
+- return NULL;
++ return true;
+ }
+
+ /* Check for a dependency. */
+@@ -5070,6 +5071,62 @@
+ expr2->value.function.esym,
+ expr2->value.function.actual,
+ NOT_ELEMENTAL))
++ return true;
++
++ /* If we have reached here with an intrinsic function, we do not
++ need a temporary. */
++ if (expr2->value.function.isym)
++ return false;
++
++ /* If the LHS is a dummy, we need a temporary if it is not
++ INTENT(OUT). */
++ if (sym->attr.dummy && sym->attr.intent != INTENT_OUT)
++ return true;
++
++ /* A PURE function can unconditionally be called without a temporary. */
++ if (expr2->value.function.esym != NULL
++ && expr2->value.function.esym->attr.pure)
++ return false;
++
++ /* TODO a function that could correctly be declared PURE but is not
++ could do with returning false as well. */
++
++ if (!sym->attr.use_assoc
++ && !sym->attr.in_common
++ && !sym->attr.pointer
++ && !sym->attr.target
++ && expr2->value.function.esym)
++ {
++ /* A temporary is not needed if the function is not contained and
++ the variable is local or host associated and not a pointer or
++ a target. */
++ if (!expr2->value.function.esym->attr.contained)
++ return false;
++
++ /* A temporary is not needed if the variable is local and not
++ a pointer, a target or a result. */
++ if (sym->ns->parent
++ && expr2->value.function.esym->ns == sym->ns->parent)
++ return false;
++ }
++
++ /* Default to temporary use. */
++ return true;
++}
++
++
++/* Try to translate array(:) = func (...), where func is a transformational
++ array function, without using a temporary. Returns NULL if this isn't the
++ case. */
++
++static tree
++gfc_trans_arrayfunc_assign (gfc_expr * expr1, gfc_expr * expr2)
++{
++ gfc_se se;
++ gfc_ss *ss;
++ gfc_component *comp = NULL;
++
++ if (arrayfunc_assign_needs_temporary (expr1, expr2))
+ return NULL;
+
+ /* The frontend doesn't seem to bother filling in expr->symtree for intrinsic
Index: gcc/fortran/trans-array.c
===================================================================
---- gcc/fortran/trans-array.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/trans-array.c (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -2316,10 +2316,6 @@
+--- gcc/fortran/trans-array.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/trans-array.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -2046,9 +2046,10 @@
+ break;
+
+ case GFC_SS_REFERENCE:
+- /* Scalar reference. Evaluate this now. */
++ /* Scalar argument to elemental procedure. Evaluate this
++ now. */
+ gfc_init_se (&se, NULL);
+- gfc_conv_expr_reference (&se, ss->expr);
++ gfc_conv_expr (&se, ss->expr);
+ gfc_add_block_to_block (&loop->pre, &se.pre);
+ gfc_add_block_to_block (&loop->post, &se.post);
+
+@@ -2316,10 +2317,6 @@
&& se->loop->ss->loop_chain->expr->symtree)
name = se->loop->ss->loop_chain->expr->symtree->name;
if (!name && se->loop && se->loop->ss && se->loop->ss->expr)
{
if (se->loop->ss->expr->expr_type == EXPR_FUNCTION
-@@ -2331,6 +2327,9 @@
+@@ -2331,6 +2328,9 @@
name = "unnamed constant";
}
/* If upper bound is present, include both bounds in the error message. */
if (check_upper)
{
-@@ -3355,13 +3354,15 @@
+@@ -3355,13 +3355,15 @@
if (size[n])
{
tmp3 = fold_build2 (NE_EXPR, boolean_type_node, tmp, size[n]);
gfc_free (msg);
}
else
-@@ -4608,15 +4609,26 @@
+@@ -4608,15 +4610,26 @@
{
/* Check (ubound(a) - lbound(a) == ubound(b) - lbound(b)). */
char * msg;
}
Index: gcc/fortran/intrinsic.h
===================================================================
---- gcc/fortran/intrinsic.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/intrinsic.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/intrinsic.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/intrinsic.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -40,7 +40,7 @@
gfc_try gfc_check_atan_2 (gfc_expr *, gfc_expr *);
gfc_try gfc_check_atan2 (gfc_expr *, gfc_expr *);
gfc_try gfc_check_ieor (gfc_expr *, gfc_expr *);
Index: gcc/fortran/gfortran.texi
===================================================================
---- gcc/fortran/gfortran.texi (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/gfortran.texi (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/gfortran.texi (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/gfortran.texi (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,7 +1,7 @@
\input texinfo @c -*-texinfo-*-
@c %**start of header
@c ---------------------------------------------------------------------
Index: gcc/fortran/dump-parse-tree.c
===================================================================
---- gcc/fortran/dump-parse-tree.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/dump-parse-tree.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/dump-parse-tree.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/dump-parse-tree.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -848,7 +848,7 @@
}
}
fputs ("Formal namespace", dumpfile);
Index: gcc/fortran/trans-openmp.c
===================================================================
---- gcc/fortran/trans-openmp.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/trans-openmp.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/trans-openmp.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/trans-openmp.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -57,7 +57,8 @@
if (GFC_POINTER_TYPE_P (type))
return false;
bool
Index: gcc/fortran/ChangeLog
===================================================================
---- gcc/fortran/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -1,3 +1,149 @@
+--- gcc/fortran/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,3 +1,177 @@
++2010-06-29 Paul Thomas <pault@gcc.gnu.org>
++
++ PR fortran/44582
++ * trans-expr.c (arrayfunc_assign_needs_temporary): New function
++ to determine if a function assignment can be made without a
++ temporary.
++ (gfc_trans_arrayfunc_assign): Move all the conditions that
++ suppress the direct function call to the above new functon and
++ call it.
++
++2010-06-27 Paul Thomas <pault@gcc.gnu.org>
++
++ PR fortran/43841
++ PR fortran/43843
++ * trans-expr.c (gfc_conv_expr): Supply an address expression for
++ GFC_SS_REFERENCE.
++ (gfc_conv_expr_reference): Call gfc_conv_expr and return for
++ GFC_SS_REFERENCE.
++ * trans-array.c (gfc_add_loop_ss_code): Store the value rather
++ than the address of a GFC_SS_REFERENCE.
++ * trans.h : Change comment on GFC_SS_REFERENCE.
++
++2010-06-22 Tobias Burnus <burnus@net-b.de>
++
++ PR fortran/44556
++ * resolve.c (resolve_allocate_deallocate): Properly check
++ part-refs in stat=/errmsg= for invalid use.
++
+2010-06-15 Tobias Burnus <burnus@net-b.de>
+
+ * gfc-internals.texi (copyrights-gfortran): Fix copyright year format.
* GCC 4.5.0 released.
Index: gcc/fortran/expr.c
===================================================================
---- gcc/fortran/expr.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/expr.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/expr.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/expr.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -782,6 +782,8 @@
break;
{
Index: gcc/fortran/trans.c
===================================================================
---- gcc/fortran/trans.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/trans.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/trans.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/trans.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -47,7 +47,6 @@
static gfc_file *gfc_current_backend_file;
Index: gcc/fortran/trans-types.c
===================================================================
---- gcc/fortran/trans-types.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/trans-types.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/trans-types.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/trans-types.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1793,6 +1793,9 @@
restricted);
byref = 0;
Index: gcc/fortran/trans.h
===================================================================
---- gcc/fortran/trans.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/trans.h (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -518,6 +518,7 @@
+--- gcc/fortran/trans.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/trans.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -126,8 +126,9 @@
+ scalarization loop. */
+ GFC_SS_SCALAR,
+
+- /* Like GFC_SS_SCALAR except it evaluates a pointer to the expression.
+- Used for elemental function parameters. */
++ /* Like GFC_SS_SCALAR it evaluates the expression outside the
++ loop. Is always evaluated as a reference to the temporary.
++ Used for elemental function arguments. */
+ GFC_SS_REFERENCE,
+
+ /* An array section. Scalarization indices will be substituted during
+@@ -518,6 +519,7 @@
/* In trans-openmp.c */
bool gfc_omp_privatize_by_reference (const_tree);
enum omp_clause_default_kind gfc_omp_predetermined_sharing (tree);
tree gfc_omp_clause_default_ctor (tree, tree, tree);
tree gfc_omp_clause_copy_ctor (tree, tree, tree);
tree gfc_omp_clause_assign_op (tree, tree, tree);
-@@ -771,7 +772,6 @@
+@@ -771,7 +773,6 @@
/* Standard error messages used in all the trans-*.c files. */
Index: gcc/fortran/resolve.c
===================================================================
---- gcc/fortran/resolve.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/resolve.c (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -10302,7 +10302,9 @@
+--- gcc/fortran/resolve.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/resolve.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -6375,8 +6375,29 @@
+
+ for (p = code->ext.alloc.list; p; p = p->next)
+ if (p->expr->symtree->n.sym->name == stat->symtree->n.sym->name)
+- gfc_error ("Stat-variable at %L shall not be %sd within "
+- "the same %s statement", &stat->where, fcn, fcn);
++ {
++ gfc_ref *ref1, *ref2;
++ bool found = true;
++
++ for (ref1 = p->expr->ref, ref2 = stat->ref; ref1 && ref2;
++ ref1 = ref1->next, ref2 = ref2->next)
++ {
++ if (ref1->type != REF_COMPONENT || ref2->type != REF_COMPONENT)
++ continue;
++ if (ref1->u.c.component->name != ref2->u.c.component->name)
++ {
++ found = false;
++ break;
++ }
++ }
++
++ if (found)
++ {
++ gfc_error ("Stat-variable at %L shall not be %sd within "
++ "the same %s statement", &stat->where, fcn, fcn);
++ break;
++ }
++ }
+ }
+
+ /* Check the errmsg variable. */
+@@ -6404,8 +6425,29 @@
+
+ for (p = code->ext.alloc.list; p; p = p->next)
+ if (p->expr->symtree->n.sym->name == errmsg->symtree->n.sym->name)
+- gfc_error ("Errmsg-variable at %L shall not be %sd within "
+- "the same %s statement", &errmsg->where, fcn, fcn);
++ {
++ gfc_ref *ref1, *ref2;
++ bool found = true;
++
++ for (ref1 = p->expr->ref, ref2 = errmsg->ref; ref1 && ref2;
++ ref1 = ref1->next, ref2 = ref2->next)
++ {
++ if (ref1->type != REF_COMPONENT || ref2->type != REF_COMPONENT)
++ continue;
++ if (ref1->u.c.component->name != ref2->u.c.component->name)
++ {
++ found = false;
++ break;
++ }
++ }
++
++ if (found)
++ {
++ gfc_error ("Errmsg-variable at %L shall not be %sd within "
++ "the same %s statement", &errmsg->where, fcn, fcn);
++ break;
++ }
++ }
+ }
+
+ /* Check that an allocate-object appears only once in the statement.
+@@ -10302,7 +10344,9 @@
{
gfc_symtree* overriding;
overriding = gfc_find_typebound_proc (sub, NULL, st->name, true, NULL);
if (overriding->n.tb->deferred)
{
gfc_error ("Derived-type '%s' declared at %L must be ABSTRACT because"
-@@ -10431,8 +10433,12 @@
+@@ -10431,8 +10475,12 @@
/* Copy char length. */
if (ifc->ts.type == BT_CHARACTER && ifc->ts.u.cl)
{
}
}
else if (c->ts.interface->name[0] != '\0')
-@@ -10945,6 +10951,9 @@
+@@ -10945,6 +10993,9 @@
{
sym->ts.u.cl = gfc_new_charlen (sym->ns, ifc->ts.u.cl);
gfc_expr_replace_symbols (sym->ts.u.cl->length, sym);
else if (sym->ts.interface->name[0] != '\0')
Index: gcc/fortran/f95-lang.c
===================================================================
---- gcc/fortran/f95-lang.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/f95-lang.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/f95-lang.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/f95-lang.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,5 @@
/* gfortran backend interface
- Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
implicit_built_in_decls[code] = decl;
Index: gcc/fortran/trans-decl.c
===================================================================
---- gcc/fortran/trans-decl.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/trans-decl.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/trans-decl.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/trans-decl.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3447,7 +3447,8 @@
tree length;
rest_of_decl_compilation (length, 1, 0);
Index: gcc/fortran/parse.c
===================================================================
---- gcc/fortran/parse.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/parse.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/parse.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/parse.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2235,9 +2235,9 @@
{
if (current_state == COMP_NONE)
|| old_sym->attr.data
Index: gcc/fortran/check.c
===================================================================
---- gcc/fortran/check.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/check.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/check.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/check.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -214,6 +214,80 @@
}
Index: gcc/fortran/gfc-internals.texi
===================================================================
---- gcc/fortran/gfc-internals.texi (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/fortran/gfc-internals.texi (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/fortran/gfc-internals.texi (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/fortran/gfc-internals.texi (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,7 +1,7 @@
\input texinfo @c -*-texinfo-*-
@c %**start of header
@include gcc-common.texi
+Index: gcc/sel-sched-dump.c
+===================================================================
+--- gcc/sel-sched-dump.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/sel-sched-dump.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -566,7 +566,7 @@
+ }
+
+ /* Replace characters in BUF that have special meaning in .dot file. */
+-void
++static void
+ sel_prepare_string_for_dot_label (char *buf)
+ {
+ static char specials_from[7][2] = { "<", ">", "{", "|", "}", "\"",
+@@ -579,6 +579,28 @@
+ replace_str_in_buf (buf, specials_from[i], specials_to[i]);
+ }
+
++/* This function acts like printf but dumps to the sched_dump file. */
++void
++sel_print (const char *fmt, ...)
++{
++ va_list ap;
++ va_start (ap, fmt);
++ if (sched_dump_to_dot_p)
++ {
++ char *message;
++ if (vasprintf (&message, fmt, ap) >= 0 && message != NULL)
++ {
++ message = (char *) xrealloc (message, 2 * strlen (message) + 1);
++ sel_prepare_string_for_dot_label (message);
++ fprintf (sched_dump, "%s", message);
++ free (message);
++ }
++ }
++ else
++ vfprintf (sched_dump, fmt, ap);
++ va_end (ap);
++}
++
+ /* Dump INSN with FLAGS. */
+ static void
+ sel_dump_cfg_insn (insn_t insn, int flags)
+Index: gcc/sel-sched-dump.h
+===================================================================
+--- gcc/sel-sched-dump.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/sel-sched-dump.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -177,34 +177,13 @@
+ extern void dump_insn (insn_t);
+ extern void debug_insn (insn_t);
+
+-extern void sel_prepare_string_for_dot_label (char *);
+-
+ /* When this flag is on, we are dumping to the .dot file.
+ When it is off, we are dumping to log. */
+ extern bool sched_dump_to_dot_p;
+-
+-/* This macro acts like printf but dumps information to the .dot file.
+- Used when dumping control flow. */
+-#define sel_print_to_dot(...) \
+- do { \
+- int __j = 1 + 2 * snprintf (NULL, 0, __VA_ARGS__); \
+- char *__s = XALLOCAVEC (char, __j); \
+- snprintf (__s, __j, __VA_ARGS__); \
+- sel_prepare_string_for_dot_label (__s); \
+- fprintf (sched_dump, "%s", __s); \
+- } while (0)
+-
+-/* This macro acts like printf but dumps to the sched_dump file. */
+-#define sel_print(...) \
+- do { \
+- if (sched_dump_to_dot_p) \
+- sel_print_to_dot (__VA_ARGS__); \
+- else \
+- fprintf (sched_dump, __VA_ARGS__); \
+- } while (0)
+ \f
+
+ /* Functions from sel-sched-dump.c. */
++extern void sel_print (const char *fmt, ...) ATTRIBUTE_PRINTF_1;
+ extern const char * sel_print_insn (const_rtx, int);
+ extern void free_sel_dump_data (void);
+
Index: gcc/configure.ac
===================================================================
---- gcc/configure.ac (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/configure.ac (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/configure.ac (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/configure.ac (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -913,7 +913,7 @@
# NM
if test x${build} = x${host} && test -f $srcdir/../binutils/nm.c \
# Check -ldl
Index: gcc/BASE-VER
===================================================================
---- gcc/BASE-VER (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/BASE-VER (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/BASE-VER (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/BASE-VER (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1 +1 @@
-4.5.0
+4.5.1
Index: gcc/langhooks.h
===================================================================
---- gcc/langhooks.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/langhooks.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/langhooks.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/langhooks.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -195,6 +195,10 @@
predetermined, OMP_CLAUSE_DEFAULT_UNSPECIFIED otherwise. */
enum omp_clause_default_kind (*omp_predetermined_sharing) (tree);
remapped during OpenMP lowering. SHARED is true if DECL
Index: gcc/alias.c
===================================================================
---- gcc/alias.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/alias.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/alias.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/alias.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -406,7 +406,7 @@
/* Otherwise, check if set1 is a subset of set2. */
ase = get_alias_set_entry (set2);
{
Index: gcc/tree-vect-loop.c
===================================================================
---- gcc/tree-vect-loop.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-vect-loop.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-vect-loop.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-vect-loop.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2748,12 +2748,15 @@
*adjustment_def = init_val;
}
else
Index: gcc/ira-build.c
===================================================================
---- gcc/ira-build.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/ira-build.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/ira-build.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/ira-build.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1978,6 +1978,10 @@
merged_p = true;
ALLOCNO_LIVE_RANGES (a) = NULL;
}
Index: gcc/ipa.c
===================================================================
---- gcc/ipa.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/ipa.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/ipa.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/ipa.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -347,6 +347,21 @@
return false;
}
&& node->analyzed
Index: gcc/gimplify.c
===================================================================
---- gcc/gimplify.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/gimplify.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/gimplify.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/gimplify.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -75,9 +75,10 @@
enum omp_region_type
{
break;
case TRUTH_ANDIF_EXPR:
+Index: gcc/except.c
+===================================================================
+--- gcc/except.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/except.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1619,6 +1619,8 @@
+ bool
+ insn_could_throw_p (const_rtx insn)
+ {
++ if (!flag_exceptions)
++ return false;
+ if (CALL_P (insn))
+ return true;
+ if (INSN_P (insn) && flag_non_call_exceptions)
Index: gcc/cfgexpand.c
===================================================================
---- gcc/cfgexpand.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cfgexpand.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cfgexpand.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cfgexpand.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2563,13 +2563,14 @@
if (bitpos < 0)
return NULL;
case PLUS_EXPR:
return gen_rtx_PLUS (mode, op0, op1);
+Index: gcc/cselib.c
+===================================================================
+--- gcc/cselib.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cselib.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -178,6 +178,7 @@
+ that is constant through the whole function and should never be
+ eliminated. */
+ static cselib_val *cfa_base_preserved_val;
++static unsigned int cfa_base_preserved_regno;
+
+ /* Used to list all values that contain memory reference.
+ May or may not contain the useless values - the list is compacted
+@@ -338,7 +339,7 @@
+
+ if (cfa_base_preserved_val)
+ {
+- unsigned int regno = REGNO (cfa_base_preserved_val->locs->loc);
++ unsigned int regno = cfa_base_preserved_regno;
+ unsigned int new_used_regs = 0;
+ for (i = 0; i < n_used_regs; i++)
+ if (used_regs[i] == regno)
+@@ -571,12 +572,15 @@
+ never invalidated and preserved across cselib_reset_table calls. */
+
+ void
+-cselib_preserve_cfa_base_value (cselib_val *v)
++cselib_preserve_cfa_base_value (cselib_val *v, unsigned int regno)
+ {
+ if (cselib_preserve_constants
+ && v->locs
+ && REG_P (v->locs->loc))
+- cfa_base_preserved_val = v;
++ {
++ cfa_base_preserved_val = v;
++ cfa_base_preserved_regno = regno;
++ }
+ }
+
+ /* Clean all non-constant expressions in the hash table, but retain
+@@ -1783,7 +1787,9 @@
+ if (i < FIRST_PSEUDO_REGISTER && v != NULL)
+ this_last = end_hard_regno (GET_MODE (v->val_rtx), i) - 1;
+
+- if (this_last < regno || v == NULL || v == cfa_base_preserved_val)
++ if (this_last < regno || v == NULL
++ || (v == cfa_base_preserved_val
++ && i == cfa_base_preserved_regno))
+ {
+ l = &(*l)->next;
+ continue;
+@@ -2266,6 +2272,7 @@
+ cselib_discard_hook = NULL;
+ cselib_preserve_constants = false;
+ cfa_base_preserved_val = NULL;
++ cfa_base_preserved_regno = INVALID_REGNUM;
+ free_alloc_pool (elt_list_pool);
+ free_alloc_pool (elt_loc_list_pool);
+ free_alloc_pool (cselib_val_pool);
Index: gcc/tree-cfgcleanup.c
===================================================================
---- gcc/tree-cfgcleanup.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-cfgcleanup.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-cfgcleanup.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-cfgcleanup.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -267,6 +267,7 @@
tree_forwarder_block_p (basic_block bb, bool phi_wanted)
{
&& remove_forwarder_block (bb))
return true;
+Index: gcc/cselib.h
+===================================================================
+--- gcc/cselib.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cselib.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -99,6 +99,6 @@
+ extern void cselib_preserve_value (cselib_val *);
+ extern bool cselib_preserved_value_p (cselib_val *);
+ extern void cselib_preserve_only_values (void);
+-extern void cselib_preserve_cfa_base_value (cselib_val *);
++extern void cselib_preserve_cfa_base_value (cselib_val *, unsigned int);
+
+ extern void dump_cselib_table (FILE *);
Index: gcc/tree-ssa-pre.c
===================================================================
---- gcc/tree-ssa-pre.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-ssa-pre.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-ssa-pre.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-ssa-pre.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2669,31 +2669,46 @@
{
case CALL_EXPR:
genop2, genop3);
Index: gcc/cfgcleanup.c
===================================================================
---- gcc/cfgcleanup.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cfgcleanup.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cfgcleanup.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cfgcleanup.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1887,6 +1887,41 @@
&& single_succ_edge (ENTRY_BLOCK_PTR)->dest != b))
{
delete_basic_block (b);
if (!(mode & CLEANUP_CFGLAYOUT))
changed = true;
+Index: gcc/simplify-rtx.c
+===================================================================
+--- gcc/simplify-rtx.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/simplify-rtx.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -209,10 +209,11 @@
+ rtx
+ delegitimize_mem_from_attrs (rtx x)
+ {
++ /* MEMs without MEM_OFFSETs may have been offset, so we can't just
++ use their base addresses as equivalent. */
+ if (MEM_P (x)
+ && MEM_EXPR (x)
+- && (!MEM_OFFSET (x)
+- || GET_CODE (MEM_OFFSET (x)) == CONST_INT))
++ && MEM_OFFSET (x))
+ {
+ tree decl = MEM_EXPR (x);
+ enum machine_mode mode = GET_MODE (x);
+@@ -265,8 +266,7 @@
+ {
+ rtx newx;
+
+- if (MEM_OFFSET (x))
+- offset += INTVAL (MEM_OFFSET (x));
++ offset += INTVAL (MEM_OFFSET (x));
+
+ newx = DECL_RTL (decl);
+
Index: gcc/tree-sra.c
===================================================================
---- gcc/tree-sra.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-sra.c (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -182,6 +182,10 @@
+--- gcc/tree-sra.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-sra.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -89,6 +89,7 @@
+ #include "params.h"
+ #include "target.h"
+ #include "flags.h"
++#include "tree-inline.h"
+
+ /* Enumeration of all aggregate reductions we can do. */
+ enum sra_mode { SRA_MODE_EARLY_IPA, /* early call regularization */
+@@ -182,6 +183,10 @@
access tree. */
unsigned grp_read : 1;
/* Other passes of the analysis use this bit to make function
analyze_access_subtree create scalar replacements for this group if
possible. */
-@@ -353,13 +357,13 @@
+@@ -267,9 +272,6 @@
+ __builtin_apply_args. */
+ static bool encountered_apply_args;
+
+-/* Set by scan_function when it finds a recursive call. */
+-static bool encountered_recursive_call;
+-
+ /* Set by scan_function when it finds a recursive call with less actual
+ arguments than formal parameters.. */
+ static bool encountered_unchangable_recursive_call;
+@@ -353,13 +355,13 @@
print_generic_expr (f, access->type, 0);
if (grp)
fprintf (f, ", grp_write = %d, total_scalarization = %d, "
access->grp_covered, access->grp_unscalarizable_region,
access->grp_unscalarized_data, access->grp_partial_lhs,
access->grp_to_be_replaced, access->grp_maybe_modified,
-@@ -1031,9 +1035,13 @@
+@@ -567,7 +569,6 @@
+ base_access_vec = pointer_map_create ();
+ memset (&sra_stats, 0, sizeof (sra_stats));
+ encountered_apply_args = false;
+- encountered_recursive_call = false;
+ encountered_unchangable_recursive_call = false;
+ }
+
+@@ -1031,9 +1032,13 @@
racc = build_access_from_expr_1 (rhs_ptr, stmt, false);
lacc = build_access_from_expr_1 (lhs_ptr, stmt, true);
if (lacc && racc
&& (sra_mode == SRA_MODE_EARLY_INTRA || sra_mode == SRA_MODE_INTRA)
-@@ -1578,6 +1586,7 @@
+@@ -1161,12 +1166,9 @@
+ && DECL_FUNCTION_CODE (dest) == BUILT_IN_APPLY_ARGS)
+ encountered_apply_args = true;
+ if (cgraph_get_node (dest)
+- == cgraph_get_node (current_function_decl))
+- {
+- encountered_recursive_call = true;
+- if (!callsite_has_enough_arguments_p (stmt))
+- encountered_unchangable_recursive_call = true;
+- }
++ == cgraph_get_node (current_function_decl)
++ && !callsite_has_enough_arguments_p (stmt))
++ encountered_unchangable_recursive_call = true;
+ }
+
+ if (final_bbs
+@@ -1578,6 +1580,7 @@
struct access *access = VEC_index (access_p, access_vec, i);
bool grp_write = access->write;
bool grp_read = !access->write;
bool multiple_reads = false;
bool total_scalarization = access->total_scalarization;
bool grp_partial_lhs = access->grp_partial_lhs;
-@@ -1611,6 +1620,7 @@
+@@ -1611,6 +1614,7 @@
else
grp_read = true;
}
grp_partial_lhs |= ac2->grp_partial_lhs;
unscalarizable_region |= ac2->grp_unscalarizable_region;
total_scalarization |= ac2->total_scalarization;
-@@ -1629,6 +1639,7 @@
+@@ -1629,6 +1633,7 @@
access->group_representative = access;
access->grp_write = grp_write;
access->grp_read = grp_read;
access->grp_hint = multiple_reads || total_scalarization;
access->grp_partial_lhs = grp_partial_lhs;
access->grp_unscalarizable_region = unscalarizable_region;
-@@ -1710,9 +1721,10 @@
+@@ -1648,14 +1653,15 @@
+ ACCESS->replacement. */
+ static tree
+-create_access_replacement (struct access *access)
++create_access_replacement (struct access *access, bool rename)
+ {
+ tree repl;
+
+ repl = create_tmp_var (access->type, "SR");
+ get_var_ann (repl);
+ add_referenced_var (repl);
+- mark_sym_for_renaming (repl);
++ if (rename)
++ mark_sym_for_renaming (repl);
+
+ if (!access->grp_partial_lhs
+ && (TREE_CODE (access->type) == COMPLEX_TYPE
+@@ -1704,15 +1710,29 @@
+ gcc_assert (access->grp_to_be_replaced);
+
+ if (!access->replacement_decl)
+- access->replacement_decl = create_access_replacement (access);
++ access->replacement_decl = create_access_replacement (access, true);
+ return access->replacement_decl;
+ }
+
++/* Return ACCESS scalar replacement, create it if it does not exist yet but do
++ not mark it for renaming. */
++
++static inline tree
++get_unrenamed_access_replacement (struct access *access)
++{
++ gcc_assert (!access->grp_to_be_replaced);
++
++ if (!access->replacement_decl)
++ access->replacement_decl = create_access_replacement (access, false);
++ return access->replacement_decl;
++}
++
/* Build a subtree of accesses rooted in *ACCESS, and move the pointer in the
linked list along the way. Stop when *ACCESS is NULL or the access pointed
- to it is not "within" the root. */
build_access_subtree (struct access **access)
{
struct access *root = *access, *last_child = NULL;
-@@ -1727,24 +1739,32 @@
+@@ -1727,24 +1747,32 @@
last_child->next_sibling = *access;
last_child = *access;
}
/* Return true if expr contains some ARRAY_REFs into a variable bounded
-@@ -1763,14 +1783,17 @@
+@@ -1763,14 +1791,17 @@
return false;
}
{
struct access *child;
HOST_WIDE_INT limit = root->offset + root->size;
-@@ -1779,10 +1802,17 @@
+@@ -1779,10 +1810,17 @@
bool hole = false, sth_created = false;
bool direct_read = root->grp_read;
if (mark_write)
root->grp_write = true;
-@@ -1802,7 +1832,8 @@
+@@ -1802,7 +1840,8 @@
else
covered_to += child->size;
mark_read, mark_write);
root->grp_unscalarized_data |= child->grp_unscalarized_data;
-@@ -1811,7 +1842,7 @@
+@@ -1811,7 +1850,7 @@
if (allow_replacements && scalar && !root->first_child
&& (root->grp_hint
/* We must not ICE later on when trying to build an access to the
original data within the aggregate even when it is impossible to do in
a defined way like in the PR 42703 testcase. Therefore we check
-@@ -1856,7 +1887,7 @@
+@@ -1856,7 +1895,7 @@
while (access)
{
ret = true;
access = access->next_grp;
}
-@@ -2072,9 +2103,7 @@
+@@ -2072,9 +2111,7 @@
struct access *access;
access = sort_and_splice_var_accesses (var);
disqualify_candidate (var,
"No or inhibitingly overlapping accesses.");
}
-@@ -4133,6 +4162,9 @@
+@@ -2526,7 +2563,27 @@
+ }
+ }
+
++/* Create a new suitable default definition SSA_NAME and replace all uses of
++ SSA with it, RACC is access describing the uninitialized part of an
++ aggregate that is being loaded. */
+
++static void
++replace_uses_with_default_def_ssa_name (tree ssa, struct access *racc)
++{
++ tree repl, decl;
++
++ decl = get_unrenamed_access_replacement (racc);
++
++ repl = gimple_default_def (cfun, decl);
++ if (!repl)
++ {
++ repl = make_ssa_name (decl, gimple_build_nop ());
++ set_default_def (decl, repl);
++ }
++
++ replace_uses_by (ssa, repl);
++}
++
+ /* Callback of scan_function to process assign statements. It examines both
+ sides of the statement, replaces them with a scalare replacement if there is
+ one and generating copying of replacements if scalarized aggregates have been
+@@ -2701,26 +2758,28 @@
+ }
+ else
+ {
+- if (access_has_children_p (racc))
++ if (racc)
+ {
+- if (!racc->grp_unscalarized_data
+- /* Do not remove SSA name definitions (PR 42704). */
+- && TREE_CODE (lhs) != SSA_NAME)
++ if (!racc->grp_to_be_replaced && !racc->grp_unscalarized_data)
+ {
+- generate_subtree_copies (racc->first_child, lhs,
+- racc->offset, 0, 0, gsi,
+- false, false);
++ if (racc->first_child)
++ generate_subtree_copies (racc->first_child, lhs,
++ racc->offset, 0, 0, gsi,
++ false, false);
+ gcc_assert (*stmt == gsi_stmt (*gsi));
++ if (TREE_CODE (lhs) == SSA_NAME)
++ replace_uses_with_default_def_ssa_name (lhs, racc);
++
+ unlink_stmt_vdef (*stmt);
+ gsi_remove (gsi, true);
+ sra_stats.deleted++;
+ return SRA_SA_REMOVED;
+ }
+- else
++ else if (racc->first_child)
+ generate_subtree_copies (racc->first_child, lhs,
+ racc->offset, 0, 0, gsi, false, true);
+ }
+- else if (access_has_children_p (lacc))
++ if (access_has_children_p (lacc))
+ generate_subtree_copies (lacc->first_child, rhs, lacc->offset,
+ 0, 0, gsi, true, true);
+ }
+@@ -3789,6 +3848,7 @@
+ gimple_phi_set_result (stmt, name);
+
+ replace_uses_by (lhs, name);
++ release_ssa_name (lhs);
+ return true;
+ }
+
+@@ -3993,7 +4053,6 @@
+ {
+ tree old_cur_fndecl = current_function_decl;
+ struct cgraph_edge *cs;
+- basic_block this_block;
+ bitmap recomputed_callers = BITMAP_ALLOC (NULL);
+
+ for (cs = node->callers; cs; cs = cs->next_caller)
+@@ -4013,7 +4072,8 @@
+ }
+
+ for (cs = node->callers; cs; cs = cs->next_caller)
+- if (!bitmap_bit_p (recomputed_callers, cs->caller->uid))
++ if (cs->caller != node
++ && !bitmap_bit_p (recomputed_callers, cs->caller->uid))
+ {
+ compute_inline_parameters (cs->caller);
+ bitmap_set_bit (recomputed_callers, cs->caller->uid);
+@@ -4021,71 +4081,41 @@
+ BITMAP_FREE (recomputed_callers);
+
+ current_function_decl = old_cur_fndecl;
+-
+- if (!encountered_recursive_call)
+- return;
+-
+- FOR_EACH_BB (this_block)
+- {
+- gimple_stmt_iterator gsi;
+-
+- for (gsi = gsi_start_bb (this_block); !gsi_end_p (gsi); gsi_next (&gsi))
+- {
+- gimple stmt = gsi_stmt (gsi);
+- tree call_fndecl;
+- if (gimple_code (stmt) != GIMPLE_CALL)
+- continue;
+- call_fndecl = gimple_call_fndecl (stmt);
+- if (call_fndecl && cgraph_get_node (call_fndecl) == node)
+- {
+- if (dump_file)
+- fprintf (dump_file, "Adjusting recursive call");
+- ipa_modify_call_arguments (NULL, stmt, adjustments);
+- }
+- }
+- }
+-
+ return;
+ }
+
+-/* Create an abstract origin declaration for OLD_DECL and make it an abstract
+- origin of the provided decl so that there are preserved parameters for debug
+- information. */
++/* Perform all the modification required in IPA-SRA for NODE to have parameters
++ as given in ADJUSTMENTS. */
+
+ static void
+-create_abstract_origin (tree old_decl)
++modify_function (struct cgraph_node *node, ipa_parm_adjustment_vec adjustments)
+ {
+- if (!DECL_ABSTRACT_ORIGIN (old_decl))
+- {
+- tree new_decl = copy_node (old_decl);
++ struct cgraph_node *new_node;
++ struct cgraph_edge *cs;
++ VEC (cgraph_edge_p, heap) * redirect_callers;
++ int node_callers;
+
+- DECL_ABSTRACT (new_decl) = 1;
+- SET_DECL_ASSEMBLER_NAME (new_decl, NULL_TREE);
+- SET_DECL_RTL (new_decl, NULL);
+- DECL_STRUCT_FUNCTION (new_decl) = NULL;
+- DECL_ARTIFICIAL (old_decl) = 1;
+- DECL_ABSTRACT_ORIGIN (old_decl) = new_decl;
+- }
+-}
++ node_callers = 0;
++ for (cs = node->callers; cs != NULL; cs = cs->next_caller)
++ node_callers++;
++ redirect_callers = VEC_alloc (cgraph_edge_p, heap, node_callers);
++ for (cs = node->callers; cs != NULL; cs = cs->next_caller)
++ VEC_quick_push (cgraph_edge_p, redirect_callers, cs);
+
+-/* Perform all the modification required in IPA-SRA for NODE to have parameters
+- as given in ADJUSTMENTS. */
++ rebuild_cgraph_edges ();
++ pop_cfun ();
++ current_function_decl = NULL_TREE;
+
+-static void
+-modify_function (struct cgraph_node *node, ipa_parm_adjustment_vec adjustments)
+-{
+- struct cgraph_node *alias;
+- for (alias = node->same_body; alias; alias = alias->next)
+- ipa_modify_formal_parameters (alias->decl, adjustments, "ISRA");
+- /* current_function_decl must be handled last, after same_body aliases,
+- as following functions will use what it computed. */
+- create_abstract_origin (current_function_decl);
++ new_node = cgraph_function_versioning (node, redirect_callers, NULL, NULL);
++ current_function_decl = new_node->decl;
++ push_cfun (DECL_STRUCT_FUNCTION (new_node->decl));
++
+ ipa_modify_formal_parameters (current_function_decl, adjustments, "ISRA");
+ scan_function (sra_ipa_modify_expr, sra_ipa_modify_assign,
+ replace_removed_params_ssa_names, false, adjustments);
+ sra_ipa_reset_debug_stmts (adjustments);
+- convert_callers (node, adjustments);
+- cgraph_make_node_local (node);
++ convert_callers (new_node, adjustments);
++ cgraph_make_node_local (new_node);
+ return;
+ }
+
+@@ -4103,6 +4133,13 @@
+ return false;
+ }
+
++ if (!tree_versionable_function_p (node->decl))
++ {
++ if (dump_file)
++ fprintf (dump_file, "Function not local to this compilation unit.\n");
++ return false;
++ }
++
+ if (DECL_VIRTUAL_P (current_function_decl))
+ {
+ if (dump_file)
+@@ -4133,6 +4170,9 @@
return false;
}
Index: gcc/lto/lto-coff.h
===================================================================
---- gcc/lto/lto-coff.h (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/lto/lto-coff.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/lto/lto-coff.h (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/lto/lto-coff.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,406 @@
+/* LTO routines for COFF object files.
+ Copyright 2009, 2010 Free Software Foundation, Inc.
+#endif /* LTO_COFF_H */
Index: gcc/lto/lto.c
===================================================================
---- gcc/lto/lto.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/lto/lto.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/lto/lto.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/lto/lto.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -378,7 +378,7 @@
file_data = XCNEW (struct lto_file_decl_data);
Index: gcc/lto/Make-lang.in
===================================================================
---- gcc/lto/Make-lang.in (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/lto/Make-lang.in (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/lto/Make-lang.in (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/lto/Make-lang.in (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -23,7 +23,7 @@
# The name of the LTO compiler.
LTO_EXE = lto1$(exeext)
# Dependencies
lto/lto-lang.o: lto/lto-lang.c $(CONFIG_H) coretypes.h debug.h \
-@@ -88,3 +88,6 @@
+@@ -88,3 +88,9 @@
$(LTO_TAGS_H) $(LTO_STREAMER_H)
lto/lto-elf.o: lto/lto-elf.c $(CONFIG_H) coretypes.h $(SYSTEM_H) \
toplev.h $(LTO_H) $(TM_H) $(LIBIBERTY_H) $(GGC_H) $(LTO_STREAMER_H)
+lto/lto-coff.o: lto/lto-coff.c $(CONFIG_H) coretypes.h $(SYSTEM_H) \
+ toplev.h $(LTO_H) $(TM_H) $(LIBIBERTY_H) $(GGC_H) $(LTO_STREAMER_H) \
+ lto/lto-coff.h
++lto/lto-macho.o: lto/lto-macho.c $(CONFIG_H) coretypes.h $(SYSTEM_H) \
++ toplev.h $(LTO_H) $(TM_H) $(LIBIBERTY_H) $(GGC_H) $(LTO_STREAMER_H) \
++ lto/lto-macho.h lto/lto-endian.h
Index: gcc/lto/lto-elf.c
===================================================================
---- gcc/lto/lto-elf.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/lto/lto-elf.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/lto/lto-elf.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/lto/lto-elf.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -179,7 +179,7 @@
the start and size of each section in the .o file. */
free (elf_file->shstrtab_stream);
Index: gcc/lto/lto.h
===================================================================
---- gcc/lto/lto.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/lto/lto.h (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -38,13 +38,13 @@
+--- gcc/lto/lto.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/lto/lto.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,5 +1,5 @@
+ /* LTO declarations.
+- Copyright 2009 Free Software Foundation, Inc.
++ Copyright 2009, 2010 Free Software Foundation, Inc.
+ Contributed by CodeSourcery, Inc.
+
+ This file is part of GCC.
+@@ -28,6 +28,7 @@
+ {
+ /* The name of the file. */
+ const char *filename;
++ /* The offset for the object inside an ar archive file (or zero). */
+ off_t offset;
+ } lto_file;
+
+@@ -38,13 +39,13 @@
extern void lto_main (int);
extern void lto_read_all_file_options (void);
Index: gcc/lto/ChangeLog
===================================================================
---- gcc/lto/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/lto/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -1,3 +1,67 @@
+--- gcc/lto/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/lto/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,3 +1,78 @@
++2010-06-24 Steven Bosscher <steven@gcc.gnu.org>
++
++ Backport from mainline:
++ 2010-05-18 Steven Bosscher <steven@gcc.gnu.org>
++
++ * lto.h (struct lto_file_struct): Document offset member.
++ * lto-endian.h: New file.
++ * lto-macho.h: New file.
++ * lto-macho.c: New file.
++ * Make-lang.in: Add rule for lto-macho.o.
++
+2010-06-14 Dave Korn <dave.korn.cygwin@gmail.com>
+
-+ Backport from mainline:
-+ 2010-04-27 Dave Korn <dave.korn.cygwin@gmail.com>
++ Backport from mainline:
++ 2010-04-27 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ PR lto/42776
+ * Make-lang.in (LTO_OBJS): Use LTO_BINARY_READER instead of
* GCC 4.5.0 released.
Index: gcc/lto/lto-coff.c
===================================================================
---- gcc/lto/lto-coff.c (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/lto/lto-coff.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/lto/lto-coff.c (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/lto/lto-coff.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,845 @@
+/* LTO routines for COFF object files.
+ Copyright 2009, 2010 Free Software Foundation, Inc.
+
Index: gcc/lto/lto-lang.c
===================================================================
---- gcc/lto/lto-lang.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/lto/lto-lang.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/lto/lto-lang.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/lto/lto-lang.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1158,11 +1158,11 @@
#define LANG_HOOKS_FORMAT_ATTRIBUTE_TABLE lto_format_attribute_table
#undef LANG_HOOKS_INIT_TS
#define LANG_HOOKS_INIT_TS lto_init_ts
+Index: gcc/ipa-prop.c
+===================================================================
+--- gcc/ipa-prop.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/ipa-prop.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1608,6 +1608,12 @@
+ TYPE_CONTEXT (new_type) = TYPE_CONTEXT (orig_type);
+ DECL_VINDEX (fndecl) = NULL_TREE;
+ }
++ /* When signature changes, we need to clear builtin info. */
++ if (DECL_BUILT_IN (fndecl))
++ {
++ DECL_BUILT_IN_CLASS (fndecl) = NOT_BUILT_IN;
++ DECL_FUNCTION_CODE (fndecl) = (enum built_in_function) 0;
++ }
+
+ /* This is a new type, not a copy of an old type. Need to reassociate
+ variants. We can handle everything except the main variant lazily. */
Index: gcc/tree-ssa-copy.c
===================================================================
---- gcc/tree-ssa-copy.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-ssa-copy.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-ssa-copy.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-ssa-copy.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -856,7 +856,7 @@
duplicate_ssa_name_ptr_info (tmp[i].value, SSA_NAME_PTR_INFO (var));
}
free (copy_of);
Index: gcc/cfglayout.c
===================================================================
---- gcc/cfglayout.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cfglayout.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cfglayout.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cfglayout.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,5 @@
/* Basic block reordering routines for the GNU compiler.
- Copyright (C) 2000, 2001, 2003, 2004, 2005, 2006, 2007, 2008, 2009
Index: gcc/po/es.po
===================================================================
---- gcc/po/es.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/es.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/es.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/es.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-# Mensajes en español para gcc-4.5-b20100204
+# Mensajes en español para gcc-4.5.0
Index: gcc/po/fr.po
===================================================================
---- gcc/po/fr.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/fr.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/fr.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/fr.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -121,7 +121,7 @@
msgstr ""
"Project-Id-Version: GNU gcc 3.4.3\n"
Index: gcc/po/nl.po
===================================================================
---- gcc/po/nl.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/nl.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/nl.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/nl.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -7,7 +7,7 @@
msgstr ""
"Project-Id-Version: gcc 4.3.0\n"
Index: gcc/po/ChangeLog
===================================================================
---- gcc/po/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,24 @@
+2010-05-01 Joseph Myers <joseph@codesourcery.com>
+
* GCC 4.5.0 released.
Index: gcc/po/da.po
===================================================================
---- gcc/po/da.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/da.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/da.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/da.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -128,7 +128,7 @@
msgstr ""
"Project-Id-Version: gcc 3.4-b20040206\n"
Index: gcc/po/sr.po
===================================================================
---- gcc/po/sr.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/sr.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/sr.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/sr.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,7 +6,7 @@
msgstr ""
"Project-Id-Version: gcc 4.2.1\n"
Index: gcc/po/tr.po
===================================================================
---- gcc/po/tr.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/tr.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/tr.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/tr.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,7 +6,7 @@
msgstr ""
"Project-Id-Version: gcc 4.1.1\n"
Index: gcc/po/be.po
===================================================================
---- gcc/po/be.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/be.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/be.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/be.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,7 +6,7 @@
msgstr ""
"Project-Id-Version: gcc 3.1\n"
msgstr "паўторнае абвяшчэнне меткі \"%s\""
Index: gcc/po/ru.po
===================================================================
---- gcc/po/ru.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/ru.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/ru.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/ru.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -9,7 +9,7 @@
msgstr ""
"Project-Id-Version: gcc 4.3.0\n"
#~ msgstr "присваивание элементу %qD, доступному только на чтение"
Index: gcc/po/sv.po
===================================================================
---- gcc/po/sv.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/sv.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/sv.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/sv.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -8,71 +8,72 @@
#
msgid ""
+msgstr "ogiltig elementtyp för attributet %qs"
Index: gcc/po/de.po
===================================================================
---- gcc/po/de.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/de.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/de.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/de.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: gcc 4.3.0\n"
Index: gcc/po/ja.po
===================================================================
---- gcc/po/ja.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/ja.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/ja.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/ja.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: gcc 3.0\n"
Index: gcc/po/zh_TW.po
===================================================================
---- gcc/po/zh_TW.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/zh_TW.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/zh_TW.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/zh_TW.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: gcc 4.1.0\n"
Index: gcc/po/id.po
===================================================================
---- gcc/po/id.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/id.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/id.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/id.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -7,7 +7,7 @@
msgstr ""
"Project-Id-Version: gcc 4.4.1\n"
Index: gcc/po/fi.po
===================================================================
---- gcc/po/fi.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/fi.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/fi.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/fi.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -26,7 +26,7 @@
msgstr ""
"Project-Id-Version: gcc 4.5-b20091203\n"
#~ msgstr "puuttuva %<(%> ilmaisun %<#pragma pack%> jälkeen - jätetään huomiotta"
Index: gcc/po/el.po
===================================================================
---- gcc/po/el.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/el.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/el.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/el.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,7 +6,7 @@
msgstr ""
"Project-Id-Version: gcc 4.0-b20041128\n"
Index: gcc/po/zh_CN.po
===================================================================
---- gcc/po/zh_CN.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/po/zh_CN.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/po/zh_CN.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/po/zh_CN.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5,10 +5,10 @@
#
msgid ""
Index: gcc/tree-ssa-forwprop.c
===================================================================
---- gcc/tree-ssa-forwprop.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-ssa-forwprop.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-ssa-forwprop.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-ssa-forwprop.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -728,6 +728,7 @@
gimple use_stmt = gsi_stmt (*use_stmt_gsi);
enum tree_code rhs_code;
reference. Place it there and fold the thing. */
Index: gcc/c-omp.c
===================================================================
---- gcc/c-omp.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/c-omp.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/c-omp.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/c-omp.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,7 +1,7 @@
/* This file contains routines to construct GNU OpenMP constructs,
called from parsing in the C and C++ front ends.
}
Index: gcc/tree-nested.c
===================================================================
---- gcc/tree-nested.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-nested.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-nested.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-nested.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,5 @@
/* Nested function decomposition for GIMPLE.
- Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009
Index: gcc/sched-deps.c
===================================================================
---- gcc/sched-deps.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/sched-deps.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/sched-deps.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/sched-deps.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -442,15 +442,15 @@
static int deps_may_trap_p (const_rtx);
{
int removed;
unsigned i;
+Index: gcc/target-def.h
+===================================================================
+--- gcc/target-def.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/target-def.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -204,6 +204,14 @@
+ #define TARGET_ASM_FILE_END hook_void_void
+ #endif
+
++#ifndef TARGET_ASM_LTO_START
++#define TARGET_ASM_LTO_START hook_void_void
++#endif
++
++#ifndef TARGET_ASM_LTO_END
++#define TARGET_ASM_LTO_END hook_void_void
++#endif
++
+ #ifndef TARGET_ASM_CODE_END
+ #define TARGET_ASM_CODE_END hook_void_void
+ #endif
+@@ -296,6 +304,8 @@
+ TARGET_ASM_CAN_OUTPUT_MI_THUNK, \
+ TARGET_ASM_FILE_START, \
+ TARGET_ASM_FILE_END, \
++ TARGET_ASM_LTO_START, \
++ TARGET_ASM_LTO_END, \
+ TARGET_ASM_CODE_END, \
+ TARGET_ASM_EXTERNAL_LIBCALL, \
+ TARGET_ASM_MARK_DECL_PRESERVED, \
Index: gcc/tree-inline.c
===================================================================
---- gcc/tree-inline.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-inline.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-inline.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-inline.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -651,6 +651,7 @@
copy_bind_expr (tree *tp, int *walk_subtrees, copy_body_data *id)
{
}
-@@ -1809,9 +1822,10 @@
+@@ -1573,7 +1586,6 @@
+ gimple_call_set_lhs (new_call, gimple_call_lhs (stmt));
+
+ gsi_replace (©_gsi, new_call, false);
+- gimple_set_bb (stmt, NULL);
+ stmt = new_call;
+ }
+ else if (is_gimple_call (stmt)
+@@ -1809,9 +1821,10 @@
/* Copy edges from BB into its copy constructed earlier, scale profile
accordingly. Edges will be taken care of later. Assume aux
copy_edges_for_bb (basic_block bb, gcov_type count_scale, basic_block ret_bb)
{
basic_block new_bb = (basic_block) bb->aux;
-@@ -1819,6 +1833,7 @@
+@@ -1819,6 +1832,7 @@
edge old_edge;
gimple_stmt_iterator si;
int flags;
/* Use the indices from the original blocks to create edges for the
new ones. */
-@@ -1839,7 +1854,7 @@
+@@ -1839,7 +1853,7 @@
}
if (bb->index == ENTRY_BLOCK || bb->index == EXIT_BLOCK)
for (si = gsi_start_bb (new_bb); !gsi_end_p (si);)
{
-@@ -1874,6 +1889,13 @@
+@@ -1874,6 +1888,13 @@
if (can_throw || nonlocal_goto)
{
if (!gsi_end_p (si))
/* Note that bb's predecessor edges aren't necessarily
right at this point; split_block doesn't care. */
{
-@@ -1898,6 +1920,7 @@
+@@ -1898,6 +1919,7 @@
update_ssa_across_abnormal_edges (gimple_bb (copy_stmt), ret_bb,
can_throw, nonlocal_goto);
}
}
/* Copy the PHIs. All blocks and edges are copied, some blocks
-@@ -2033,6 +2056,63 @@
+@@ -2033,6 +2055,63 @@
pop_cfun ();
}
/* Make a copy of the body of FN so that it can be inserted inline in
another function. Walks FN via CFG, returns new fndecl. */
-@@ -2046,6 +2126,7 @@
+@@ -2046,6 +2125,7 @@
struct function *cfun_to_copy;
basic_block bb;
tree new_fndecl = NULL;
gcov_type count_scale;
int last;
-@@ -2086,7 +2167,7 @@
+@@ -2086,7 +2166,7 @@
/* Now that we've duplicated the blocks, duplicate their edges. */
FOR_ALL_BB_FN (bb, cfun_to_copy)
if (gimple_in_ssa_p (cfun))
FOR_ALL_BB_FN (bb, cfun_to_copy)
-@@ -2094,6 +2175,10 @@
+@@ -2094,6 +2174,10 @@
FOR_ALL_BB_FN (bb, cfun_to_copy)
{
((basic_block)bb->aux)->aux = NULL;
bb->aux = NULL;
}
-@@ -2101,7 +2186,11 @@
+@@ -2101,7 +2185,11 @@
/* Zero out AUX fields of newly created block during EH edge
insertion. */
for (; last < last_basic_block; last++)
entry_block_map->aux = NULL;
exit_block_map->aux = NULL;
-@@ -5066,7 +5155,7 @@
+@@ -5066,7 +5154,7 @@
return false;
}
#endif
caller = e->caller->decl;
callee = e->callee->decl;
-@@ -5092,8 +5181,16 @@
+@@ -5092,8 +5180,16 @@
return false;
}
gimple_call_set_cannot_inline (e->call_stmt, true);
Index: gcc/sched-int.h
===================================================================
---- gcc/sched-int.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/sched-int.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/sched-int.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/sched-int.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -448,7 +448,7 @@
};
extern void rgn_setup_sched_infos (void);
Index: gcc/var-tracking.c
===================================================================
---- gcc/var-tracking.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/var-tracking.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/var-tracking.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/var-tracking.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -421,7 +421,6 @@
static void **unshare_variable (dataflow_set *set, void **slot, variable var,
static bool dataflow_set_different (dataflow_set *, dataflow_set *);
static void dataflow_set_destroy (dataflow_set *);
-@@ -1537,34 +1534,23 @@
+@@ -800,8 +797,9 @@
+ switch (GET_CODE (loc))
+ {
+ case REG:
+- /* Don't do any sp or fp replacements outside of MEM addresses. */
+- if (amd->mem_mode == VOIDmode)
++ /* Don't do any sp or fp replacements outside of MEM addresses
++ on the LHS. */
++ if (amd->mem_mode == VOIDmode && amd->store)
+ return loc;
+ if (loc == stack_pointer_rtx
+ && !frame_pointer_needed)
+@@ -1537,34 +1535,23 @@
return slot;
}
}
/* Map a decl to its main debug decl. */
-@@ -2066,14 +2052,12 @@
+@@ -2066,14 +2053,12 @@
we keep the newest locations in the beginning. */
static int
dstp = shared_hash_find_slot (set->vars, src->dv);
if (!dstp || !*dstp)
{
-@@ -2099,8 +2083,8 @@
+@@ -2099,8 +2084,8 @@
{
location_chain *nodep, dnode, snode;
snode = src->var_part[0].loc_chain;
gcc_assert (snode);
-@@ -2449,7 +2433,13 @@
+@@ -2449,7 +2434,13 @@
dst->vars = shared_hash_copy (src->vars);
}
else
}
/* Whether the value is currently being expanded. */
-@@ -2485,46 +2475,80 @@
+@@ -2485,46 +2476,80 @@
/* Return a location list node whose loc is rtx_equal to LOC, in the
location list of a one-part variable or value VAR, or in that of
return NULL;
}
-@@ -2582,6 +2606,33 @@
+@@ -2582,6 +2607,33 @@
dataflow_set *s2set = dsm->src;
location_chain found;
for (; s1node; s1node = s1node->next)
{
if (s1node->loc == val)
-@@ -3320,12 +3371,10 @@
+@@ -3320,12 +3372,10 @@
intersection. */
static int
variable s2var, dvar = NULL;
decl_or_value dv = s1var->dv;
bool onepart = dv_onepart_p (dv);
-@@ -3336,14 +3385,14 @@
+@@ -3336,14 +3386,14 @@
/* If the incoming onepart variable has an empty location list, then
the intersection will be just as empty. For other variables,
it's always union. */
dvhash = dv_htab_hash (dv);
if (dv_is_value_p (dv))
-@@ -3359,17 +3408,17 @@
+@@ -3359,17 +3409,17 @@
}
dsm->src_onepart_cnt--;
nodep = &dvar->var_part[0].loc_chain;
}
else
-@@ -3583,11 +3632,9 @@
+@@ -3583,11 +3633,9 @@
variable_merge_over_cur(). */
static int
decl_or_value dv = s2var->dv;
bool onepart = dv_onepart_p (dv);
-@@ -3614,6 +3661,8 @@
+@@ -3614,6 +3662,8 @@
struct dfset_merge dsm;
int i;
size_t src1_elems, src2_elems;
src1_elems = htab_elements (shared_hash_htab (src1->vars));
src2_elems = htab_elements (shared_hash_htab (src2->vars));
-@@ -3634,10 +3683,10 @@
+@@ -3634,10 +3684,10 @@
dsm.cur = src1;
dsm.src_onepart_cnt = 0;
if (dsm.src_onepart_cnt)
dst_can_be_shared = false;
-@@ -3657,6 +3706,11 @@
+@@ -3657,6 +3707,11 @@
{
rtx canon[NUM_MACHINE_MODES];
memset (canon, 0, sizeof (canon));
for (list = set->regs[i]; list; list = list->next)
-@@ -3850,8 +3904,8 @@
+@@ -3850,8 +3905,8 @@
att; att = att->next)
if (GET_MODE (att->loc) == GET_MODE (node->loc))
{
val_reset (set, att->dv);
break;
}
-@@ -3917,18 +3971,24 @@
+@@ -3917,18 +3972,24 @@
decl_or_value dv;
attrs att;
if (find_loc_in_1pdv (pnode->loc, var, shared_hash_htab (set->vars)))
return 1;
val_reset (set, dv);
-@@ -3953,7 +4013,7 @@
+@@ -3953,7 +4014,7 @@
{
attrs_list_insert (&set->regs[REGNO (pnode->loc)],
dv, 0, pnode->loc);
}
return 1;
-@@ -3994,10 +4054,9 @@
+@@ -3994,10 +4055,9 @@
if (!val)
return NULL;
dv = dv_from_value (val);
var = (variable) htab_find_with_hash (vars, dv, dv_htab_hash (dv));
-@@ -4262,11 +4321,7 @@
+@@ -4262,11 +4322,7 @@
}
}
variable_part_different_p (variable_part *vp1, variable_part *vp2)
{
location_chain lc1, lc2;
-@@ -4300,14 +4355,13 @@
+@@ -4300,14 +4356,13 @@
if (var1 == var2)
return false;
while (lc1 && lc2)
{
-@@ -4340,8 +4394,8 @@
+@@ -4340,8 +4395,8 @@
/* One-part values have locations in a canonical order. */
if (i == 0 && var1->var_part[i].offset == 0 && dv_onepart_p (var1->dv))
{
return onepart_variable_different_p (var1, var2);
}
if (variable_part_different_p (&var1->var_part[i], &var2->var_part[i]))
-@@ -4352,56 +4406,14 @@
+@@ -4352,56 +4407,14 @@
return false;
}
if (old_set->vars == new_set->vars)
return false;
-@@ -4409,14 +4421,38 @@
+@@ -4409,14 +4422,38 @@
!= htab_elements (shared_hash_htab (new_set->vars)))
return true;
}
/* Free the contents of dataflow set SET. */
-@@ -7447,8 +7483,8 @@
+@@ -5134,7 +5171,9 @@
+ return NULL_RTX;
+ }
+
+- if (!REG_P (XEXP (src, 0)) || !SCALAR_INT_MODE_P (GET_MODE (src)))
++ if (!REG_P (XEXP (src, 0))
++ || !SCALAR_INT_MODE_P (GET_MODE (src))
++ || XEXP (src, 0) == cfa_base_rtx)
+ return NULL_RTX;
+
+ v = cselib_lookup (XEXP (src, 0), GET_MODE (XEXP (src, 0)), 0);
+@@ -7447,8 +7486,8 @@
{
location_chain lc1, lc2;
lc1 = old_var->var_part[0].loc_chain;
lc2 = new_var->var_part[0].loc_chain;
while (lc1
+@@ -8104,7 +8143,7 @@
+ val = cselib_lookup_from_insn (cfa_base_rtx, GET_MODE (cfa_base_rtx), 1,
+ get_insns ());
+ preserve_value (val);
+- cselib_preserve_cfa_base_value (val);
++ cselib_preserve_cfa_base_value (val, REGNO (cfa_base_rtx));
+ var_reg_decl_set (&VTI (ENTRY_BLOCK_PTR)->out, cfa_base_rtx,
+ VAR_INIT_STATUS_INITIALIZED, dv_from_value (val->val_rtx),
+ 0, NULL_RTX, INSERT);
Index: gcc/c-common.c
===================================================================
---- gcc/c-common.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/c-common.c (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -6665,10 +6665,12 @@
+--- gcc/c-common.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/c-common.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -3965,23 +3965,7 @@
+ inner);
+ return truthvalue_true_node;
+ }
+-
+- /* If we still have a decl, it is possible for its address to
+- be NULL, so we cannot optimize. */
+- if (DECL_P (inner))
+- {
+- gcc_assert (DECL_WEAK (inner));
+- break;
+- }
+-
+- if (TREE_SIDE_EFFECTS (inner))
+- {
+- expr = build2 (COMPOUND_EXPR, truthvalue_type_node,
+- inner, truthvalue_true_node);
+- goto ret;
+- }
+- else
+- return truthvalue_true_node;
++ break;
+ }
+
+ case COMPLEX_EXPR:
+@@ -6665,10 +6649,12 @@
}
else if (is_type)
{
{
tree tt = TREE_TYPE (decl);
*type = build_variant_type_copy (*type);
-@@ -6677,7 +6679,7 @@
+@@ -6677,7 +6663,7 @@
TREE_USED (*type) = TREE_USED (decl);
TREE_TYPE (decl) = *type;
}
*type = build_variant_type_copy (*type);
TYPE_ALIGN (*type) = (1U << i) * BITS_PER_UNIT;
+Index: gcc/tree-flow.h
+===================================================================
+--- gcc/tree-flow.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-flow.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -485,7 +485,6 @@
+ extern basic_block move_sese_region_to_fn (struct function *, basic_block,
+ basic_block, tree);
+ void remove_edge_and_dominated_blocks (edge);
+-void mark_virtual_ops_in_bb (basic_block);
+ bool tree_node_can_be_shared (tree);
+
+ /* In tree-cfgcleanup.c */
Index: gcc/config.gcc
===================================================================
---- gcc/config.gcc (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config.gcc (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config.gcc (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config.gcc (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -200,6 +200,8 @@
target_gtfiles=
need_64bit_hwint=
target_gtfiles="\$(srcdir)/config/darwin.c"
extra_options="${extra_options} darwin.opt"
c_target_objs="${c_target_objs} darwin-c.o"
-@@ -1091,11 +1093,11 @@
+@@ -1091,12 +1093,14 @@
# then this file using that to set --with-cpu=i386 which has no -m64
# support.
with_cpu=${with_cpu:-generic}
- tmake_file="${tmake_file} i386/t-crtpc i386/t-crtfm"
+ tmake_file="${tmake_file} t-slibgcc-darwin i386/t-crtpc i386/t-crtfm"
++ lto_binary_reader=lto-macho
;;
x86_64-*-darwin*)
with_cpu=${with_cpu:-generic}
- tmake_file="${tmake_file} t-darwin ${cpu_type}/t-darwin64 t-slibgcc-darwin i386/t-crtpc i386/t-crtfm"
+ tmake_file="${tmake_file} ${cpu_type}/t-darwin64 t-slibgcc-darwin i386/t-crtpc i386/t-crtfm"
tm_file="${tm_file} ${cpu_type}/darwin64.h"
++ lto_binary_reader=lto-macho
;;
i[34567]86-*-elf*)
-@@ -1238,7 +1240,19 @@
+ tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h"
+@@ -1238,7 +1242,19 @@
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h sol2.h"
# Set default arch_32 to pentium4, tune_32 to generic like the other
# i386 targets, although config.guess defaults to i386-pc-solaris2*.
with_tune_32=${with_tune_32:-generic}
case ${target} in
*-*-solaris2.1[0-9]*)
-@@ -1246,6 +1260,9 @@
+@@ -1246,6 +1262,9 @@
;;
esac
tm_file="${tm_file} i386/sol2.h"
if test x$gas = xyes; then
tm_file="${tm_file} i386/sol2-gas.h"
fi
-@@ -1336,6 +1353,7 @@
+@@ -1336,6 +1355,7 @@
thread_file='posix'
fi
use_gcc_stdint=wrap
;;
i[34567]86-*-mingw* | x86_64-*-mingw*)
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/mingw32.h"
-@@ -1403,6 +1421,7 @@
+@@ -1403,6 +1423,7 @@
cxx_target_objs="${cxx_target_objs} winnt-cxx.o msformat-c.o"
default_use_cxa_atexit=yes
use_gcc_stdint=wrap
case ${enable_threads} in
"" | yes | win32) thread_file='win32'
tmake_file="${tmake_file} i386/t-gthr-win32"
-@@ -1704,7 +1723,7 @@
+@@ -1704,7 +1725,7 @@
esac
if test "x$stabs" = xyes
then
fi
if test "x$gnu_ld" = xyes
then
-@@ -1915,12 +1934,14 @@
+@@ -1915,12 +1936,14 @@
*-darwin[0-6]*)
;;
esac
extra_headers=altivec.h
;;
powerpc*-*-freebsd*)
-@@ -2412,7 +2433,7 @@
+@@ -2412,7 +2435,7 @@
tm_file="${tm_file} sparc/sol2-gas.h sparc/sol2-gas-bi.h"
fi
if test x$gnu_ld = xyes; then
fi
tm_file="${tm_file} tm-dwarf2.h"
tmake_file="t-sol2 sparc/t-sol2 sparc/t-sol2-64 sparc/t-crtfm"
-@@ -3408,7 +3429,9 @@
+@@ -3408,7 +3431,9 @@
i[34567]86-*-darwin* | x86_64-*-darwin*)
tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp"
;;
i[34567]86-*-solaris2*)
Index: gcc/tlink.c
===================================================================
---- gcc/tlink.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tlink.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tlink.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tlink.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -32,6 +32,10 @@
#include "collect2.h"
#include "libiberty.h"
/* Defined in the automatically-generated underscore.c. */
Index: gcc/reginfo.c
===================================================================
---- gcc/reginfo.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/reginfo.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/reginfo.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/reginfo.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -666,6 +666,8 @@
reinit_regs (void)
{
Index: gcc/Makefile.in
===================================================================
---- gcc/Makefile.in (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/Makefile.in (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/Makefile.in (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/Makefile.in (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -325,6 +325,10 @@
# Set to 'yes' if the LTO front end is enabled.
enable_lto = @enable_lto@
opts-common.o : opts-common.c opts.h $(CONFIG_H) $(SYSTEM_H) \
coretypes.h intl.h
targhooks.o : targhooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TREE_H) \
+@@ -2996,7 +3000,7 @@
+ tree-sra.o : tree-sra.c $(CONFIG_H) $(SYSTEM_H) coretypes.h alloc-pool.h \
+ $(TM_H) $(TREE_H) $(GIMPLE_H) $(CGRAPH_H) $(TREE_FLOW_H) $(IPA_PROP_H) \
+ $(DIAGNOSTIC_H) statistics.h $(TREE_DUMP_H) $(TIMEVAR_H) $(PARAMS_H) \
+- $(TARGET_H) $(FLAGS_H) $(EXPR_H)
++ $(TARGET_H) $(FLAGS_H) $(EXPR_H) $(TREE_INLINE_H)
+ tree-switch-conversion.o : tree-switch-conversion.c $(CONFIG_H) $(SYSTEM_H) \
+ $(TREE_H) $(TM_P_H) $(TREE_FLOW_H) $(DIAGNOSTIC_H) $(TREE_INLINE_H) \
+ $(TIMEVAR_H) $(TM_H) coretypes.h $(TREE_DUMP_H) $(GIMPLE_H) \
Index: gcc/sched-rgn.c
===================================================================
---- gcc/sched-rgn.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/sched-rgn.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/sched-rgn.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/sched-rgn.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -237,7 +237,7 @@
static void schedule_region (int);
static rtx concat_INSN_LIST (rtx, rtx);
Index: gcc/gimple.c
===================================================================
---- gcc/gimple.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/gimple.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/gimple.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/gimple.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -281,6 +281,7 @@
gimple_call_set_return_slot_opt (call, CALL_EXPR_RETURN_SLOT_OPT (t));
gimple_call_set_from_thunk (call, CALL_FROM_THUNK_P (t));
return flags;
}
-@@ -3358,11 +3362,20 @@
+@@ -2986,14 +2990,8 @@
+ gimple_set_block (new_stmt, gimple_block (stmt));
+ if (gimple_has_location (stmt))
+ gimple_set_location (new_stmt, gimple_location (stmt));
+-
+- /* Carry all the flags to the new GIMPLE_CALL. */
++ gimple_call_copy_flags (new_stmt, stmt);
+ gimple_call_set_chain (new_stmt, gimple_call_chain (stmt));
+- gimple_call_set_tail (new_stmt, gimple_call_tail_p (stmt));
+- gimple_call_set_cannot_inline (new_stmt, gimple_call_cannot_inline_p (stmt));
+- gimple_call_set_return_slot_opt (new_stmt, gimple_call_return_slot_opt_p (stmt));
+- gimple_call_set_from_thunk (new_stmt, gimple_call_from_thunk_p (stmt));
+- gimple_call_set_va_arg_pack (new_stmt, gimple_call_va_arg_pack_p (stmt));
+
+ gimple_set_modified (new_stmt, true);
+
+@@ -3358,11 +3356,20 @@
&& RECORD_OR_UNION_TYPE_P (TREE_TYPE (t1))
&& (!COMPLETE_TYPE_P (TREE_TYPE (t1))
|| !COMPLETE_TYPE_P (TREE_TYPE (t2)))
if (COMPLETE_TYPE_P (TREE_TYPE (t2)))
TREE_TYPE (t1) = TREE_TYPE (t2);
else
-@@ -4559,7 +4572,8 @@
+@@ -4559,7 +4566,8 @@
const char *
gimple_decl_printable_name (tree decl, int verbosity)
{
{
Index: gcc/tree-ssa-structalias.c
===================================================================
---- gcc/tree-ssa-structalias.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-ssa-structalias.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-ssa-structalias.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-ssa-structalias.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2803,7 +2803,11 @@
static bool
could_have_pointers (tree t)
sort the field list and create fake variables for all the
Index: gcc/gimple.h
===================================================================
---- gcc/gimple.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/gimple.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/gimple.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/gimple.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -105,6 +105,7 @@
GF_CALL_RETURN_SLOT_OPT = 1 << 2,
GF_CALL_TAILCALL = 1 << 3,
/* Return true if S is a nothrow call. */
static inline bool
+Index: gcc/tree-cfg.c
+===================================================================
+--- gcc/tree-cfg.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-cfg.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -5661,21 +5661,6 @@
+ return NULL_TREE;
+ }
+
+-/* Marks virtual operands of all statements in basic blocks BBS for
+- renaming. */
+-
+-void
+-mark_virtual_ops_in_bb (basic_block bb)
+-{
+- gimple_stmt_iterator gsi;
+-
+- for (gsi = gsi_start_phis (bb); !gsi_end_p (gsi); gsi_next (&gsi))
+- mark_virtual_ops_for_renaming (gsi_stmt (gsi));
+-
+- for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); gsi_next (&gsi))
+- mark_virtual_ops_for_renaming (gsi_stmt (gsi));
+-}
+-
+ /* Move basic block BB from function CFUN to function DEST_FN. The
+ block is moved out of the original linked list and placed after
+ block AFTER in the new list. Also, the block is removed from the
+@@ -6452,7 +6437,7 @@
+ gimple_block_ends_with_call_p (basic_block bb)
+ {
+ gimple_stmt_iterator gsi = gsi_last_nondebug_bb (bb);
+- return is_gimple_call (gsi_stmt (gsi));
++ return !gsi_end_p (gsi) && is_gimple_call (gsi_stmt (gsi));
+ }
+
+
Index: gcc/passes.c
===================================================================
---- gcc/passes.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/passes.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/passes.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/passes.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -742,6 +742,7 @@
/* Interprocedural optimization passes. */
struct opt_pass **p = &pass_early_local_passes.pass.sub;
Index: gcc/config/alpha/elf.h
===================================================================
---- gcc/config/alpha/elf.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/alpha/elf.h (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -272,20 +272,36 @@
+--- gcc/config/alpha/elf.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/alpha/elf.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,6 +1,6 @@
+ /* Definitions of target machine for GNU compiler, for DEC Alpha w/ELF.
+ Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2007, 2008,
+- 2009 Free Software Foundation, Inc.
++ 2009, 2010 Free Software Foundation, Inc.
+ Contributed by Richard Henderson (rth@tamu.edu).
+
+ This file is part of GCC.
+@@ -272,20 +272,38 @@
/* Write the extra assembler code needed to declare an object properly. */
+ HOST_WIDE_INT size; \
+ \
+ /* For template static data member instantiations or \
-+ inline fn local statics, use gnu_unique_object so that \
-+ they will be combined even under RTLD_LOCAL. */ \
-+ if (USE_GNU_UNIQUE_OBJECT \
-+ && !DECL_ARTIFICIAL (DECL) && DECL_ONE_ONLY (DECL)) \
++ inline fn local statics and their guard variables, use \
++ gnu_unique_object so that they will be combined even under \
++ RTLD_LOCAL. Don't use gnu_unique_object for typeinfo, \
++ vtables and other read-only artificial decls. */ \
++ if (USE_GNU_UNIQUE_OBJECT && DECL_ONE_ONLY (DECL) \
++ && (!DECL_ARTIFICIAL (DECL) || !TREE_READONLY (DECL))) \
+ ASM_OUTPUT_TYPE_DIRECTIVE (FILE, NAME, "gnu_unique_object"); \
+ else \
+ ASM_OUTPUT_TYPE_DIRECTIVE (FILE, NAME, "object"); \
/* Output the size directive for a decl in rest_of_decl_compilation
Index: gcc/config/alpha/osf.h
===================================================================
---- gcc/config/alpha/osf.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/alpha/osf.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/alpha/osf.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/alpha/osf.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -213,6 +213,14 @@
? (((GLOBAL) ? DW_EH_PE_indirect : 0) | DW_EH_PE_pcrel | DW_EH_PE_sdata4) \
: DW_EH_PE_aligned)
#define ASM_OUTPUT_WEAK_ALIAS(FILE, NAME, VALUE) \
Index: gcc/config/s390/s390.c
===================================================================
---- gcc/config/s390/s390.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/s390/s390.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/s390/s390.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/s390/s390.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1636,12 +1636,19 @@
target_flags |= MASK_LONG_DOUBLE_128;
#endif
/* Unless we can use the bras(l) insn, force the
Index: gcc/config/s390/s390.md
===================================================================
---- gcc/config/s390/s390.md (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/s390/s390.md (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/s390/s390.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/s390/s390.md (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -105,11 +105,8 @@
(UNSPEC_SP_SET 700)
(UNSPEC_SP_TEST 701)
; movcc instruction pattern
Index: gcc/config/s390/2097.md
===================================================================
---- gcc/config/s390/2097.md (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/s390/2097.md (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/s390/2097.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/s390/2097.md (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -466,15 +466,6 @@
(eq_attr "type" "fsimpdf,fmuldf"))
"z10_e1_BOTH, z10_Gate_FP")
(define_insn_reservation "z10_fsimpsf" 6
(and (eq_attr "cpu" "z10")
(eq_attr "type" "fsimpsf,fmulsf"))
+Index: gcc/config/elfos.h
+===================================================================
+--- gcc/config/elfos.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/elfos.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,7 +1,7 @@
+ /* elfos.h -- operating system specific defines to be used when
+ targeting GCC for some generic ELF system
+ Copyright (C) 1991, 1994, 1995, 1999, 2000, 2001, 2002, 2003, 2004,
+- 2007, 2009 Free Software Foundation, Inc.
++ 2007, 2009, 2010 Free Software Foundation, Inc.
+ Based on svr4.h contributed by Ron Guilmette (rfg@netcom.com).
+
+ This file is part of GCC.
+@@ -301,10 +301,12 @@
+ HOST_WIDE_INT size; \
+ \
+ /* For template static data member instantiations or \
+- inline fn local statics, use gnu_unique_object so that \
+- they will be combined even under RTLD_LOCAL. */ \
+- if (USE_GNU_UNIQUE_OBJECT \
+- && !DECL_ARTIFICIAL (DECL) && DECL_ONE_ONLY (DECL)) \
++ inline fn local statics and their guard variables, use \
++ gnu_unique_object so that they will be combined even under \
++ RTLD_LOCAL. Don't use gnu_unique_object for typeinfo, \
++ vtables and other read-only artificial decls. */ \
++ if (USE_GNU_UNIQUE_OBJECT && DECL_ONE_ONLY (DECL) \
++ && (!DECL_ARTIFICIAL (DECL) || !TREE_READONLY (DECL))) \
+ ASM_OUTPUT_TYPE_DIRECTIVE (FILE, NAME, "gnu_unique_object"); \
+ else \
+ ASM_OUTPUT_TYPE_DIRECTIVE (FILE, NAME, "object"); \
Index: gcc/config/m32c/blkmov.md
===================================================================
---- gcc/config/m32c/blkmov.md (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/m32c/blkmov.md (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/m32c/blkmov.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/m32c/blkmov.md (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,5 @@
;; Machine Descriptions for R8C/M16C/M32C
-;; Copyright (C) 2006, 2007
]
Index: gcc/config/sparc/sol2-gld.h
===================================================================
---- gcc/config/sparc/sol2-gld.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/sparc/sol2-gld.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/sparc/sol2-gld.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/sparc/sol2-gld.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,27 +0,0 @@
-/* Definitions of target machine for GCC, for SPARC running Solaris 2
- using the GNU linker.
-#define SUPPORTS_INIT_PRIORITY 1
Index: gcc/config/sparc/sol2-gld-bi.h
===================================================================
---- gcc/config/sparc/sol2-gld-bi.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/sparc/sol2-gld-bi.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/sparc/sol2-gld-bi.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/sparc/sol2-gld-bi.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -32,25 +32,35 @@
#define LINK_ARCH64_SPEC \
LINK_ARCH64_SPEC_BASE "%{!static: -rpath-link %R/usr/lib/sparcv9}"
#endif
Index: gcc/config/i386/i386.h
===================================================================
---- gcc/config/i386/i386.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/i386.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/i386.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/i386.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2147,9 +2147,12 @@
/* Switch to init or fini section via SECTION_OP, emit a call to FUNC,
and switch back. For x86 we do this only to save a few bytes that
/* Print operand X (an rtx) in assembler syntax to file FILE.
Index: gcc/config/i386/cygming.h
===================================================================
---- gcc/config/i386/cygming.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/cygming.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/cygming.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/cygming.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -39,6 +39,23 @@
#undef DEFAULT_ABI
#define DEFAULT_ABI (TARGET_64BIT ? MS_ABI : SYSV_ABI)
flag_pic = 0; \
Index: gcc/config/i386/i386.md
===================================================================
---- gcc/config/i386/i386.md (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/i386.md (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/i386.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/i386.md (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -97,10 +97,11 @@
(UNSPEC_SCAS 30)
(UNSPEC_FNSTSW 31)
(UNSPEC_LD_MPIC 38) ; load_macho_picbase
(UNSPEC_TRUNC_NOOP 39)
+@@ -356,7 +357,7 @@
+ push,pop,call,callv,leave,
+ str,bitmanip,
+ fmov,fop,fsgn,fmul,fdiv,fpspc,fcmov,fcmp,fxch,fistp,fisttp,frndint,
+- sselog,sselog1,sseiadd,sseiadd1,sseishft,sseimul,
++ sselog,sselog1,sseiadd,sseiadd1,sseishft,sseishft1,sseimul,
+ sse,ssemov,sseadd,ssemul,ssecmp,ssecomi,ssecvt,ssecvt1,sseicvt,ssediv,sseins,
+ ssemuladd,sse4arg,lwp,
+ mmx,mmxmov,mmxadd,mmxmul,mmxcmp,mmxcvt,mmxshft"
+@@ -371,7 +372,7 @@
+ (define_attr "unit" "integer,i387,sse,mmx,unknown"
+ (cond [(eq_attr "type" "fmov,fop,fsgn,fmul,fdiv,fpspc,fcmov,fcmp,fxch,fistp,fisttp,frndint")
+ (const_string "i387")
+- (eq_attr "type" "sselog,sselog1,sseiadd,sseiadd1,sseishft,sseimul,
++ (eq_attr "type" "sselog,sselog1,sseiadd,sseiadd1,sseishft,sseishft1,sseimul,
+ sse,ssemov,sseadd,ssemul,ssecmp,ssecomi,ssecvt,
+ ssecvt1,sseicvt,ssediv,sseins,ssemuladd,sse4arg")
+ (const_string "sse")
@@ -1375,11 +1376,12 @@
UNSPEC_SAHF))]
"TARGET_SAHF"
{
-#ifdef HAVE_AS_IX86_SAHF
-- return "sahf";
--#else
-- return ASM_BYTE "0x9e";
+#ifndef HAVE_AS_IX86_SAHF
+ if (TARGET_64BIT)
+ return ASM_BYTE "0x9e";
+ else
- #endif
-+ return "sahf";
++#endif
+ return "sahf";
+-#else
+- return ASM_BYTE "0x9e";
+-#endif
}
[(set_attr "length" "1")
(set_attr "athlon_decode" "vector")
(match_dup 2)) 0)))]
{
operands[1] = gen_lowpart (Pmode, operands[1]);
-@@ -14178,13 +14180,13 @@
+@@ -13183,7 +13185,7 @@
+ ;; Define combination compare-and-branch fp compare instructions to help
+ ;; combine.
+
+-(define_insn "*fp_jcc_3_387"
++(define_insn "*fp_jcc_1_387"
+ [(set (pc)
+ (if_then_else (match_operator 0 "ix86_fp_comparison_operator"
+ [(match_operand 1 "register_operand" "f")
+@@ -13201,7 +13203,7 @@
+ && !TARGET_CMOVE"
+ "#")
+
+-(define_insn "*fp_jcc_4_387"
++(define_insn "*fp_jcc_1r_387"
+ [(set (pc)
+ (if_then_else (match_operator 0 "ix86_fp_comparison_operator"
+ [(match_operand 1 "register_operand" "f")
+@@ -13219,7 +13221,7 @@
+ && !TARGET_CMOVE"
+ "#")
+
+-(define_insn "*fp_jcc_5_387"
++(define_insn "*fp_jcc_2_387"
+ [(set (pc)
+ (if_then_else (match_operator 0 "ix86_fp_comparison_operator"
+ [(match_operand 1 "register_operand" "f")
+@@ -13234,7 +13236,7 @@
+ && !TARGET_CMOVE"
+ "#")
+
+-(define_insn "*fp_jcc_6_387"
++(define_insn "*fp_jcc_2r_387"
+ [(set (pc)
+ (if_then_else (match_operator 0 "ix86_fp_comparison_operator"
+ [(match_operand 1 "register_operand" "f")
+@@ -13249,7 +13251,7 @@
+ && !TARGET_CMOVE"
+ "#")
+
+-(define_insn "*fp_jcc_7_387"
++(define_insn "*fp_jcc_3_387"
+ [(set (pc)
+ (if_then_else (match_operator 0 "ix86_fp_comparison_operator"
+ [(match_operand 1 "register_operand" "f")
+@@ -13266,29 +13268,6 @@
+ && !TARGET_CMOVE"
+ "#")
+
+-;; The order of operands in *fp_jcc_8_387 is forced by combine in
+-;; simplify_comparison () function. Float operator is treated as RTX_OBJ
+-;; with a precedence over other operators and is always put in the first
+-;; place. Swap condition and operands to match ficom instruction.
+-
+-(define_insn "*fp_jcc_8<mode>_387"
+- [(set (pc)
+- (if_then_else (match_operator 0 "ix86_fp_comparison_operator"
+- [(match_operator 1 "float_operator"
+- [(match_operand:X87MODEI12 2 "nonimmediate_operand" "m,?r")])
+- (match_operand 3 "register_operand" "f,f")])
+- (label_ref (match_operand 4 "" ""))
+- (pc)))
+- (clobber (reg:CCFP FPSR_REG))
+- (clobber (reg:CCFP FLAGS_REG))
+- (clobber (match_scratch:HI 5 "=a,a"))]
+- "X87_FLOAT_MODE_P (GET_MODE (operands[3]))
+- && (TARGET_USE_<MODE>MODE_FIOP || optimize_function_for_size_p (cfun))
+- && GET_MODE (operands[1]) == GET_MODE (operands[3])
+- && ix86_fp_compare_mode (swap_condition (GET_CODE (operands[0]))) == CCFPmode
+- && !TARGET_CMOVE"
+- "#")
+-
+ (define_split
+ [(set (pc)
+ (if_then_else (match_operator 0 "ix86_fp_comparison_operator"
+@@ -13324,12 +13303,37 @@
+ DONE;
+ })
+
++;; The order of operands in *fp_jcc_4_387 is forced by combine in
++;; simplify_comparison () function. Float operator is treated as RTX_OBJ
++;; with a precedence over other operators and is always put in the first
++;; place. Swap condition and operands to match ficom instruction.
++
++(define_insn "*fp_jcc_4_<mode>_387"
++ [(set (pc)
++ (if_then_else
++ (match_operator 0 "ix86_swapped_fp_comparison_operator"
++ [(match_operator 1 "float_operator"
++ [(match_operand:X87MODEI12 2 "nonimmediate_operand" "m,?r")])
++ (match_operand 3 "register_operand" "f,f")])
++ (label_ref (match_operand 4 "" ""))
++ (pc)))
++ (clobber (reg:CCFP FPSR_REG))
++ (clobber (reg:CCFP FLAGS_REG))
++ (clobber (match_scratch:HI 5 "=a,a"))]
++ "X87_FLOAT_MODE_P (GET_MODE (operands[3]))
++ && (TARGET_USE_<MODE>MODE_FIOP || optimize_function_for_size_p (cfun))
++ && GET_MODE (operands[1]) == GET_MODE (operands[3])
++ && ix86_fp_compare_mode (swap_condition (GET_CODE (operands[0]))) == CCFPmode
++ && !TARGET_CMOVE"
++ "#")
++
+ (define_split
+ [(set (pc)
+- (if_then_else (match_operator 0 "ix86_fp_comparison_operator"
+- [(match_operator 1 "float_operator"
+- [(match_operand:X87MODEI12 2 "memory_operand" "")])
+- (match_operand 3 "register_operand" "")])
++ (if_then_else
++ (match_operator 0 "ix86_swapped_fp_comparison_operator"
++ [(match_operator 1 "float_operator"
++ [(match_operand:X87MODEI12 2 "memory_operand" "")])
++ (match_operand 3 "register_operand" "")])
+ (match_operand 4 "" "")
+ (match_operand 5 "" "")))
+ (clobber (reg:CCFP FPSR_REG))
+@@ -13348,10 +13352,11 @@
+ ;; %%% Kill this when reload knows how to do it.
+ (define_split
+ [(set (pc)
+- (if_then_else (match_operator 0 "ix86_fp_comparison_operator"
+- [(match_operator 1 "float_operator"
+- [(match_operand:X87MODEI12 2 "register_operand" "")])
+- (match_operand 3 "register_operand" "")])
++ (if_then_else
++ (match_operator 0 "ix86_swapped_fp_comparison_operator"
++ [(match_operator 1 "float_operator"
++ [(match_operand:X87MODEI12 2 "register_operand" "")])
++ (match_operand 3 "register_operand" "")])
+ (match_operand 4 "" "")
+ (match_operand 5 "" "")))
+ (clobber (reg:CCFP FPSR_REG))
+@@ -14178,13 +14183,13 @@
(popcount:SI (match_operand:SI 1 "nonimmediate_operand" "rm"))
(const_int 0)))
(set (match_operand:DI 0 "register_operand" "=r")
#endif
}
[(set_attr "prefix_rep" "1")
-@@ -14389,7 +14391,8 @@
+@@ -14389,7 +14394,8 @@
(define_insn_and_split "paritydi2_cmp"
[(set (reg:CC FLAGS_REG)
(clobber (match_scratch:DI 0 "=r"))
(clobber (match_scratch:SI 1 "=&r"))
(clobber (match_scratch:HI 2 "=Q"))]
-@@ -14402,7 +14405,7 @@
+@@ -14402,7 +14408,7 @@
(clobber (reg:CC FLAGS_REG))])
(parallel
[(set (reg:CC FLAGS_REG)
(clobber (match_dup 1))
(clobber (match_dup 2))])]
{
-@@ -14438,7 +14441,8 @@
+@@ -14438,7 +14444,8 @@
(define_insn_and_split "paritysi2_cmp"
[(set (reg:CC FLAGS_REG)
(clobber (match_scratch:SI 0 "=r"))
(clobber (match_scratch:HI 1 "=&Q"))]
"! TARGET_POPCNT"
-@@ -14450,7 +14454,7 @@
+@@ -14450,7 +14457,7 @@
(clobber (reg:CC FLAGS_REG))])
(parallel
[(set (reg:CC FLAGS_REG)
(clobber (match_dup 1))])]
{
operands[3] = gen_lowpart (HImode, operands[2]);
-@@ -14461,20 +14465,13 @@
+@@ -14461,20 +14468,13 @@
(define_insn "*parityhi2_cmp"
[(set (reg:CC FLAGS_REG)
\f
;; Thread-local storage patterns for ELF.
;;
-@@ -17753,7 +17750,7 @@
+@@ -17753,7 +17753,7 @@
(mem:BLK (match_dup 4)))
(use (match_dup 5))]
"TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "prefix_rep" "1")
(set_attr "memory" "both")
-@@ -17772,7 +17769,7 @@
+@@ -17772,7 +17772,7 @@
(mem:BLK (match_dup 4)))
(use (match_dup 5))]
"!TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "prefix_rep" "1")
(set_attr "memory" "both")
-@@ -17791,7 +17788,7 @@
+@@ -17791,7 +17791,7 @@
(mem:BLK (match_dup 4)))
(use (match_dup 5))]
"TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "prefix_rep" "1")
(set_attr "memory" "both")
-@@ -17808,7 +17805,7 @@
+@@ -17808,7 +17808,7 @@
(mem:BLK (match_dup 4)))
(use (match_dup 5))]
"!TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "prefix_rep" "1")
(set_attr "memory" "both")
-@@ -17825,7 +17822,7 @@
+@@ -17825,7 +17825,7 @@
(mem:BLK (match_dup 4)))
(use (match_dup 5))]
"TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "prefix_rep" "1")
(set_attr "memory" "both")
-@@ -18006,7 +18003,7 @@
+@@ -18006,7 +18006,7 @@
(use (match_operand:DI 2 "register_operand" "a"))
(use (match_dup 4))]
"TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "prefix_rep" "1")
(set_attr "memory" "store")
-@@ -18023,7 +18020,7 @@
+@@ -18023,7 +18023,7 @@
(use (match_operand:SI 2 "register_operand" "a"))
(use (match_dup 4))]
"!TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "prefix_rep" "1")
(set_attr "memory" "store")
-@@ -18040,7 +18037,7 @@
+@@ -18040,7 +18040,7 @@
(use (match_operand:SI 2 "register_operand" "a"))
(use (match_dup 4))]
"TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "prefix_rep" "1")
(set_attr "memory" "store")
-@@ -18056,7 +18053,7 @@
+@@ -18056,7 +18056,7 @@
(use (match_operand:QI 2 "register_operand" "a"))
(use (match_dup 4))]
"!TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "prefix_rep" "1")
(set_attr "memory" "store")
-@@ -18072,7 +18069,7 @@
+@@ -18072,7 +18072,7 @@
(use (match_operand:QI 2 "register_operand" "a"))
(use (match_dup 4))]
"TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "prefix_rep" "1")
(set_attr "memory" "store")
-@@ -18188,7 +18185,7 @@
+@@ -18188,7 +18188,7 @@
(clobber (match_operand:SI 1 "register_operand" "=D"))
(clobber (match_operand:SI 2 "register_operand" "=c"))]
"!TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "mode" "QI")
(set_attr "prefix_rep" "1")])
-@@ -18203,7 +18200,7 @@
+@@ -18203,7 +18203,7 @@
(clobber (match_operand:DI 1 "register_operand" "=D"))
(clobber (match_operand:DI 2 "register_operand" "=c"))]
"TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "mode" "QI")
(set_attr "prefix_rex" "0")
-@@ -18239,7 +18236,7 @@
+@@ -18239,7 +18239,7 @@
(clobber (match_operand:SI 1 "register_operand" "=D"))
(clobber (match_operand:SI 2 "register_operand" "=c"))]
"!TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "mode" "QI")
(set_attr "prefix_rep" "1")])
-@@ -18257,7 +18254,7 @@
+@@ -18257,7 +18257,7 @@
(clobber (match_operand:DI 1 "register_operand" "=D"))
(clobber (match_operand:DI 2 "register_operand" "=c"))]
"TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "mode" "QI")
(set_attr "prefix_rex" "0")
-@@ -18305,7 +18302,7 @@
+@@ -18305,7 +18305,7 @@
(clobber (match_operand:SI 1 "register_operand" "=D"))
(clobber (reg:CC FLAGS_REG))]
"!TARGET_64BIT"
[(set_attr "type" "str")
(set_attr "mode" "QI")
(set_attr "prefix_rep" "1")])
-@@ -18319,7 +18316,7 @@
+@@ -18319,7 +18319,7 @@
(clobber (match_operand:DI 1 "register_operand" "=D"))
(clobber (reg:CC FLAGS_REG))]
"TARGET_64BIT"
(set_attr "prefix_rex" "0")
Index: gcc/config/i386/mingw-w64.h
===================================================================
---- gcc/config/i386/mingw-w64.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/mingw-w64.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/mingw-w64.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/mingw-w64.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -39,6 +39,8 @@
#define ASM_SPEC "%{v:-v} %{n} %{T} %{Ym,*} %{Yd,*} \
%{Wa,*:%*} %{m32:--32} %{m64:--64}"
%(shared_libgcc_undefs)"
Index: gcc/config/i386/t-cygming
===================================================================
---- gcc/config/i386/t-cygming (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/t-cygming (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/t-cygming (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/t-cygming (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-# Copyright (C) 2003, 2005, 2008, 2009 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2005, 2008, 2009, 2010 Free Software Foundation, Inc.
Index: gcc/config/i386/sol2.h
===================================================================
---- gcc/config/i386/sol2.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/sol2.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/sol2.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/sol2.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -72,7 +72,7 @@
#define LOCAL_LABEL_PREFIX "."
/* The Sun assembler uses .tcomm for TLS common sections. */
#define TLS_COMMON_ASM_OP ".tcomm"
+Index: gcc/config/i386/predicates.md
+===================================================================
+--- gcc/config/i386/predicates.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/predicates.md (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1083,6 +1083,19 @@
+ (match_operand 0 "comparison_operator")
+ (match_operand 0 "ix86_trivial_fp_comparison_operator")))
+
++;; Same as above, but for swapped comparison used in fp_jcc_4_387.
++(define_predicate "ix86_swapped_fp_comparison_operator"
++ (match_operand 0 "comparison_operator")
++{
++ enum rtx_code code = GET_CODE (op);
++ int ret;
++
++ PUT_CODE (op, swap_condition (code));
++ ret = ix86_fp_comparison_operator (op, mode);
++ PUT_CODE (op, code);
++ return ret;
++})
++
+ ;; Nearly general operand, but accept any const_double, since we wish
+ ;; to be able to drop them into memory rather than have them get pulled
+ ;; into registers.
+Index: gcc/config/i386/atom.md
+===================================================================
+--- gcc/config/i386/atom.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/atom.md (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -501,9 +501,10 @@
+ ;; if palignr or psrldq
+ (define_insn_reservation "atom_sseishft_2" 1
+ (and (eq_attr "cpu" "atom")
+- (and (eq_attr "type" "sseishft")
+- (and (eq_attr "atom_unit" "sishuf")
+- (match_operand 2 "immediate_operand"))))
++ (ior (eq_attr "type" "sseishft1")
++ (and (eq_attr "type" "sseishft")
++ (and (eq_attr "atom_unit" "sishuf")
++ (match_operand 2 "immediate_operand")))))
+ "atom-simple-0")
+
+ ;; if reg/mem op
+Index: gcc/config/i386/ppro.md
+===================================================================
+--- gcc/config/i386/ppro.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/ppro.md (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -731,7 +731,7 @@
+ (define_insn_reservation "ppro_insn" 1
+ (and (eq_attr "cpu" "pentiumpro")
+ (and (eq_attr "memory" "none,unknown")
+- (eq_attr "type" "alu,alu1,negnot,incdec,icmp,test,setcc,icmov,push,pop,fxch,sseiadd,sseishft,sseimul,mmx,mmxadd,mmxcmp")))
++ (eq_attr "type" "alu,alu1,negnot,incdec,icmp,test,setcc,icmov,push,pop,fxch,sseiadd,sseishft,sseishft1,sseimul,mmx,mmxadd,mmxcmp")))
+ "decodern,(p0|p1)")
+
+ ;; read-modify and register-memory instructions have 2 or three uops,
+@@ -739,13 +739,13 @@
+ (define_insn_reservation "ppro_insn_load" 3
+ (and (eq_attr "cpu" "pentiumpro")
+ (and (eq_attr "memory" "load")
+- (eq_attr "type" "alu,alu1,negnot,incdec,icmp,test,setcc,icmov,push,pop,fxch,sseiadd,sseishft,sseimul,mmx,mmxadd,mmxcmp")))
++ (eq_attr "type" "alu,alu1,negnot,incdec,icmp,test,setcc,icmov,push,pop,fxch,sseiadd,sseishft,sseishft1,sseimul,mmx,mmxadd,mmxcmp")))
+ "decoder0,p2+(p0|p1)")
+
+ (define_insn_reservation "ppro_insn_store" 1
+ (and (eq_attr "cpu" "pentiumpro")
+ (and (eq_attr "memory" "store")
+- (eq_attr "type" "alu,alu1,negnot,incdec,icmp,test,setcc,icmov,push,pop,fxch,sseiadd,sseishft,sseimul,mmx,mmxadd,mmxcmp")))
++ (eq_attr "type" "alu,alu1,negnot,incdec,icmp,test,setcc,icmov,push,pop,fxch,sseiadd,sseishft,sseishft1,sseimul,mmx,mmxadd,mmxcmp")))
+ "decoder0,(p0|p1),p4+p3")
+
+ ;; read-modify-store instructions produce 4 uops so they have to be
+@@ -753,6 +753,6 @@
+ (define_insn_reservation "ppro_insn_both" 4
+ (and (eq_attr "cpu" "pentiumpro")
+ (and (eq_attr "memory" "both")
+- (eq_attr "type" "alu,alu1,negnot,incdec,icmp,test,setcc,icmov,push,pop,fxch,sseiadd,sseishft,sseimul,mmx,mmxadd,mmxcmp")))
++ (eq_attr "type" "alu,alu1,negnot,incdec,icmp,test,setcc,icmov,push,pop,fxch,sseiadd,sseishft,sseishft1,sseimul,mmx,mmxadd,mmxcmp")))
+ "decoder0,p2+(p0|p1),p4+p3")
+
Index: gcc/config/i386/winnt.c
===================================================================
---- gcc/config/i386/winnt.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/winnt.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/winnt.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/winnt.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -35,6 +35,7 @@
#include "langhooks.h"
#include "ggc.h"
if (!SYMBOL_REF_DLLEXPORT_P (symbol))
Index: gcc/config/i386/sol2-10.h
===================================================================
---- gcc/config/i386/sol2-10.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/sol2-10.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/sol2-10.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/sol2-10.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -120,8 +120,19 @@
#define LINK_ARCH64_SPEC LINK_ARCH64_SPEC_BASE
Index: gcc/config/i386/sse.md
===================================================================
---- gcc/config/i386/sse.md (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/sse.md (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/sse.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/sse.md (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1483,6 +1483,20 @@
(set_attr "length_immediate" "1")
(set_attr "mode" "<MODE>")])
[(set_attr "type" "sselog")
(set_attr "prefix_extra" "1")
(set_attr "length_immediate" "1")
+@@ -5927,6 +5941,7 @@
+ [(set_attr "type" "sseishft")
+ (set_attr "prefix_data16" "1")
+ (set_attr "length_immediate" "1")
++ (set_attr "atom_unit" "sishuf")
+ (set_attr "mode" "TI")])
+
+ (define_insn "lshr<mode>3"
+@@ -7357,7 +7372,7 @@
+ vpsrldq\t{$8, %1, %0|%0, %1, 8}
+ vmovq\t{%H1, %0|%0, %H1}
+ vmov{q}\t{%H1, %0|%0, %H1}"
+- [(set_attr "type" "ssemov,sseishft,ssemov,imov")
++ [(set_attr "type" "ssemov,sseishft1,ssemov,imov")
+ (set_attr "length_immediate" "*,1,*,*")
+ (set_attr "memory" "*,none,*,*")
+ (set_attr "prefix" "vex")
+@@ -7374,9 +7389,8 @@
+ psrldq\t{$8, %0|%0, 8}
+ movq\t{%H1, %0|%0, %H1}
+ mov{q}\t{%H1, %0|%0, %H1}"
+- [(set_attr "type" "ssemov,sseishft,ssemov,imov")
++ [(set_attr "type" "ssemov,sseishft1,ssemov,imov")
+ (set_attr "length_immediate" "*,1,*,*")
+- (set_attr "atom_unit" "*,sishuf,*,*")
+ (set_attr "memory" "*,none,*,*")
+ (set_attr "mode" "V2SF,TI,TI,DI")])
+
+@@ -7392,7 +7406,7 @@
+ vmovhps\t{%1, %0|%0, %1}
+ vpsrldq\t{$8, %1, %0|%0, %1, 8}
+ vmovq\t{%H1, %0|%0, %H1}"
+- [(set_attr "type" "ssemov,sseishft,ssemov")
++ [(set_attr "type" "ssemov,sseishft1,ssemov")
+ (set_attr "length_immediate" "*,1,*")
+ (set_attr "memory" "*,none,*")
+ (set_attr "prefix" "vex")
+@@ -7409,9 +7423,8 @@
+ movhps\t{%1, %0|%0, %1}
+ psrldq\t{$8, %0|%0, 8}
+ movq\t{%H1, %0|%0, %H1}"
+- [(set_attr "type" "ssemov,sseishft,ssemov")
++ [(set_attr "type" "ssemov,sseishft1,ssemov")
+ (set_attr "length_immediate" "*,1,*")
+- (set_attr "atom_unit" "*,sishuf,*")
+ (set_attr "memory" "*,none,*")
+ (set_attr "mode" "V2SF,TI,TI")])
+
Index: gcc/config/i386/darwin.h
===================================================================
---- gcc/config/i386/darwin.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/darwin.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/darwin.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/darwin.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -92,6 +92,7 @@
#undef CC1_SPEC
%{g: %{!fno-eliminate-unused-debug-symbols: -feliminate-unused-debug-symbols }}"
Index: gcc/config/i386/mingw32.h
===================================================================
---- gcc/config/i386/mingw32.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/mingw32.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/mingw32.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/mingw32.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -47,6 +47,22 @@
} \
while (0)
/* Include in the mingw32 libraries with libgcc */
Index: gcc/config/i386/ia32intrin.h
===================================================================
---- gcc/config/i386/ia32intrin.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/ia32intrin.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/ia32intrin.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/ia32intrin.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -178,6 +178,7 @@
return __builtin_bswap64 (__X);
}
extern __inline long long
Index: gcc/config/i386/sync.md
===================================================================
---- gcc/config/i386/sync.md (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/sync.md (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/sync.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/sync.md (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,5 @@
;; GCC machine description for i386 synchronization instructions.
-;; Copyright (C) 2005, 2006, 2007, 2008, 2009
+ "lock{%;} <logicprefix>{<imodesuffix>}\t{%1, %0|%0, %1}")
Index: gcc/config/i386/driver-i386.c
===================================================================
---- gcc/config/i386/driver-i386.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/driver-i386.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/driver-i386.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/driver-i386.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -538,34 +538,61 @@
cpu = "pentium";
break;
if (has_sse3)
Index: gcc/config/i386/i386.c
===================================================================
---- gcc/config/i386/i386.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/i386/i386.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/i386/i386.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/i386/i386.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -2528,7 +2528,7 @@
if (flags && add_nl_p)
{
&& i < cum->regno + cfun->va_list_gpr_size / UNITS_PER_WORD;
i++)
{
-@@ -9214,9 +9204,11 @@
+@@ -7147,7 +7137,7 @@
+ }
+ if (need_temp)
+ {
+- int i;
++ int i, prev_size = 0;
+ tree temp = create_tmp_var (type, "va_arg_tmp");
+
+ /* addr = &temp; */
+@@ -7159,14 +7149,30 @@
+ rtx slot = XVECEXP (container, 0, i);
+ rtx reg = XEXP (slot, 0);
+ enum machine_mode mode = GET_MODE (reg);
+- tree piece_type = lang_hooks.types.type_for_mode (mode, 1);
+- tree addr_type = build_pointer_type (piece_type);
+- tree daddr_type = build_pointer_type_for_mode (piece_type,
+- ptr_mode, true);
++ tree piece_type;
++ tree addr_type;
++ tree daddr_type;
+ tree src_addr, src;
+ int src_offset;
+ tree dest_addr, dest;
++ int cur_size = GET_MODE_SIZE (mode);
+
++ if (prev_size + cur_size > size)
++ {
++ cur_size = size - prev_size;
++ mode = mode_for_size (cur_size * BITS_PER_UNIT, MODE_INT, 1);
++ if (mode == BLKmode)
++ mode = QImode;
++ }
++ piece_type = lang_hooks.types.type_for_mode (mode, 1);
++ if (mode == GET_MODE (reg))
++ addr_type = build_pointer_type (piece_type);
++ else
++ addr_type = build_pointer_type_for_mode (piece_type, ptr_mode,
++ true);
++ daddr_type = build_pointer_type_for_mode (piece_type, ptr_mode,
++ true);
++
+ if (SSE_REGNO_P (REGNO (reg)))
+ {
+ src_addr = sse_addr;
+@@ -7180,14 +7186,26 @@
+ src_addr = fold_convert (addr_type, src_addr);
+ src_addr = fold_build2 (POINTER_PLUS_EXPR, addr_type, src_addr,
+ size_int (src_offset));
+- src = build_va_arg_indirect_ref (src_addr);
+
+ dest_addr = fold_convert (daddr_type, addr);
+ dest_addr = fold_build2 (POINTER_PLUS_EXPR, daddr_type, dest_addr,
+ size_int (INTVAL (XEXP (slot, 1))));
+- dest = build_va_arg_indirect_ref (dest_addr);
++ if (cur_size == GET_MODE_SIZE (mode))
++ {
++ src = build_va_arg_indirect_ref (src_addr);
++ dest = build_va_arg_indirect_ref (dest_addr);
+
+- gimplify_assign (dest, src, pre_p);
++ gimplify_assign (dest, src, pre_p);
++ }
++ else
++ {
++ tree copy
++ = build_call_expr (implicit_built_in_decls[BUILT_IN_MEMCPY],
++ 3, dest_addr, src_addr,
++ size_int (cur_size));
++ gimplify_and_add (copy, pre_p);
++ }
++ prev_size += cur_size;
+ }
+ }
+
+@@ -9214,9 +9232,11 @@
if (!call_used_regs[REGNO (crtl->drap_reg)])
param_ptr_offset += UNITS_PER_WORD;
ix86_cfa_state->reg = stack_pointer_rtx;
ix86_cfa_state->offset = param_ptr_offset;
-@@ -10976,7 +10968,10 @@
+@@ -10976,7 +10996,10 @@
|| XINT (XEXP (x, 0), 1) != UNSPEC_GOTPCREL
|| !MEM_P (orig_x))
return orig_x;
}
if (GET_CODE (x) != PLUS
-@@ -11043,6 +11038,8 @@
+@@ -11043,6 +11066,8 @@
else
return orig_x;
}
return result;
}
-@@ -11383,7 +11380,7 @@
+@@ -11383,7 +11408,7 @@
return cfun->machine->some_ld_name;
for (insn = get_insns (); insn ; insn = NEXT_INSN (insn))
&& for_each_rtx (&PATTERN (insn), get_some_local_dynamic_name_1, 0))
return cfun->machine->some_ld_name;
-@@ -11896,10 +11893,8 @@
+@@ -11896,10 +11921,8 @@
return;
case ';':
#endif
return;
-@@ -12863,7 +12858,7 @@
+@@ -12863,7 +12886,7 @@
gcc_assert (!TARGET_64BIT);
#endif
}
void
-@@ -12879,21 +12874,21 @@
+@@ -12879,21 +12902,21 @@
#endif
/* We can't use @GOTOFF for text labels on VxWorks; see gotoff_operand. */
if (TARGET_64BIT || TARGET_VXWORKS_RTP)
}
\f
/* Generate either "mov $0, reg" or "xor reg, reg", as appropriate
-@@ -13629,7 +13624,7 @@
+@@ -13629,7 +13652,7 @@
rtx prev = PREV_INSN (insn);
while (prev && distance < LEA_SEARCH_THRESHOLD)
{
{
distance++;
for (def_rec = DF_INSN_DEFS (prev); *def_rec; def_rec++)
-@@ -13669,7 +13664,7 @@
+@@ -13669,7 +13692,7 @@
&& prev != insn
&& distance < LEA_SEARCH_THRESHOLD)
{
{
distance++;
for (def_rec = DF_INSN_DEFS (prev); *def_rec; def_rec++)
-@@ -13715,7 +13710,7 @@
+@@ -13715,7 +13738,7 @@
rtx next = NEXT_INSN (insn);
while (next && distance < LEA_SEARCH_THRESHOLD)
{
{
distance++;
-@@ -13764,7 +13759,7 @@
+@@ -13764,7 +13787,7 @@
&& next != insn
&& distance < LEA_SEARCH_THRESHOLD)
{
{
distance++;
-@@ -21374,6 +21369,7 @@
+@@ -21374,6 +21397,7 @@
{
ix86_builtins_isa[(int) code].isa = mask;
if (mask == 0
|| (mask & ix86_isa_flags) != 0
|| (lang_hooks.builtin_function
-@@ -26359,7 +26355,7 @@
+@@ -26359,7 +26383,7 @@
if (TARGET_64BIT)
{
#ifndef NO_PROFILE_COUNTERS
#endif
if (DEFAULT_ABI == SYSV_ABI && flag_pic)
-@@ -26370,16 +26366,16 @@
+@@ -26370,16 +26394,16 @@
else if (flag_pic)
{
#ifndef NO_PROFILE_COUNTERS
#endif
fputs ("\tcall\t" MCOUNT_NAME "\n", file);
}
+Index: gcc/config/darwin-protos.h
+===================================================================
+--- gcc/config/darwin-protos.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/darwin-protos.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -71,6 +71,9 @@
+ extern void darwin_file_start (void);
+ extern void darwin_file_end (void);
+
++extern void darwin_asm_lto_start (void);
++extern void darwin_asm_lto_end (void);
++
+ extern void darwin_mark_decl_preserved (const char *);
+
+ extern tree darwin_handle_kext_attribute (tree *, tree, tree, int, bool *);
Index: gcc/config/sol2.c
===================================================================
---- gcc/config/sol2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/sol2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/sol2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/sol2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -122,8 +122,10 @@
the visibility type VIS, which must not be VISIBILITY_DEFAULT. */
fprintf (asm_out_file, "\n");
Index: gcc/config/sol2.h
===================================================================
---- gcc/config/sol2.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/sol2.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/sol2.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/sol2.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -174,12 +174,16 @@
#define LINK_SPEC \
"%{h*} %{v:-V} \
configuration files for Solaris override this setting.) */
Index: gcc/config/sh/sh.c
===================================================================
---- gcc/config/sh/sh.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/sh/sh.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/sh/sh.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/sh/sh.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4397,6 +4397,7 @@
int hi_limit;
rtx orig = from;
NEXT_INSN at the end of the loop. */
Index: gcc/config/lm32/lm32.h
===================================================================
---- gcc/config/lm32/lm32.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/lm32/lm32.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/lm32/lm32.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/lm32/lm32.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,7 +1,7 @@
/* Definitions of target machine for GNU compiler, Lattice Mico32 architecture.
Contributed by Jon Beniston <jon@beniston.com>
/*-------------------------*/
Index: gcc/config/cris/cris.md
===================================================================
---- gcc/config/cris/cris.md (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/cris/cris.md (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/cris/cris.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/cris/cris.md (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1831,7 +1831,7 @@
add%u2 %2,%0
addo.%Z2 %2,%1,%0"
[(set (match_operand:HI 0 "register_operand" "=r,r, r,r,r,r")
Index: gcc/config/m68k/m68k.c
===================================================================
---- gcc/config/m68k/m68k.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/m68k/m68k.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/m68k/m68k.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/m68k/m68k.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4625,17 +4625,18 @@
and turn them back into a direct symbol reference. */
&& REG_P (XEXP (x, 0))
Index: gcc/config/rs6000/rs6000.c
===================================================================
---- gcc/config/rs6000/rs6000.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/rs6000/rs6000.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/rs6000/rs6000.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/rs6000/rs6000.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -115,14 +115,16 @@
This is added to the cfun structure. */
typedef struct GTY(()) machine_function
sp_offset = 0;
Index: gcc/config/rs6000/rs6000.md
===================================================================
---- gcc/config/rs6000/rs6000.md (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/rs6000/rs6000.md (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/rs6000/rs6000.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/rs6000/rs6000.md (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -218,7 +218,8 @@
(TD "TARGET_DFP")])
(define_expand "epilogue"
[(use (const_int 0))]
"TARGET_SCHED_PROLOG"
+Index: gcc/config/darwin.c
+===================================================================
+--- gcc/config/darwin.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/darwin.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -46,6 +46,8 @@
+ #include "hashtab.h"
+ #include "df.h"
+ #include "debug.h"
++#include "obstack.h"
++#include "lto-streamer.h"
+
+ /* Darwin supports a feature called fix-and-continue, which is used
+ for rapid turn around debugging. When code is compiled with the
+@@ -1391,12 +1393,89 @@
+ return (!strncmp ((const char *)p, "_OBJC_", 6));
+ }
+
++/* LTO support for Mach-O. */
++
++/* Section names for LTO sections. */
++static unsigned int lto_section_names_offset = 0;
++
++/* This is the obstack which we use to allocate the many strings. */
++static struct obstack lto_section_names_obstack;
++
++/* Segment name for LTO sections. */
++#define LTO_SEGMENT_NAME "__GNU_LTO"
++
++/* Section name for LTO section names section. */
++#define LTO_NAMES_SECTION "__section_names"
++
++/* File to temporarily store LTO data. This is appended to asm_out_file
++ in darwin_end_file. */
++static FILE *lto_asm_out_file, *saved_asm_out_file;
++static char *lto_asm_out_name;
++
++/* Prepare asm_out_file for LTO output. For darwin, this means hiding
++ asm_out_file and switching to an alternative output file. */
+ void
++darwin_asm_lto_start (void)
++{
++ gcc_assert (! saved_asm_out_file);
++ saved_asm_out_file = asm_out_file;
++ if (! lto_asm_out_name)
++ lto_asm_out_name = make_temp_file (".lto.s");
++ lto_asm_out_file = fopen (lto_asm_out_name, "a");
++ if (lto_asm_out_file == NULL)
++ fatal_error ("failed to open temporary file %s for LTO output",
++ lto_asm_out_name);
++ asm_out_file = lto_asm_out_file;
++}
++
++/* Restore asm_out_file. */
++void
++darwin_asm_lto_end (void)
++{
++ gcc_assert (saved_asm_out_file);
++ fclose (lto_asm_out_file);
++ asm_out_file = saved_asm_out_file;
++ saved_asm_out_file = NULL;
++}
++
++void
+ darwin_asm_named_section (const char *name,
+- unsigned int flags ATTRIBUTE_UNUSED,
++ unsigned int flags,
+ tree decl ATTRIBUTE_UNUSED)
+ {
+- fprintf (asm_out_file, "\t.section %s\n", name);
++ /* LTO sections go in a special segment __GNU_LTO. We want to replace the
++ section name with something we can use to represent arbitrary-length
++ names (section names in Mach-O are at most 16 characters long). */
++ if (strncmp (name, LTO_SECTION_NAME_PREFIX,
++ strlen (LTO_SECTION_NAME_PREFIX)) == 0)
++ {
++ /* We expect certain flags to be set... */
++ gcc_assert ((flags & (SECTION_DEBUG | SECTION_NAMED))
++ == (SECTION_DEBUG | SECTION_NAMED));
++
++ /* Add the section name to the things to output when we end the
++ current assembler output file.
++ This is all not very efficient, but that doesn't matter -- this
++ shouldn't be a hot path in the compiler... */
++ obstack_1grow (<o_section_names_obstack, '\t');
++ obstack_grow (<o_section_names_obstack, ".ascii ", 7);
++ obstack_1grow (<o_section_names_obstack, '"');
++ obstack_grow (<o_section_names_obstack, name, strlen (name));
++ obstack_grow (<o_section_names_obstack, "\\0\"\n", 4);
++
++ /* Output the dummy section name. */
++ fprintf (asm_out_file, "\t# %s\n", name);
++ fprintf (asm_out_file, "\t.section %s,__%08X,regular,debug\n",
++ LTO_SEGMENT_NAME, lto_section_names_offset);
++
++ /* Update the offset for the next section name. Make sure we stay
++ within reasonable length. */
++ lto_section_names_offset += strlen (name) + 1;
++ gcc_assert (lto_section_names_offset > 0
++ && lto_section_names_offset < ((unsigned) 1 << 31));
++ }
++ else
++ fprintf (asm_out_file, "\t.section %s\n", name);
+ }
+
+ void
+@@ -1589,7 +1668,8 @@
+ fprintf (file, "\n\t%s L$set$%d", directive, darwin_dwarf_label_counter++);
+ }
+
+-/* Output labels for the start of the DWARF sections if necessary. */
++/* Output labels for the start of the DWARF sections if necessary.
++ Initialize the stuff we need for LTO long section names support. */
+ void
+ darwin_file_start (void)
+ {
+@@ -1624,6 +1704,11 @@
+ fprintf (asm_out_file, "Lsection%.*s:\n", namelen, debugnames[i] + 8);
+ }
+ }
++
++ /* We fill this obstack with the complete section text for the lto section
++ names to write in darwin_file_end. */
++ obstack_init (<o_section_names_obstack);
++ lto_section_names_offset = 0;
+ }
+
+ /* Output an offset in a DWARF section on Darwin. On Darwin, DWARF section
+@@ -1650,6 +1735,8 @@
+ void
+ darwin_file_end (void)
+ {
++ const char *lto_section_names;
++
+ machopic_finish (asm_out_file);
+ if (strcmp (lang_hooks.name, "GNU C++") == 0)
+ {
+@@ -1657,6 +1744,52 @@
+ switch_to_section (darwin_sections[destructor_section]);
+ ASM_OUTPUT_ALIGN (asm_out_file, 1);
+ }
++
++ /* If there was LTO assembler output, append it to asm_out_file. */
++ if (lto_asm_out_name)
++ {
++ int n;
++ char *buf, *lto_asm_txt;
++
++ /* Shouldn't be here if we failed to switch back. */
++ gcc_assert (! saved_asm_out_file);
++
++ lto_asm_out_file = fopen (lto_asm_out_name, "r");
++ if (lto_asm_out_file == NULL)
++ fatal_error ("failed to open temporary file %s with LTO output",
++ lto_asm_out_name);
++ fseek (lto_asm_out_file, 0, SEEK_END);
++ n = ftell (lto_asm_out_file);
++ if (n > 0)
++ {
++ fseek (lto_asm_out_file, 0, SEEK_SET);
++ lto_asm_txt = buf = (char *) xmalloc (n + 1);
++ while (fgets (lto_asm_txt, n, lto_asm_out_file))
++ fputs (lto_asm_txt, asm_out_file);
++ }
++
++ /* Remove the temporary file. */
++ fclose (lto_asm_out_file);
++ unlink_if_ordinary (lto_asm_out_name);
++ free (lto_asm_out_name);
++ }
++
++ /* Finish the LTO section names obstack. Don't output anything if
++ there are no recorded section names. */
++ obstack_1grow (<o_section_names_obstack, '\0');
++ lto_section_names = XOBFINISH (<o_section_names_obstack, const char *);
++ if (strlen (lto_section_names) > 0)
++ {
++ fprintf (asm_out_file,
++ "\t.section %s,%s,regular,debug\n",
++ LTO_SEGMENT_NAME, LTO_NAMES_SECTION);
++ fprintf (asm_out_file,
++ "\t# Section names in %s are offsets into this table\n",
++ LTO_SEGMENT_NAME);
++ fprintf (asm_out_file, "%s\n", lto_section_names);
++ }
++ obstack_free (<o_section_names_obstack, NULL);
++
+ fprintf (asm_out_file, "\t.subsections_via_symbols\n");
+ }
+
Index: gcc/config/sol2-gld.h
===================================================================
---- gcc/config/sol2-gld.h (.../tags/gcc_4_5_0_release) (revision 0)
-+++ gcc/config/sol2-gld.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/sol2-gld.h (.../tags/gcc_4_5_0_release) (wersja 0)
++++ gcc/config/sol2-gld.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,31 @@
+/* Definitions of target machine for GCC, for any machine running Solaris 2
+ using the GNU linker.
+/* GNU ld needs --export-dynamic to implement -rdynamic. */
+#undef RDYNAMIC_SPEC
+#define RDYNAMIC_SPEC "--export-dynamic"
+Index: gcc/config/darwin.h
+===================================================================
+--- gcc/config/darwin.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/darwin.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -273,6 +273,7 @@
+ %{o*}%{!o:-o a.out} \
+ %{!A:%{!nostdlib:%{!nostartfiles:%S}}} \
+ %{L*} %(link_libgcc) %o %{fprofile-arcs|fprofile-generate*|coverage:-lgcov} \
++ %{flto} %{fwhopr} \
+ %{fopenmp|ftree-parallelize-loops=*: \
+ %{static|static-libgcc|static-libstdc++|static-libgfortran: libgomp.a%s; : -lgomp } } \
+ %{!nostdlib:%{!nodefaultlibs: %(link_ssp) %G %L }} \
+@@ -581,6 +582,16 @@
+ #undef TARGET_ASM_FILE_END
+ #define TARGET_ASM_FILE_END darwin_file_end
+
++/* Because Mach-O relocations have a counter from 1 to 255 for the
++ section number they apply to, it is necessary to output all
++ normal sections before the LTO sections, to make sure that the
++ sections that may have relocations always have a section number
++ smaller than 255. */
++#undef TARGET_ASM_LTO_START
++#define TARGET_ASM_LTO_START darwin_asm_lto_start
++#undef TARGET_ASM_LTO_END
++#define TARGET_ASM_LTO_END darwin_asm_lto_end
++
+ #define ASM_OUTPUT_SKIP(FILE,SIZE) \
+ fprintf (FILE, "\t.space "HOST_WIDE_INT_PRINT_UNSIGNED"\n", SIZE)
+
+Index: gcc/config/pa/predicates.md
+===================================================================
+--- gcc/config/pa/predicates.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/pa/predicates.md (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -240,64 +240,6 @@
+ return memory_address_p (mode, XEXP (op, 0));
+ })
+
+-;; Accept anything that can be used as the source operand for a
+-;; prefetch instruction with a cache-control completer.
+-
+-(define_predicate "prefetch_cc_operand"
+- (match_code "mem")
+-{
+- if (GET_CODE (op) != MEM)
+- return 0;
+-
+- op = XEXP (op, 0);
+-
+- /* We must reject virtual registers as we don't allow REG+D. */
+- if (op == virtual_incoming_args_rtx
+- || op == virtual_stack_vars_rtx
+- || op == virtual_stack_dynamic_rtx
+- || op == virtual_outgoing_args_rtx
+- || op == virtual_cfa_rtx)
+- return 0;
+-
+- if (!REG_P (op) && !IS_INDEX_ADDR_P (op))
+- return 0;
+-
+- /* Until problems with management of the REG_POINTER flag are resolved,
+- we need to delay creating prefetch insns with unscaled indexed addresses
+- until CSE is not expected. */
+- if (!TARGET_NO_SPACE_REGS
+- && !cse_not_expected
+- && GET_CODE (op) == PLUS
+- && REG_P (XEXP (op, 0)))
+- return 0;
+-
+- return memory_address_p (mode, op);
+-})
+-
+-;; Accept anything that can be used as the source operand for a
+-;; prefetch instruction with no cache-control completer.
+-
+-(define_predicate "prefetch_nocc_operand"
+- (match_code "mem")
+-{
+- if (GET_CODE (op) != MEM)
+- return 0;
+-
+- op = XEXP (op, 0);
+-
+- /* Until problems with management of the REG_POINTER flag are resolved,
+- we need to delay creating prefetch insns with unscaled indexed addresses
+- until CSE is not expected. */
+- if (!TARGET_NO_SPACE_REGS
+- && !cse_not_expected
+- && GET_CODE (op) == PLUS
+- && REG_P (XEXP (op, 0))
+- && REG_P (XEXP (op, 1)))
+- return 0;
+-
+- return memory_address_p (mode, op);
+-})
+-
+ ;; Accept REG and any CONST_INT that can be moved in one instruction
+ ;; into a general register.
+
+Index: gcc/config/pa/pa.md
+===================================================================
+--- gcc/config/pa/pa.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/pa/pa.md (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -5976,27 +5976,41 @@
+ ;; Processors prior to PA 2.0 don't have a fneg instruction. Fast
+ ;; negation can be done by subtracting from plus zero. However, this
+ ;; violates the IEEE standard when negating plus and minus zero.
++;; The slow path toggles the sign bit in the general registers.
+ (define_expand "negdf2"
+- [(parallel [(set (match_operand:DF 0 "register_operand" "")
+- (neg:DF (match_operand:DF 1 "register_operand" "")))
+- (use (match_dup 2))])]
+- "! TARGET_SOFT_FLOAT"
++ [(set (match_operand:DF 0 "register_operand" "")
++ (neg:DF (match_operand:DF 1 "register_operand" "")))]
++ "!TARGET_SOFT_FLOAT"
+ {
+ if (TARGET_PA_20 || flag_unsafe_math_optimizations)
+ emit_insn (gen_negdf2_fast (operands[0], operands[1]));
+ else
+- {
+- operands[2] = force_reg (DFmode,
+- CONST_DOUBLE_FROM_REAL_VALUE (dconstm1, DFmode));
+- emit_insn (gen_muldf3 (operands[0], operands[1], operands[2]));
+- }
++ emit_insn (gen_negdf2_slow (operands[0], operands[1]));
+ DONE;
+ })
+
++(define_insn "negdf2_slow"
++ [(set (match_operand:DF 0 "register_operand" "=r")
++ (neg:DF (match_operand:DF 1 "register_operand" "r")))]
++ "!TARGET_SOFT_FLOAT && !TARGET_PA_20"
++ "*
++{
++ if (rtx_equal_p (operands[0], operands[1]))
++ return \"and,< %1,%1,%0\;depi,tr 1,0,1,%0\;depi 0,0,1,%0\";
++ else
++ return \"and,< %1,%1,%0\;depi,tr 1,0,1,%0\;depi 0,0,1,%0\;copy %R1,%R0\";
++}"
++ [(set_attr "type" "multi")
++ (set (attr "length")
++ (if_then_else (ne (symbol_ref "rtx_equal_p (operands[0], operands[1])")
++ (const_int 0))
++ (const_int 12)
++ (const_int 16)))])
++
+ (define_insn "negdf2_fast"
+ [(set (match_operand:DF 0 "register_operand" "=f")
+ (neg:DF (match_operand:DF 1 "register_operand" "f")))]
+- "! TARGET_SOFT_FLOAT && (TARGET_PA_20 || flag_unsafe_math_optimizations)"
++ "!TARGET_SOFT_FLOAT"
+ "*
+ {
+ if (TARGET_PA_20)
+@@ -6008,26 +6022,29 @@
+ (set_attr "length" "4")])
+
+ (define_expand "negsf2"
+- [(parallel [(set (match_operand:SF 0 "register_operand" "")
+- (neg:SF (match_operand:SF 1 "register_operand" "")))
+- (use (match_dup 2))])]
+- "! TARGET_SOFT_FLOAT"
++ [(set (match_operand:SF 0 "register_operand" "")
++ (neg:SF (match_operand:SF 1 "register_operand" "")))]
++ "!TARGET_SOFT_FLOAT"
+ {
+ if (TARGET_PA_20 || flag_unsafe_math_optimizations)
+ emit_insn (gen_negsf2_fast (operands[0], operands[1]));
+ else
+- {
+- operands[2] = force_reg (SFmode,
+- CONST_DOUBLE_FROM_REAL_VALUE (dconstm1, SFmode));
+- emit_insn (gen_mulsf3 (operands[0], operands[1], operands[2]));
+- }
++ emit_insn (gen_negsf2_slow (operands[0], operands[1]));
+ DONE;
+ })
+
++(define_insn "negsf2_slow"
++ [(set (match_operand:SF 0 "register_operand" "=r")
++ (neg:SF (match_operand:SF 1 "register_operand" "r")))]
++ "!TARGET_SOFT_FLOAT && !TARGET_PA_20"
++ "and,< %1,%1,%0\;depi,tr 1,0,1,%0\;depi 0,0,1,%0"
++ [(set_attr "type" "multi")
++ (set_attr "length" "12")])
++
+ (define_insn "negsf2_fast"
+ [(set (match_operand:SF 0 "register_operand" "=f")
+ (neg:SF (match_operand:SF 1 "register_operand" "f")))]
+- "! TARGET_SOFT_FLOAT && (TARGET_PA_20 || flag_unsafe_math_optimizations)"
++ "!TARGET_SOFT_FLOAT"
+ "*
+ {
+ if (TARGET_PA_20)
+@@ -9530,90 +9547,39 @@
+ (match_operand 2 "const_int_operand" "")]
+ "TARGET_PA_20"
+ {
+- int locality = INTVAL (operands[2]);
+-
+- gcc_assert (locality >= 0 && locality <= 3);
+-
+- /* Change operand[0] to a MEM as we don't have the infrastructure
+- to output all the supported address modes for ldw/ldd when we use
+- the address directly. However, we do have it for MEMs. */
+- operands[0] = gen_rtx_MEM (QImode, operands[0]);
+-
+- /* If the address isn't valid for the prefetch, replace it. */
+- if (locality)
+- {
+- if (!prefetch_nocc_operand (operands[0], QImode))
+- operands[0]
+- = replace_equiv_address (operands[0],
+- copy_to_mode_reg (Pmode,
+- XEXP (operands[0], 0)));
+- emit_insn (gen_prefetch_nocc (operands[0], operands[1], operands[2]));
+- }
+- else
+- {
+- if (!prefetch_cc_operand (operands[0], QImode))
+- operands[0]
+- = replace_equiv_address (operands[0],
+- copy_to_mode_reg (Pmode,
+- XEXP (operands[0], 0)));
+- emit_insn (gen_prefetch_cc (operands[0], operands[1], operands[2]));
+- }
++ operands[0] = copy_addr_to_reg (operands[0]);
++ emit_insn (gen_prefetch_20 (operands[0], operands[1], operands[2]));
+ DONE;
+ })
+
+-(define_insn "prefetch_cc"
+- [(prefetch (match_operand:QI 0 "prefetch_cc_operand" "RW")
++(define_insn "prefetch_20"
++ [(prefetch (match_operand 0 "pmode_register_operand" "r")
+ (match_operand:SI 1 "const_int_operand" "n")
+ (match_operand:SI 2 "const_int_operand" "n"))]
+- "TARGET_PA_20 && operands[2] == const0_rtx"
++ "TARGET_PA_20"
+ {
+- /* The SL cache-control completor indicates good spatial locality but
++ /* The SL cache-control completer indicates good spatial locality but
+ poor temporal locality. The ldw instruction with a target of general
+ register 0 prefetches a cache line for a read. The ldd instruction
+ prefetches a cache line for a write. */
+- static const char * const instr[2] = {
+- "ldw%M0,sl %0,%%r0",
+- "ldd%M0,sl %0,%%r0"
+- };
+- int read_or_write = INTVAL (operands[1]);
+-
+- gcc_assert (read_or_write >= 0 && read_or_write <= 1);
+-
+- return instr [read_or_write];
+-}
+- [(set_attr "type" "load")
+- (set_attr "length" "4")])
+-
+-(define_insn "prefetch_nocc"
+- [(prefetch (match_operand:QI 0 "prefetch_nocc_operand" "A,RQ")
+- (match_operand:SI 1 "const_int_operand" "n,n")
+- (match_operand:SI 2 "const_int_operand" "n,n"))]
+- "TARGET_PA_20 && operands[2] != const0_rtx"
+-{
+- /* The ldw instruction with a target of general register 0 prefetches
+- a cache line for a read. The ldd instruction prefetches a cache line
+- for a write. */
+ static const char * const instr[2][2] = {
+ {
+- "ldw RT'%A0,%%r0",
+- "ldd RT'%A0,%%r0",
++ "ldw,sl 0(%0),%%r0",
++ "ldd,sl 0(%0),%%r0"
+ },
+ {
+- "ldw%M0 %0,%%r0",
+- "ldd%M0 %0,%%r0",
++ "ldw 0(%0),%%r0",
++ "ldd 0(%0),%%r0"
+ }
+ };
+- int read_or_write = INTVAL (operands[1]);
++ int read_or_write = INTVAL (operands[1]) == 0 ? 0 : 1;
++ int locality = INTVAL (operands[2]) == 0 ? 0 : 1;
+
+- gcc_assert (which_alternative == 0 || which_alternative == 1);
+- gcc_assert (read_or_write >= 0 && read_or_write <= 1);
+-
+- return instr [which_alternative][read_or_write];
++ return instr [locality][read_or_write];
+ }
+ [(set_attr "type" "load")
+ (set_attr "length" "4")])
+
+-
+ ;; TLS Support
+ (define_insn "tgd_load"
+ [(set (match_operand:SI 0 "register_operand" "=r")
+Index: gcc/config/pa/pa.c
+===================================================================
+--- gcc/config/pa/pa.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/pa/pa.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -520,6 +520,17 @@
+ if (flag_pic == 1 || TARGET_64BIT)
+ flag_pic = 2;
+
++ /* Disable -freorder-blocks-and-partition as we don't support hot and
++ cold partitioning. */
++ if (flag_reorder_blocks_and_partition)
++ {
++ inform (input_location,
++ "-freorder-blocks-and-partition does not work "
++ "on this architecture");
++ flag_reorder_blocks_and_partition = 0;
++ flag_reorder_blocks = 1;
++ }
++
+ /* We can't guarantee that .dword is available for 32-bit targets. */
+ if (UNITS_PER_WORD == 4)
+ targetm.asm_out.aligned_op.di = NULL;
+@@ -1699,10 +1710,6 @@
+ && !REG_POINTER (operand0)
+ && !HARD_REGISTER_P (operand0))
+ copy_reg_pointer (operand0, operand1);
+- else if (REG_POINTER (operand0)
+- && !REG_POINTER (operand1)
+- && !HARD_REGISTER_P (operand1))
+- copy_reg_pointer (operand1, operand0);
+ }
+
+ /* When MEMs are broken out, the REG_POINTER flag doesn't
+Index: gcc/config/pa/pa.h
+===================================================================
+--- gcc/config/pa/pa.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/pa/pa.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1159,9 +1159,7 @@
+ || ((MODE) != SFmode \
+ && (MODE) != DFmode))) \
+ goto ADDR; \
+- else if (GET_CODE (X) == LABEL_REF \
+- || (GET_CODE (X) == CONST_INT \
+- && INT_5_BITS (X))) \
++ else if (GET_CODE (X) == CONST_INT && INT_5_BITS (X)) \
+ goto ADDR; \
+ /* Needed for -fPIC */ \
+ else if (GET_CODE (X) == LO_SUM \
+Index: gcc/config/darwin9.h
+===================================================================
+--- gcc/config/darwin9.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/darwin9.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -32,6 +32,7 @@
+ %{o*}%{!o:-o a.out} \
+ %{!A:%{!nostdlib:%{!nostartfiles:%S}}} \
+ %{L*} %(link_libgcc) %o %{fprofile-arcs|fprofile-generate*|coverage:-lgcov} \
++ %{flto} %{fwhopr} \
+ %{fopenmp|ftree-parallelize-loops=*: \
+ %{static|static-libgcc|static-libstdc++|static-libgfortran: libgomp.a%s; : -lgomp } } \
+ %{!nostdlib:%{!nodefaultlibs: %(link_ssp) %G %L }} \
Index: gcc/config/mips/dbxmdebug.h
===================================================================
---- gcc/config/mips/dbxmdebug.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/mips/dbxmdebug.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/mips/dbxmdebug.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/mips/dbxmdebug.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +0,0 @@
-/* Definitions of target machine for GNU compiler, for MIPS running IRIX 5
- or IRIX 6 (O32 ABI) using the GNU assembler with stabs-in-mdebug. */
-#define MDEBUG_ASM_SPEC "%{!gdwarf*:-mdebug} %{gdwarf*:-no-mdebug}"
Index: gcc/config/mips/iris.h
===================================================================
---- gcc/config/mips/iris.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/mips/iris.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/mips/iris.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/mips/iris.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -199,7 +199,7 @@
%{call_shared} %{no_archive} %{exact_version} \
%{!shared: \
library search directories. */
Index: gcc/config/mmix/mmix.md
===================================================================
---- gcc/config/mmix/mmix.md (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/config/mmix/mmix.md (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/config/mmix/mmix.md (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/config/mmix/mmix.md (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -333,7 +333,7 @@
;; The %2-is-%1-case is there just to make sure things don't fail. Could
;; presumably happen with optimizations off; no evidence.
(clobber (match_scratch:DI 3 "=1,1"))
Index: gcc/tree-vect-slp.c
===================================================================
---- gcc/tree-vect-slp.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/tree-vect-slp.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/tree-vect-slp.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/tree-vect-slp.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -844,7 +844,11 @@
SET_BIT (load_index, prev);
if (supported && i == group_size * group_size
Index: gcc/cfgrtl.c
===================================================================
---- gcc/cfgrtl.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/cfgrtl.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/cfgrtl.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/cfgrtl.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -994,6 +994,9 @@
&& !find_reg_note (insn, REG_LABEL_TARGET, new_label))
add_reg_note (insn, REG_LABEL_TARGET, new_label);
return bb;
}
+Index: gcc/dce.c
+===================================================================
+--- gcc/dce.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/dce.c (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -93,14 +93,6 @@
+ rtx body, x;
+ int i;
+
+- /* Don't delete jumps, notes and the like. */
+- if (!NONJUMP_INSN_P (insn))
+- return false;
+-
+- /* Don't delete insns that can throw. */
+- if (!insn_nothrow_p (insn))
+- return false;
+-
+ if (CALL_P (insn)
+ /* We cannot delete calls inside of the recursive dce because
+ this may cause basic blocks to be deleted and this messes up
+@@ -115,6 +107,14 @@
+ && !RTL_LOOPING_CONST_OR_PURE_CALL_P (insn)))
+ return find_call_stack_args (insn, false, fast, arg_stores);
+
++ /* Don't delete jumps, notes and the like. */
++ if (!NONJUMP_INSN_P (insn))
++ return false;
++
++ /* Don't delete insns that can throw. */
++ if (!insn_nothrow_p (insn))
++ return false;
++
+ body = PATTERN (insn);
+ switch (GET_CODE (body))
+ {
Index: gcc/collect2.c
===================================================================
---- gcc/collect2.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/collect2.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/collect2.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/collect2.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -35,6 +35,10 @@
# define SIGCHLD SIGCLD
#endif
#ifndef LIBRARY_PATH_ENV
#define LIBRARY_PATH_ENV "LIBRARY_PATH"
#endif
-@@ -2548,19 +2552,21 @@
- be in ELF format. */
+@@ -1798,7 +1802,7 @@
+ if (export_file != 0 && export_file[0])
+ maybe_unlink (export_file);
+ #endif
+- if (lto_mode)
++ if (lto_mode != LTO_MODE_NONE)
+ maybe_run_lto_and_relink (ld1_argv, object_lst, object, false);
+
+ maybe_unlink (c_file);
+@@ -2544,23 +2548,39 @@
+ \f
+ #ifdef OBJECT_FORMAT_NONE
+
+-/* Check to make sure the file is an ELF file. LTO objects must
+- be in ELF format. */
++/* Check to make sure the file is an LTO object file. */
static bool
-is_elf (const char *prog_name)
-+is_elf_or_coff (const char *prog_name)
++maybe_lto_object_file (const char *prog_name)
{
FILE *f;
- char buf[4];
- static char magic[4] = { 0x7f, 'E', 'L', 'F' };
-+ static char coffmag[2] = { 0x4c, 0x01 };
+- char buf[4];
+- static char magic[4] = { 0x7f, 'E', 'L', 'F' };
++ unsigned char buf[4];
++ int i;
- f = fopen (prog_name, "r");
++ static unsigned char elfmagic[4] = { 0x7f, 'E', 'L', 'F' };
++ static unsigned char coffmagic[2] = { 0x4c, 0x01 };
++ static unsigned char machomagic[4][4] = {
++ { 0xcf, 0xfa, 0xed, 0xfe },
++ { 0xce, 0xfa, 0xed, 0xfe },
++ { 0xfe, 0xed, 0xfa, 0xcf },
++ { 0xfe, 0xed, 0xfa, 0xce }
++ };
++
+ f = fopen (prog_name, "rb");
if (f == NULL)
return false;
buf[0] = 0;
fclose (f);
- return memcmp (buf, magic, sizeof (magic)) == 0;
-+ return memcmp (buf, magic, sizeof (magic)) == 0
-+ || memcmp (buf, coffmag, sizeof (coffmag)) == 0;
++
++ if (memcmp (buf, elfmagic, sizeof (elfmagic)) == 0
++ || memcmp (buf, coffmagic, sizeof (coffmagic)) == 0)
++ return true;
++ for (i = 0; i < 4; i++)
++ if (memcmp (buf, machomagic[i], sizeof (machomagic[i])) == 0)
++ return true;
++
++ return false;
}
/* Generic version to scan the name list of the loaded program for
-@@ -2587,10 +2593,10 @@
+@@ -2587,10 +2607,10 @@
if (which_pass == PASS_SECOND)
return;
us from accepting an archive containing LTO objects, which
gcc cannnot currently handle. */
- if (which_pass == PASS_LTOINFO && !is_elf (prog_name))
-+ if (which_pass == PASS_LTOINFO && !is_elf_or_coff (prog_name))
++ if (which_pass == PASS_LTOINFO && !maybe_lto_object_file (prog_name))
return;
/* If we do not have an `nm', complain. */
-@@ -2670,9 +2676,9 @@
+@@ -2670,9 +2690,9 @@
/* Look for the LTO info marker symbol, and add filename to
the LTO objects list if found. */
for (p = buf; (ch = *p) != '\0' && ch != '\n'; p++)
Index: gcc/lto-streamer.c
===================================================================
---- gcc/lto-streamer.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/lto-streamer.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/lto-streamer.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/lto-streamer.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -788,6 +788,31 @@
}
Index: gcc/langhooks-def.h
===================================================================
---- gcc/langhooks-def.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ gcc/langhooks-def.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- gcc/langhooks-def.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ gcc/langhooks-def.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -202,6 +202,7 @@
#define LANG_HOOKS_DECL_OK_FOR_SIBCALL lhd_decl_ok_for_sibcall
#define LANG_HOOKS_OMP_PRIVATIZE_BY_REFERENCE hook_bool_const_tree_false
LANG_HOOKS_OMP_DISREGARD_VALUE_EXPR, \
LANG_HOOKS_OMP_PRIVATE_DEBUG_CLAUSE, \
LANG_HOOKS_OMP_PRIVATE_OUTER_REF, \
+Index: libstdc++-v3/python/libstdcxx/v6/printers.py
+===================================================================
+--- libstdc++-v3/python/libstdcxx/v6/printers.py (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/python/libstdcxx/v6/printers.py (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -77,7 +77,7 @@
+ elif self.typename == "std::__debug::list":
+ nodetype = gdb.lookup_type('std::__norm::_List_node<%s>' % itype).pointer()
+ else:
+- raise "Cannot cast list node for list printer."
++ raise ValueError, "Cannot cast list node for list printer."
+ return self._iterator(nodetype, self.val['_M_impl']['_M_node'])
+
+ def to_string(self):
+@@ -101,7 +101,7 @@
+ elif self.typename == "std::__norm::_List_iterator" or self.typename == "std::__norm::_List_const_iterator":
+ nodetype = gdb.lookup_type('std::__norm::_List_node<%s>' % itype).pointer()
+ else:
+- raise "Cannot cast list node for list iterator printer."
++ raise ValueError, "Cannot cast list node for list iterator printer."
+ return self.val['_M_node'].cast(nodetype).dereference()['_M_data']
+
+ class StdSlistPrinter:
+@@ -208,7 +208,7 @@
+ # tuple.
+ nodes = self.head.type.fields ()
+ if len (nodes) != 1:
+- raise "Top of tuple tree does not consist of a single node."
++ raise ValueError, "Top of tuple tree does not consist of a single node."
+
+ # Set the actual head to the first pair.
+ self.head = self.head.cast (nodes[0].type)
+@@ -224,7 +224,7 @@
+ raise StopIteration
+ # Check that this iteration has an expected structure.
+ if len (nodes) != 2:
+- raise "Cannot parse more than 2 nodes in a tuple tree."
++ raise ValueError, "Cannot parse more than 2 nodes in a tuple tree."
+
+ # - Left node is the next recursion parent.
+ # - Right node is the actual class contained in the tuple.
Index: libstdc++-v3/configure
===================================================================
---- libstdc++-v3/configure (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/configure (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/configure (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/configure (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -25572,7 +25572,7 @@
/* end confdefs.h. */
#include <pthread.h>
if (pthread_join (thread, &thread_retval))
return 0;
return (a_in_other_thread == a_in_main_thread);
+Index: libstdc++-v3/src/compatibility.cc
+===================================================================
+--- libstdc++-v3/src/compatibility.cc (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/src/compatibility.cc (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -410,7 +410,11 @@
+ // gcc-4.1.0
+ // Long double versions of "C" math functions.
+ #if defined (_GLIBCXX_LONG_DOUBLE_COMPAT) \
+- || (defined (__hppa__) && defined (__linux__))
++ || (defined (__arm__) && defined (__linux__) && defined (__ARM_EABI__)) \
++ || (defined (__hppa__) && defined (__linux__)) \
++ || (defined (__m68k__) && defined (__mcoldfire__) && defined (__linux__)) \
++ || (defined (__mips__) && defined (_ABIO32) && defined (__linux__)) \
++ || (defined (__sh__) && defined (__linux__) && __SIZEOF_SIZE_T__ == 4) \
+
+ #define _GLIBCXX_MATHL_WRAPPER(name, argdecl, args, ver) \
+ extern "C" double \
Index: libstdc++-v3/doc/doxygen/user.cfg.in
===================================================================
---- libstdc++-v3/doc/doxygen/user.cfg.in (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/doc/doxygen/user.cfg.in (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/doc/doxygen/user.cfg.in (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/doc/doxygen/user.cfg.in (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -180,7 +180,7 @@
# You can put \n's in the value part of an alias to insert newlines.
# sources only. Doxygen will then generate output that is more tailored for C.
Index: libstdc++-v3/include/debug/vector
===================================================================
---- libstdc++-v3/include/debug/vector (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/include/debug/vector (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/include/debug/vector (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/debug/vector (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -235,6 +235,7 @@
_Base::resize(__sz, __c);
if (__realloc)
#ifdef __GXX_EXPERIMENTAL_CXX0X__
Index: libstdc++-v3/include/std/tuple
===================================================================
---- libstdc++-v3/include/std/tuple (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/include/std/tuple (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/include/std/tuple (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/std/tuple (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -341,7 +341,8 @@
template<typename _U1, typename _U2>
tuple&
operator=(const tuple& __in)
+Index: libstdc++-v3/include/ext/algorithm
+===================================================================
+--- libstdc++-v3/include/ext/algorithm (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/ext/algorithm (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -123,8 +123,8 @@
+ __glibcxx_function_requires(_OutputIteratorConcept<_OutputIterator,
+ typename iterator_traits<_InputIterator>::value_type>)
+
+- return __copy_n(__first, __count, __result,
+- std::__iterator_category(__first));
++ return __gnu_cxx::__copy_n(__first, __count, __result,
++ std::__iterator_category(__first));
+ }
+
+ template<typename _InputIterator1, typename _InputIterator2>
+Index: libstdc++-v3/include/profile/impl/profiler_container_size.h
+===================================================================
+--- libstdc++-v3/include/profile/impl/profiler_container_size.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/profile/impl/profiler_container_size.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,6 +1,6 @@
+ // -*- C++ -*-
+ //
+-// Copyright (C) 2009 Free Software Foundation, Inc.
++// Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+ //
+ // This file is part of the GNU ISO C++ Library. This library is free
+ // software; you can redistribute it and/or modify it under the terms
+@@ -102,14 +102,14 @@
+
+ inline void __container_size_info::__destruct(size_t __num, size_t __inum)
+ {
+- _M_max = __max(_M_max, __num);
+- _M_item_max = __max(_M_item_max, __inum);
++ _M_max = std::max(_M_max, __num);
++ _M_item_max = std::max(_M_item_max, __inum);
+ if (_M_min == 0) {
+ _M_min = __num;
+ _M_item_min = __inum;
+ } else {
+- _M_min = __min(_M_min, __num);
+- _M_item_min = __min(_M_item_min, __inum);
++ _M_min = std::min(_M_min, __num);
++ _M_item_min = std::min(_M_item_min, __inum);
+ }
+ _M_total += __num;
+ _M_item_total += __inum;
+@@ -120,7 +120,7 @@
+ {
+ _M_cost += this->__resize_cost(__from, __to);
+ _M_resize += 1;
+- _M_max = __max(_M_max, __to);
++ _M_max = std::max(_M_max, __to);
+ }
+
+ inline __container_size_info::__container_size_info(__stack_t __stack,
+@@ -138,11 +138,11 @@
+
+ inline void __container_size_info::__merge(const __container_size_info& __o)
+ {
+- _M_init = __max(_M_init, __o._M_init);
+- _M_max = __max(_M_max, __o._M_max);
+- _M_item_max = __max(_M_item_max, __o._M_item_max);
+- _M_min = __min(_M_min, __o._M_min);
+- _M_item_min = __min(_M_item_min, __o._M_item_min);
++ _M_init = std::max(_M_init, __o._M_init);
++ _M_max = std::max(_M_max, __o._M_max);
++ _M_item_max = std::max(_M_item_max, __o._M_item_max);
++ _M_min = std::min(_M_min, __o._M_min);
++ _M_item_min = std::min(_M_item_min, __o._M_item_min);
+ _M_total += __o._M_total;
+ _M_item_total += __o._M_item_total;
+ _M_count += __o._M_count;
+Index: libstdc++-v3/include/profile/impl/profiler_hash_func.h
+===================================================================
+--- libstdc++-v3/include/profile/impl/profiler_hash_func.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/profile/impl/profiler_hash_func.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,6 +1,6 @@
+ // -*- C++ -*-
+ //
+-// Copyright (C) 2009 Free Software Foundation, Inc.
++// Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+ //
+ // This file is part of the GNU ISO C++ Library. This library is free
+ // software; you can redistribute it and/or modify it under the terms
+@@ -87,7 +87,7 @@
+
+ inline void __hashfunc_info::__merge(const __hashfunc_info& __o)
+ {
+- _M_longest_chain = __max(_M_longest_chain, __o._M_longest_chain);
++ _M_longest_chain = std::max(_M_longest_chain, __o._M_longest_chain);
+ _M_accesses += __o._M_accesses;
+ _M_hops += __o._M_hops;
+ }
+@@ -95,7 +95,7 @@
+ inline void __hashfunc_info::__destruct(size_t __chain, size_t __accesses,
+ size_t __hops)
+ {
+- _M_longest_chain = __max(_M_longest_chain, __chain);
++ _M_longest_chain = std::max(_M_longest_chain, __chain);
+ _M_accesses += __accesses;
+ _M_hops += __hops;
+ }
Index: libstdc++-v3/include/profile/impl/profiler_trace.h
===================================================================
---- libstdc++-v3/include/profile/impl/profiler_trace.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/include/profile/impl/profiler_trace.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/include/profile/impl/profiler_trace.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/profile/impl/profiler_trace.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -53,43 +53,30 @@
#define _GLIBCXX_IMPL_UNORDERED_MAP std::tr1::unordered_map
#endif
typedef std::_GLIBCXX_STD_PR::vector<__warning_data> __warning_vector_t;
-@@ -237,14 +215,9 @@
+@@ -147,17 +125,6 @@
+ void __trace_list_to_vector_report(FILE*, __warning_vector_t&);
+ void __trace_map_to_unordered_map_report(FILE*, __warning_vector_t&);
+
+-// Utility functions.
+-inline size_t __max(size_t __a, size_t __b)
+-{
+- return __a >= __b ? __a : __b;
+-}
+-
+-inline size_t __min(size_t __a, size_t __b)
+-{
+- return __a <= __b ? __a : __b;
+-}
+-
+ struct __cost_factor
+ {
+ const char* __env_var;
+@@ -237,14 +204,9 @@
void __write(FILE* f);
void __collect_warnings(__warning_vector_t& __warnings);
typedef _GLIBCXX_IMPL_UNORDERED_MAP<__object_t,
__object_info> __object_table_t;
typedef _GLIBCXX_IMPL_UNORDERED_MAP<__stack_t, __stack_info, __stack_hash,
-@@ -272,30 +245,6 @@
+@@ -272,30 +234,6 @@
}
template <typename __object_info, typename __stack_info>
__trace_base<__object_info, __stack_info>::__trace_base()
{
// Do not pick the initial size too large, as we don't know which diagnostics
-@@ -304,7 +253,6 @@
+@@ -304,7 +242,6 @@
__stack_table.rehash(10000);
__stack_table_byte_size = 0;
__id = NULL;
}
template <typename __object_info, typename __stack_info>
-@@ -313,10 +261,10 @@
+@@ -313,10 +250,10 @@
{
if (__max_mem() == 0
|| __object_table.size() * sizeof(__object_info) <= __max_mem()) {
}
}
-@@ -327,14 +275,14 @@
+@@ -327,14 +264,14 @@
// XXX: Revisit this to see if we can decrease mutex spans.
// Without this mutex, the object table could be rehashed during an
// insertion on another thread, which could result in a segfault.
return &__object_it->second;
}
}
-@@ -343,8 +291,8 @@
+@@ -343,8 +280,8 @@
void __trace_base<__object_info, __stack_info>::__retire_object(
__object_t __object)
{
typename __object_table_t::iterator __object_it =
__object_table.find(__object);
if (__object_it != __object_table.end()){
-@@ -367,8 +315,8 @@
+@@ -367,8 +304,8 @@
}
__object_table.erase(__object);
}
}
template <typename __object_info, typename __stack_info>
-@@ -417,53 +365,36 @@
+@@ -417,53 +354,36 @@
_GLIBCXX_PROFILE_DATA(_S_max_mem));
}
abort();
}
}
-@@ -477,7 +408,7 @@
+@@ -477,7 +397,7 @@
*/
inline void __report(void)
{
__warning_vector_t __warnings;
-@@ -496,15 +427,30 @@
- size_t __cutoff = __min(_GLIBCXX_PROFILE_DATA(_S_max_warn_count),
- __warnings.size());
+@@ -493,18 +413,33 @@
+
+ // Sort data by magnitude.
+ // XXX: instead of sorting, should collect only top N for better performance.
+- size_t __cutoff = __min(_GLIBCXX_PROFILE_DATA(_S_max_warn_count),
+- __warnings.size());
++ size_t __cutoff = std::min(_GLIBCXX_PROFILE_DATA(_S_max_warn_count),
++ __warnings.size());
- std::sort(__warnings.begin(), __warnings.end(),
- std::greater<__warning_vector_t::value_type>());
}
inline void __set_trace_path()
-@@ -537,59 +483,56 @@
+@@ -537,59 +472,56 @@
std::ifstream __conf_file(__conf_file_name.c_str());
inline void __set_cost_factors()
{
_GLIBCXX_PROFILE_DATA(__cost_factors) = new __cost_factor_vector;
-@@ -621,14 +564,27 @@
+@@ -621,14 +553,27 @@
&_GLIBCXX_PROFILE_DATA(__umap_find_cost_factor));
_GLIBCXX_PROFILE_DATA(__cost_factors)->push_back(
&_GLIBCXX_PROFILE_DATA(__umap_iterate_cost_factor));
if (__is_invalid()) {
-@@ -662,7 +618,7 @@
+@@ -662,7 +607,7 @@
}
}
}
/** @brief This function must be called by each instrumentation point.
+Index: libstdc++-v3/include/profile/impl/profiler_list_to_vector.h
+===================================================================
+--- libstdc++-v3/include/profile/impl/profiler_list_to_vector.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/profile/impl/profiler_list_to_vector.h (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,6 +1,6 @@
+ // -*- C++ -*-
+ //
+-// Copyright (C) 2009 Free Software Foundation, Inc.
++// Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+ //
+ // This file is part of the GNU ISO C++ Library. This library is free
+ // software; you can redistribute it and/or modify it under the terms
+@@ -124,13 +124,13 @@
+ _M_list_cost += __o._M_list_cost;
+ _M_valid &= __o._M_valid;
+ _M_resize += __o._M_resize;
+- _M_max_size = __max( _M_max_size, __o._M_max_size);
++ _M_max_size = std::max( _M_max_size, __o._M_max_size);
+ }
+
+ inline void __list2vector_info::__opr_insert(size_t __shift, size_t __size)
+ {
+ _M_shift_count += __shift;
+- _M_max_size = __max(_M_max_size, __size);
++ _M_max_size = std::max(_M_max_size, __size);
+ }
+
+ inline void __list2vector_info::__resize(size_t __from, size_t __to)
Index: libstdc++-v3/include/profile/impl/profiler.h
===================================================================
---- libstdc++-v3/include/profile/impl/profiler.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/include/profile/impl/profiler.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/include/profile/impl/profiler.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/profile/impl/profiler.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -44,6 +44,13 @@
#endif
#define _GLIBCXX_PROFILE_TRACE_PATH_ROOT "libstdcxx-profile"
Index: libstdc++-v3/include/profile/unordered_map
===================================================================
---- libstdc++-v3/include/profile/unordered_map (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/include/profile/unordered_map (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/include/profile/unordered_map (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/profile/unordered_map (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -196,7 +196,7 @@
insert(_InputIter __first, _InputIter __last)
{
Index: libstdc++-v3/include/bits/basic_string.h
===================================================================
---- libstdc++-v3/include/bits/basic_string.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/include/bits/basic_string.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/include/bits/basic_string.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/bits/basic_string.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -48,13 +48,14 @@
* @class basic_string basic_string.h <string>
* @brief Managing sequences of characters and character-like objects.
*
Index: libstdc++-v3/include/bits/stl_pair.h
===================================================================
---- libstdc++-v3/include/bits/stl_pair.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/include/bits/stl_pair.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/include/bits/stl_pair.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/bits/stl_pair.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -107,10 +107,6 @@
pair(_U1&& __x, _U2&& __y)
: first(std::forward<_U1>(__x)),
operator=(pair&& __p)
Index: libstdc++-v3/include/bits/stl_iterator_base_funcs.h
===================================================================
---- libstdc++-v3/include/bits/stl_iterator_base_funcs.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/include/bits/stl_iterator_base_funcs.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/include/bits/stl_iterator_base_funcs.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/bits/stl_iterator_base_funcs.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -61,6 +61,7 @@
#define _STL_ITERATOR_BASE_FUNCS_H 1
#endif /* _STL_ITERATOR_BASE_FUNCS_H */
Index: libstdc++-v3/include/bits/stringfwd.h
===================================================================
---- libstdc++-v3/include/bits/stringfwd.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/include/bits/stringfwd.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/include/bits/stringfwd.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/bits/stringfwd.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
// String support -*- C++ -*-
Index: libstdc++-v3/include/bits/cpp_type_traits.h
===================================================================
---- libstdc++-v3/include/bits/cpp_type_traits.h (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/include/bits/cpp_type_traits.h (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/include/bits/cpp_type_traits.h (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/bits/cpp_type_traits.h (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -414,6 +414,34 @@
};
#endif
#endif //_CPP_TYPE_TRAITS_H
Index: libstdc++-v3/include/c_global/cstdlib
===================================================================
---- libstdc++-v3/include/c_global/cstdlib (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/include/c_global/cstdlib (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/include/c_global/cstdlib (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/include/c_global/cstdlib (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -57,9 +57,9 @@
_GLIBCXX_BEGIN_NAMESPACE(std)
Index: libstdc++-v3/ChangeLog
===================================================================
---- libstdc++-v3/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -1,3 +1,92 @@
+--- libstdc++-v3/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,3 +1,119 @@
++2010-06-29 Paolo Carlini <paolo.carlini@oracle.com>
++
++ PR libstdc++/44708
++ * include/ext/algorithm (copy_n): Qualify __copy_n call with
++ __gnu_cxx::
++ * testsuite/ext/rope/44708.cc: New.
++
++2010-06-22 Matthias Klose <doko@ubuntu.com>
++
++ * python/libstdcxx/v6/printers.py: Don't use string exceptions.
++
++2010-06-22 Paolo Carlini <paolo.carlini@oracle.com>
++
++ PR libstdc++/44630
++ * include/profile/impl/profiler_trace.h (__min, __max): Remove,
++ use std::min, std::max everywhere.
++ * include/profile/impl/profiler_container_size.h: Use std::min and
++ std::max.
++ * include/profile/impl/profiler_hash_func.h: Likewise.
++ * include/profile/impl/profiler_list_to_vector.h: Likewise.
++
++2010-06-16 Matthias Klose <doko@ubuntu.com>
++
++ * src/compatibility.cc: Export long double versions of "C" math
++ library for arm-linux-gnueabi, m68k-linux-gnu (ColdFire),
++ mips*-linux-gnu (o32 ABI), sh*-linux-gnu (32 bit).
++
+2010-06-10 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR libstdc++/44487
* GCC 4.5.0 released.
Index: libstdc++-v3/testsuite/24_iterators/operations/40497.cc
===================================================================
---- libstdc++-v3/testsuite/24_iterators/operations/40497.cc (.../tags/gcc_4_5_0_release) (revision 0)
-+++ libstdc++-v3/testsuite/24_iterators/operations/40497.cc (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/testsuite/24_iterators/operations/40497.cc (.../tags/gcc_4_5_0_release) (wersja 0)
++++ libstdc++-v3/testsuite/24_iterators/operations/40497.cc (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,41 @@
+// { dg-options "-std=gnu++0x" }
+// { dg-do compile }
+ next(c);
+ prev(c);
+}
+Index: libstdc++-v3/testsuite/ext/rope/44708.cc
+===================================================================
+--- libstdc++-v3/testsuite/ext/rope/44708.cc (.../tags/gcc_4_5_0_release) (wersja 0)
++++ libstdc++-v3/testsuite/ext/rope/44708.cc (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -0,0 +1,31 @@
++// { dg-options "-std=gnu++0x" }
++// { dg-do compile }
++
++// Copyright (C) 2010 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library. This library is free
++// software; you can redistribute it and/or modify it under the
++// terms of the GNU General Public License as published by the
++// Free Software Foundation; either version 3, or (at your option)
++// any later version.
++//
++// This library is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details.
++//
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING3. If not see
++// <http://www.gnu.org/licenses/>.
++
++#include <iostream>
++#include <ext/rope>
++
++using namespace std;
++
++// libstdc++/44708
++void test01()
++{
++ __gnu_cxx::crope line("test-test-test");
++ cout << line.c_str() << endl;
++}
Index: libstdc++-v3/testsuite/22_locale/codecvt/unshift/char/1.cc
===================================================================
---- libstdc++-v3/testsuite/22_locale/codecvt/unshift/char/1.cc (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/testsuite/22_locale/codecvt/unshift/char/1.cc (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/testsuite/22_locale/codecvt/unshift/char/1.cc (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/testsuite/22_locale/codecvt/unshift/char/1.cc (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,7 @@
// 2000-08-17 Benjamin Kosnik <bkoz@cygnus.com>
delete [] c_arr;
Index: libstdc++-v3/testsuite/23_containers/vector/bool/modifiers/insert/31370.cc
===================================================================
---- libstdc++-v3/testsuite/23_containers/vector/bool/modifiers/insert/31370.cc (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/testsuite/23_containers/vector/bool/modifiers/insert/31370.cc (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/testsuite/23_containers/vector/bool/modifiers/insert/31370.cc (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/testsuite/23_containers/vector/bool/modifiers/insert/31370.cc (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007, 2009 Free Software Foundation, Inc.
+// Copyright (C) 2007, 2009, 2010 Free Software Foundation, Inc.
inline void
Index: libstdc++-v3/testsuite/23_containers/vector/bool/capacity/29134.cc
===================================================================
---- libstdc++-v3/testsuite/23_containers/vector/bool/capacity/29134.cc (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libstdc++-v3/testsuite/23_containers/vector/bool/capacity/29134.cc (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/testsuite/23_containers/vector/bool/capacity/29134.cc (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libstdc++-v3/testsuite/23_containers/vector/bool/capacity/29134.cc (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,4 @@
-// Copyright (C) 2006, 2007, 2009 Free Software Foundation, Inc.
+// Copyright (C) 2006, 2007, 2009, 2010 Free Software Foundation, Inc.
// Actually, vector<bool> is special, see libstdc++/31370.
Index: libstdc++-v3/testsuite/23_containers/vector/capacity/44190.cc
===================================================================
---- libstdc++-v3/testsuite/23_containers/vector/capacity/44190.cc (.../tags/gcc_4_5_0_release) (revision 0)
-+++ libstdc++-v3/testsuite/23_containers/vector/capacity/44190.cc (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/testsuite/23_containers/vector/capacity/44190.cc (.../tags/gcc_4_5_0_release) (wersja 0)
++++ libstdc++-v3/testsuite/23_containers/vector/capacity/44190.cc (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,38 @@
+// Copyright (C) 2010 Free Software Foundation, Inc.
+//
+}
Index: libstdc++-v3/testsuite/20_util/tuple/cons/44487.cc
===================================================================
---- libstdc++-v3/testsuite/20_util/tuple/cons/44487.cc (.../tags/gcc_4_5_0_release) (revision 0)
-+++ libstdc++-v3/testsuite/20_util/tuple/cons/44487.cc (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/testsuite/20_util/tuple/cons/44487.cc (.../tags/gcc_4_5_0_release) (wersja 0)
++++ libstdc++-v3/testsuite/20_util/tuple/cons/44487.cc (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,51 @@
+// { dg-options "-std=gnu++0x" }
+// { dg-do compile }
+}
Index: libstdc++-v3/testsuite/20_util/pair/44487.cc
===================================================================
---- libstdc++-v3/testsuite/20_util/pair/44487.cc (.../tags/gcc_4_5_0_release) (revision 0)
-+++ libstdc++-v3/testsuite/20_util/pair/44487.cc (.../branches/gcc-4_5-branch) (revision 160798)
+--- libstdc++-v3/testsuite/20_util/pair/44487.cc (.../tags/gcc_4_5_0_release) (wersja 0)
++++ libstdc++-v3/testsuite/20_util/pair/44487.cc (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,51 @@
+// { dg-options "-std=gnu++0x" }
+// { dg-do compile }
+}
Index: configure.ac
===================================================================
---- configure.ac (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ configure.ac (.../branches/gcc-4_5-branch) (revision 160798)
+--- configure.ac (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ configure.ac (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1636,17 +1636,8 @@
enable_lto=$enableval,
enable_lto=yes; default_enable_lto=yes)
# If we couldn't enable LTO and the user forced it, emit an error.
if test x"$enable_lto" = x"no" \
&& test x"$default_enable_lto" != x"yes" ; then
-@@ -1762,7 +1773,24 @@
+@@ -1762,7 +1773,25 @@
# Flags needed for libelf.
AC_SUBST(libelflibs)
AC_SUBST(libelfinc)
+ # -flto it won't be needed until after installation anyway.
+ case $target in
+ *-cygwin*|*-mingw*) ;;
++ x86_64-apple-darwin*) ;;
+ *) if test x"$enable_lto" = x"yes"; then
+ AC_MSG_ERROR([LTO support is not enabled for this target.])
+ fi
# By default, C is the only stage 1 language.
-@@ -2699,7 +2727,7 @@
+@@ -2699,7 +2728,7 @@
mv conftest.o conftest.o.g0 &&
${CC} -c -g conftest.c &&
mv conftest.o conftest.o.g &&
BUILD_CONFIG=
Index: Makefile.def
===================================================================
---- Makefile.def (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ Makefile.def (.../branches/gcc-4_5-branch) (revision 160798)
+--- Makefile.def (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ Makefile.def (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -322,6 +322,7 @@
dependencies = { module=configure-gcc; on=all-gas; };
dependencies = { module=configure-gcc; on=all-ld; };
dependencies = { module=all-gcc; on=all-build-byacc; };
Index: libmudflap/configure
===================================================================
---- libmudflap/configure (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libmudflap/configure (.../branches/gcc-4_5-branch) (revision 160798)
+--- libmudflap/configure (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libmudflap/configure (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -11479,7 +11479,7 @@
/* end confdefs.h. */
#include <pthread.h>
return (a_in_other_thread == a_in_main_thread);
Index: libmudflap/ChangeLog
===================================================================
---- libmudflap/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libmudflap/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- libmudflap/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libmudflap/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,8 @@
+2010-06-10 Iain Sandoe <iains@gcc.gnu.org>
+
* GCC 4.5.0 released.
Index: boehm-gc/configure.ac
===================================================================
---- boehm-gc/configure.ac (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ boehm-gc/configure.ac (.../branches/gcc-4_5-branch) (revision 160798)
+--- boehm-gc/configure.ac (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ boehm-gc/configure.ac (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,4 +1,5 @@
-# Copyright (c) 1999, 2000, 2001, 2002, 2003, 2006 by Red Hat, Inc. All rights reserved.
+# Copyright (c) 1999, 2000, 2001, 2002, 2003, 2006, 2010 by Red Hat, Inc.
;;
Index: boehm-gc/ChangeLog
===================================================================
---- boehm-gc/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ boehm-gc/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- boehm-gc/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ boehm-gc/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,10 @@
+2010-06-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
* GCC 4.5.0 released.
Index: boehm-gc/configure
===================================================================
---- boehm-gc/configure (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ boehm-gc/configure (.../branches/gcc-4_5-branch) (revision 160798)
+--- boehm-gc/configure (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ boehm-gc/configure (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -14893,7 +14893,7 @@
AM_CPPFLAGS="$AM_CPPFLAGS -pthread"
THREADLIBS=-pthread
$as_echo "#define GC_IRIX_THREADS 1" >>confdefs.h
Index: libiberty/ChangeLog
===================================================================
---- libiberty/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libiberty/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- libiberty/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libiberty/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,14 @@
+2010-06-10 Jakub Jelinek <jakub@redhat.com>
+
* GCC 4.5.0 released.
Index: libiberty/testsuite/demangle-expected
===================================================================
---- libiberty/testsuite/demangle-expected (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libiberty/testsuite/demangle-expected (.../branches/gcc-4_5-branch) (revision 160798)
+--- libiberty/testsuite/demangle-expected (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libiberty/testsuite/demangle-expected (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -3938,6 +3938,9 @@
--format=gnu-v3
_Z1hI1AEDTcldtfp_miEET_
#
Index: libiberty/cp-demangle.c
===================================================================
---- libiberty/cp-demangle.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libiberty/cp-demangle.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- libiberty/cp-demangle.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libiberty/cp-demangle.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -302,6 +302,8 @@
/* The current index into any template argument packs we are using
for printing. */
return;
Index: ChangeLog
===================================================================
---- ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -1,3 +1,38 @@
+--- ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,3 +1,47 @@
++2010-06-24 Steven Bosscher <steven@gcc.gnu.org>
++
++ Backport from mainline:
++ 2010-05-18 Steven Bosscher <steven@gcc.gnu.org>
++
++ * configure.ac (--enable-lto): Add x86_64-apple-darwin* as
++ a platform that supports LTO.
++ * configure: Regenerate.
++
+2010-06-14 Dave Korn <dave.korn.cygwin@gmail.com>
+
-+ Backport from mainline:
-+ 2010-04-27 Dave Korn <dave.korn.cygwin@gmail.com>
++ Backport from mainline:
++ 2010-04-27 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ PR lto/42776
+ * configure.ac (--enable-lto): Refactor handling so libelf tests
* GCC 4.5.0 released.
Index: lto-plugin/ChangeLog
===================================================================
---- lto-plugin/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ lto-plugin/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- lto-plugin/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ lto-plugin/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,11 @@
+2010-06-02 Richard Guenther <rguenther@suse.de>
+
* GCC 4.5.0 released.
Index: lto-plugin/lto-plugin.c
===================================================================
---- lto-plugin/lto-plugin.c (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ lto-plugin/lto-plugin.c (.../branches/gcc-4_5-branch) (revision 160798)
+--- lto-plugin/lto-plugin.c (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ lto-plugin/lto-plugin.c (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -322,7 +322,6 @@
struct ld_plugin_symbol *syms = symtab->syms;
unsigned j;
fprintf (f, "%s %d\n", info->name, info->symtab.nsyms);
Index: libffi/configure
===================================================================
---- libffi/configure (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libffi/configure (.../branches/gcc-4_5-branch) (revision 160798)
+--- libffi/configure (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libffi/configure (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -12397,7 +12397,7 @@
libffi_cv_as_x86_pcrel=yes
case "$target" in
*-apple-darwin10* | *-*-freebsd* | *-*-openbsd* | *-pc-solaris*)
+Index: libffi/Makefile.in
+===================================================================
+--- libffi/Makefile.in (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libffi/Makefile.in (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -444,6 +444,7 @@
+ "exec_prefix=$(exec_prefix)" \
+ "infodir=$(infodir)" \
+ "libdir=$(libdir)" \
++ "mandir=$(mandir)" \
+ "prefix=$(prefix)" \
+ "AR=$(AR)" \
+ "AS=$(AS)" \
Index: libffi/fficonfig.h.in
===================================================================
---- libffi/fficonfig.h.in (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libffi/fficonfig.h.in (.../branches/gcc-4_5-branch) (revision 160798)
+--- libffi/fficonfig.h.in (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libffi/fficonfig.h.in (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -33,6 +33,9 @@
*/
#undef HAVE_ALLOCA_H
Index: libffi/src/x86/sysv.S
===================================================================
---- libffi/src/x86/sysv.S (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libffi/src/x86/sysv.S (.../branches/gcc-4_5-branch) (revision 160798)
+--- libffi/src/x86/sysv.S (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libffi/src/x86/sysv.S (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,5 +1,5 @@
/* -----------------------------------------------------------------------
- sysv.S - Copyright (c) 1996, 1998, 2001-2003, 2005, 2008 Red Hat, Inc.
.byte 0x8 /* CIE RA Column */
Index: libffi/ChangeLog
===================================================================
---- libffi/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libffi/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -1,3 +1,13 @@
+--- libffi/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libffi/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,3 +1,18 @@
++2010-07-02 Jakub Jelinek <jakub@redhat.com>
++
++ * Makefile.am (AM_MAKEFLAGS): Pass also mandir to submakes.
++ * Makefile.in: Regenerated.
++
+2010-05-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * configure.ac (libffi_cv_as_x86_pcrel): Check for illegal in as
* GCC 4.5.0 released.
Index: libffi/configure.ac
===================================================================
---- libffi/configure.ac (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libffi/configure.ac (.../branches/gcc-4_5-branch) (revision 160798)
+--- libffi/configure.ac (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libffi/configure.ac (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -266,7 +266,7 @@
libffi_cv_as_x86_pcrel, [
libffi_cv_as_x86_pcrel=yes
fi
case "$target" in
+Index: libffi/Makefile.am
+===================================================================
+--- libffi/Makefile.am (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libffi/Makefile.am (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -65,6 +65,7 @@
+ "exec_prefix=$(exec_prefix)" \
+ "infodir=$(infodir)" \
+ "libdir=$(libdir)" \
++ "mandir=$(mandir)" \
+ "prefix=$(prefix)" \
+ "AR=$(AR)" \
+ "AS=$(AS)" \
+Index: contrib/compare-debug
+===================================================================
+--- contrib/compare-debug (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ contrib/compare-debug (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -59,8 +59,10 @@
+
+ case `uname -s` in
+ Darwin)
+- ld -S -x -r -no_uuid "$1" -o "$1.$suf1"
+- ld -S -x -r -no_uuid "$2" -o "$2.$suf2"
++ # The strip command on darwin does not remove all debug info.
++ # Fortunately, we can use ld to do it instead.
++ ld -S -r -no_uuid "$1" -o "$1.$suf1"
++ ld -S -r -no_uuid "$2" -o "$2.$suf2"
+ ;;
+ *)
+ cp "$1" "$1.$suf1"
Index: contrib/ChangeLog
===================================================================
---- contrib/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ contrib/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
-@@ -1,3 +1,13 @@
+--- contrib/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ contrib/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
+@@ -1,3 +1,18 @@
++2010-07-01 Iain Sandoe <iains@gcc.gnu.org>
++
++ * compare-debug (Darwin): Remove '-x' flag from ld-based object
++ stripping. Add a comment as to why we do it this way.
++
+2010-06-04 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * test_summary: Don't use diff -u.
* GCC 4.5.0 released.
Index: contrib/test_summary
===================================================================
---- contrib/test_summary (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ contrib/test_summary (.../branches/gcc-4_5-branch) (revision 160798)
+--- contrib/test_summary (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ contrib/test_summary (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,6 +1,6 @@
#! /bin/sh
echo false
Index: contrib/dg-extract-results.sh
===================================================================
---- contrib/dg-extract-results.sh (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ contrib/dg-extract-results.sh (.../branches/gcc-4_5-branch) (revision 160798)
+--- contrib/dg-extract-results.sh (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ contrib/dg-extract-results.sh (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -224,7 +224,7 @@
VARIANTS=""
for VAR in $VARS
exit 0
Index: config/ChangeLog
===================================================================
---- config/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ config/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- config/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ config/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,11 @@
+2010-06-10 Iain Sandoe <iains@gcc.gnu.org>
+
* GCC 4.5.0 released.
Index: config/tls.m4
===================================================================
---- config/tls.m4 (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ config/tls.m4 (.../branches/gcc-4_5-branch) (revision 160798)
+--- config/tls.m4 (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ config/tls.m4 (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -38,11 +38,16 @@
CFLAGS="$chktls_save_CFLAGS"
if test "X$thread_CFLAGS" != Xfailed; then
return (a_in_other_thread == a_in_main_thread);])],
Index: libjava/configure.ac
===================================================================
---- libjava/configure.ac (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libjava/configure.ac (.../branches/gcc-4_5-branch) (revision 160798)
+--- libjava/configure.ac (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libjava/configure.ac (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -927,6 +927,29 @@
extra_ldflags_libjava=-liconv
;;
fi
Index: libjava/classpath/scripts/check_jni_methods.sh.in
===================================================================
---- libjava/classpath/scripts/check_jni_methods.sh.in (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libjava/classpath/scripts/check_jni_methods.sh.in (.../branches/gcc-4_5-branch) (revision 160798)
+--- libjava/classpath/scripts/check_jni_methods.sh.in (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libjava/classpath/scripts/check_jni_methods.sh.in (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -36,23 +36,23 @@
# Write temporary ignore file.
# Cleanup.
Index: libjava/classpath/configure.ac
===================================================================
---- libjava/classpath/configure.ac (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libjava/classpath/configure.ac (.../branches/gcc-4_5-branch) (revision 160798)
+--- libjava/classpath/configure.ac (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libjava/classpath/configure.ac (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -273,7 +273,7 @@
AM_CONDITIONAL(CREATE_QT_PEER_LIBRARIES, test "x${COMPILE_QT_PEER}" = xyes)
+fi
Index: libjava/classpath/ChangeLog
===================================================================
---- libjava/classpath/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libjava/classpath/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- libjava/classpath/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libjava/classpath/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,15 @@
+2010-06-04 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
* GCC 4.5.0 released.
Index: libjava/classpath/configure
===================================================================
---- libjava/classpath/configure (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libjava/classpath/configure (.../branches/gcc-4_5-branch) (revision 160798)
+--- libjava/classpath/configure (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libjava/classpath/configure (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -5460,7 +5460,7 @@
*) COMPILE_PLUGIN=yes ;;
esac
+fi
Index: libjava/ChangeLog
===================================================================
---- libjava/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libjava/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- libjava/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libjava/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,30 @@
+2010-06-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
* GCC 4.5.0 released.
Index: libjava/configure
===================================================================
---- libjava/configure (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libjava/configure (.../branches/gcc-4_5-branch) (revision 160798)
+--- libjava/configure (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libjava/configure (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -599,6 +599,7 @@
#endif"
fi
Index: libcpp/po/es.po
===================================================================
---- libcpp/po/es.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/es.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/es.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/es.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,14 +1,14 @@
-# Mensajes en español para cpplib-4.5-b20100204
+# Mensajes en español para cpplib-4.5.0
msgstr "elemento %s impronunciable"
Index: libcpp/po/fr.po
===================================================================
---- libcpp/po/fr.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/fr.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/fr.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/fr.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -119,7 +119,7 @@
msgstr ""
"Project-Id-Version: GNU cpplib 4.3.0\n"
msgstr "l'élément lexical %s ne peut être épelé"
Index: libcpp/po/nl.po
===================================================================
---- libcpp/po/nl.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/nl.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/nl.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/nl.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -7,7 +7,7 @@
msgstr ""
"Project-Id-Version: cpplib 4.5-b20100204\n"
msgstr "kan token %s niet spellen"
Index: libcpp/po/ChangeLog
===================================================================
---- libcpp/po/ChangeLog (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/ChangeLog (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/ChangeLog (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/ChangeLog (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,3 +1,24 @@
+2010-05-15 Joseph Myers <joseph@codesourcery.com>
+
* GCC 4.5.0 released.
Index: libcpp/po/vi.po
===================================================================
---- libcpp/po/vi.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/vi.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/vi.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/vi.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -4,10 +4,10 @@
# Clytie Siddall <clytie@riverland.net.au>, 2005-2010.
msgid ""
msgstr "gặp hiệu bài không thể chính tả %s"
Index: libcpp/po/uk.po
===================================================================
---- libcpp/po/uk.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/uk.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/uk.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/uk.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,7 +6,7 @@
msgstr ""
"Project-Id-Version: cpplib 4.2.1\n"
msgstr "неможливо розібрати лексему %s"
Index: libcpp/po/ca.po
===================================================================
---- libcpp/po/ca.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/ca.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/ca.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/ca.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -11,7 +11,7 @@
msgstr ""
"Project-Id-Version: cpplib-4.0.1\n"
msgstr "Element %s impronunciable"
Index: libcpp/po/da.po
===================================================================
---- libcpp/po/da.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/da.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/da.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/da.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -128,7 +128,7 @@
msgstr ""
"Project-Id-Version: gcc 3.3\n"
msgstr "symbol %s kan ikke staves"
Index: libcpp/po/tr.po
===================================================================
---- libcpp/po/tr.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/tr.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/tr.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/tr.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,7 +6,7 @@
msgstr ""
"Project-Id-Version: cpplib 4.2.0\n"
msgstr "dizgecik %s okunabilir değil"
Index: libcpp/po/be.po
===================================================================
---- libcpp/po/be.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/be.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/be.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/be.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,7 +6,7 @@
msgstr ""
"Project-Id-Version: gcc 3.1\n"
msgstr "немагу адчыніць файл \"%s\""
Index: libcpp/po/de.po
===================================================================
---- libcpp/po/de.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/de.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/de.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/de.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: cpplib 4.3.0\n"
msgstr "nicht buchstabierbares Token %s"
Index: libcpp/po/sv.po
===================================================================
---- libcpp/po/sv.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/sv.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/sv.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/sv.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -8,10 +8,10 @@
#
msgid ""
msgstr "ostavbar symbol %s"
Index: libcpp/po/ja.po
===================================================================
---- libcpp/po/ja.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/ja.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/ja.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/ja.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: gcc 3.0\n"
msgstr "ÄÖ¤ì¤Ê¤¤¥È¡¼¥¯¥ó %s ¤Ç¤¹"
Index: libcpp/po/zh_TW.po
===================================================================
---- libcpp/po/zh_TW.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/zh_TW.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/zh_TW.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/zh_TW.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: cpplib 4.1.0\n"
msgstr "無法拼出的識別字 %s"
Index: libcpp/po/id.po
===================================================================
---- libcpp/po/id.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/id.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/id.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/id.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -7,7 +7,7 @@
msgstr ""
"Project-Id-Version: cpplib 4.5-b20100204\n"
msgstr "tanda %s tidak dapat disebutkan"
Index: libcpp/po/fi.po
===================================================================
---- libcpp/po/fi.po (.../tags/gcc_4_5_0_release) (revision 0)
-+++ libcpp/po/fi.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/fi.po (.../tags/gcc_4_5_0_release) (wersja 0)
++++ libcpp/po/fi.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -0,0 +1,957 @@
+# Finnish messages for cpplib.
+# Copyright © 2010 Free Software Foundation, Inc.
+msgstr "syntaksivirhe makroparameteriluettelossa"
Index: libcpp/po/el.po
===================================================================
---- libcpp/po/el.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/el.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/el.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/el.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -6,7 +6,7 @@
msgstr ""
"Project-Id-Version: gcc 3.2\n"
msgstr "%s: áäýíáôï ôï Üíïéãìá ôïõ %s: %m\n"
Index: libcpp/po/zh_CN.po
===================================================================
---- libcpp/po/zh_CN.po (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ libcpp/po/zh_CN.po (.../branches/gcc-4_5-branch) (revision 160798)
+--- libcpp/po/zh_CN.po (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ libcpp/po/zh_CN.po (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -1,19 +1,21 @@
# Simplified Chinese translation for cpplib.
# Copyright (C) 2005 Free Software Foundation, Inc.
msgstr "无法拼出的标识符 %s"
Index: MAINTAINERS
===================================================================
---- MAINTAINERS (.../tags/gcc_4_5_0_release) (revision 160798)
-+++ MAINTAINERS (.../branches/gcc-4_5-branch) (revision 160798)
+--- MAINTAINERS (.../tags/gcc_4_5_0_release) (wersja 161805)
++++ MAINTAINERS (.../branches/gcc-4_5-branch) (wersja 161805)
@@ -445,6 +445,7 @@
Douglas Rupp rupp@gnat.com
Silvius Rus rus@google.com