packages: gcc/gcc.spec, gcc/gcc-branch.diff - rel 2; branch diff updated
arekm
arekm at pld-linux.org
Sat Jan 8 18:34:41 CET 2011
Author: arekm Date: Sat Jan 8 17:34:41 2011 GMT
Module: packages Tag: HEAD
---- Log message:
- rel 2; branch diff updated
---- Files affected:
packages/gcc:
gcc.spec (1.644 -> 1.645) , gcc-branch.diff (1.40 -> 1.41)
---- Diffs:
================================================================
Index: packages/gcc/gcc.spec
diff -u packages/gcc/gcc.spec:1.644 packages/gcc/gcc.spec:1.645
--- packages/gcc/gcc.spec:1.644 Sat Dec 18 22:01:45 2010
+++ packages/gcc/gcc.spec Sat Jan 8 18:34:35 2011
@@ -73,7 +73,7 @@
Summary(pt_BR.UTF-8): Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
Name: gcc
Version: %{major_ver}.%{minor_ver}
-Release: 1
+Release: 2
Epoch: 6
License: GPL v3+
Group: Development/Languages
@@ -2238,6 +2238,9 @@
All persons listed below can be reached at <cvs_login>@pld-linux.org
$Log$
+Revision 1.645 2011/01/08 17:34:35 arekm
+- rel 2; branch diff updated
+
Revision 1.644 2010/12/18 21:01:45 arekm
- up to 4.5.2
================================================================
Index: packages/gcc/gcc-branch.diff
diff -u packages/gcc/gcc-branch.diff:1.40 packages/gcc/gcc-branch.diff:1.41
--- packages/gcc/gcc-branch.diff:1.40 Sat Dec 18 22:01:45 2010
+++ packages/gcc/gcc-branch.diff Sat Jan 8 18:34:36 2011
@@ -1,7 +1,7 @@
Index: libgomp/configure.tgt
===================================================================
---- libgomp/configure.tgt (.../tags/gcc_4_5_2_release) (wersja 168030)
-+++ libgomp/configure.tgt (.../branches/gcc-4_5-branch) (wersja 168030)
+--- libgomp/configure.tgt (.../tags/gcc_4_5_2_release) (wersja 168599)
++++ libgomp/configure.tgt (.../branches/gcc-4_5-branch) (wersja 168599)
@@ -125,6 +125,10 @@
config_path="bsd posix"
;;
@@ -15,8 +15,8 @@
Index: libgomp/ChangeLog
===================================================================
---- libgomp/ChangeLog (.../tags/gcc_4_5_2_release) (wersja 168030)
-+++ libgomp/ChangeLog (.../branches/gcc-4_5-branch) (wersja 168030)
+--- libgomp/ChangeLog (.../tags/gcc_4_5_2_release) (wersja 168599)
++++ libgomp/ChangeLog (.../branches/gcc-4_5-branch) (wersja 168599)
@@ -1,3 +1,10 @@
+2010-12-17 Rainer Orth <ro at CeBiTec.Uni-Bielefeld.DE>
+
@@ -28,23 +28,355 @@
2010-12-16 Release Manager
* GCC 4.5.2 released.
+Index: gcc/tree-loop-distribution.c
+===================================================================
+--- gcc/tree-loop-distribution.c (.../tags/gcc_4_5_2_release) (wersja 168599)
++++ gcc/tree-loop-distribution.c (.../branches/gcc-4_5-branch) (wersja 168599)
+@@ -251,7 +251,7 @@
+
+ /* Generate a call to memset. Return true when the operation succeeded. */
+
+-static bool
++static void
+ generate_memset_zero (gimple stmt, tree op0, tree nb_iter,
+ gimple_stmt_iterator bsi)
+ {
+@@ -265,45 +265,27 @@
+
+ DR_STMT (dr) = stmt;
+ DR_REF (dr) = op0;
+- if (!dr_analyze_innermost (dr))
+- goto end;
++ res = dr_analyze_innermost (dr);
++ gcc_assert (res && stride_of_unit_type_p (DR_STEP (dr), TREE_TYPE (op0)));
+
+- /* Test for a positive stride, iterating over every element. */
+- if (integer_zerop (size_binop (MINUS_EXPR,
+- fold_convert (sizetype, DR_STEP (dr)),
+- TYPE_SIZE_UNIT (TREE_TYPE (op0)))))
+- {
+- addr_base = fold_convert_loc (loc, sizetype,
+- size_binop_loc (loc, PLUS_EXPR,
+- DR_OFFSET (dr),
+- DR_INIT (dr)));
+- addr_base = fold_build2_loc (loc, POINTER_PLUS_EXPR,
+- TREE_TYPE (DR_BASE_ADDRESS (dr)),
+- DR_BASE_ADDRESS (dr), addr_base);
++ nb_bytes = build_size_arg_loc (loc, nb_iter, op0, &stmt_list);
++ addr_base = size_binop_loc (loc, PLUS_EXPR, DR_OFFSET (dr), DR_INIT (dr));
++ addr_base = fold_convert_loc (loc, sizetype, addr_base);
+
+- nb_bytes = build_size_arg_loc (loc, nb_iter, op0, &stmt_list);
+- }
+-
+ /* Test for a negative stride, iterating over every element. */
+- else if (integer_zerop (size_binop (PLUS_EXPR,
+- TYPE_SIZE_UNIT (TREE_TYPE (op0)),
+- fold_convert (sizetype, DR_STEP (dr)))))
++ if (integer_zerop (size_binop (PLUS_EXPR,
++ TYPE_SIZE_UNIT (TREE_TYPE (op0)),
++ fold_convert (sizetype, DR_STEP (dr)))))
+ {
+- nb_bytes = build_size_arg_loc (loc, nb_iter, op0, &stmt_list);
+-
+- addr_base = size_binop_loc (loc, PLUS_EXPR, DR_OFFSET (dr), DR_INIT (dr));
+- addr_base = fold_convert_loc (loc, sizetype, addr_base);
+ addr_base = size_binop_loc (loc, MINUS_EXPR, addr_base,
+ fold_convert_loc (loc, sizetype, nb_bytes));
+ addr_base = size_binop_loc (loc, PLUS_EXPR, addr_base,
+ TYPE_SIZE_UNIT (TREE_TYPE (op0)));
+- addr_base = fold_build2_loc (loc, POINTER_PLUS_EXPR,
+- TREE_TYPE (DR_BASE_ADDRESS (dr)),
+- DR_BASE_ADDRESS (dr), addr_base);
+ }
+- else
+- goto end;
+
++ addr_base = fold_build2_loc (loc, POINTER_PLUS_EXPR,
++ TREE_TYPE (DR_BASE_ADDRESS (dr)),
++ DR_BASE_ADDRESS (dr), addr_base);
+ mem = force_gimple_operand (addr_base, &stmts, true, NULL);
+ gimple_seq_add_seq (&stmt_list, stmts);
+
+@@ -311,14 +293,11 @@
+ fn_call = gimple_build_call (fn, 3, mem, integer_zero_node, nb_bytes);
+ gimple_seq_add_stmt (&stmt_list, fn_call);
+ gsi_insert_seq_after (&bsi, stmt_list, GSI_CONTINUE_LINKING);
+- res = true;
+
+ if (dump_file && (dump_flags & TDF_DETAILS))
+ fprintf (dump_file, "generated memset zero\n");
+
+- end:
+ free_data_ref (dr);
+- return res;
+ }
+
+ /* Tries to generate a builtin function for the instructions of LOOP
+@@ -332,7 +311,6 @@
+ unsigned i, x = 0;
+ basic_block *bbs;
+ gimple write = NULL;
+- tree op0, op1;
+ gimple_stmt_iterator bsi;
+ tree nb_iter = number_of_exit_cond_executions (loop);
+
+@@ -368,26 +346,17 @@
+ }
+ }
+
+- if (!write)
++ if (!stmt_with_adjacent_zero_store_dr_p (write))
+ goto end;
+
+- op0 = gimple_assign_lhs (write);
+- op1 = gimple_assign_rhs1 (write);
+-
+- if (!(TREE_CODE (op0) == ARRAY_REF
+- || TREE_CODE (op0) == INDIRECT_REF))
+- goto end;
+-
+ /* The new statements will be placed before LOOP. */
+ bsi = gsi_last_bb (loop_preheader_edge (loop)->src);
++ generate_memset_zero (write, gimple_assign_lhs (write), nb_iter, bsi);
++ res = true;
+
+- if (gimple_assign_rhs_code (write) == INTEGER_CST
+- && (integer_zerop (op1) || real_zerop (op1)))
+- res = generate_memset_zero (write, op0, nb_iter, bsi);
+-
+ /* If this is the last partition for which we generate code, we have
+ to destroy the loop. */
+- if (res && !copy_p)
++ if (!copy_p)
+ {
+ unsigned nbbs = loop->num_nodes;
+ edge exit = single_exit (loop);
+@@ -531,24 +500,6 @@
+ static void rdg_flag_vertex_and_dependent (struct graph *, int, bitmap, bitmap,
+ bitmap, bool *);
+
+-/* Flag all the uses of U. */
+-
+-static void
+-rdg_flag_all_uses (struct graph *rdg, int u, bitmap partition, bitmap loops,
+- bitmap processed, bool *part_has_writes)
+-{
+- struct graph_edge *e;
+-
+- for (e = rdg->vertices[u].succ; e; e = e->succ_next)
+- if (!bitmap_bit_p (processed, e->dest))
+- {
+- rdg_flag_vertex_and_dependent (rdg, e->dest, partition, loops,
+- processed, part_has_writes);
+- rdg_flag_all_uses (rdg, e->dest, partition, loops, processed,
+- part_has_writes);
+- }
+-}
+-
+ /* Flag the uses of U stopping following the information from
+ upstream_mem_writes. */
+
+@@ -720,68 +671,13 @@
+ }
+ }
+
+-/* Flag all the nodes of RDG containing memory accesses that could
+- potentially belong to arrays already accessed in the current
+- PARTITION. */
+-
+-static void
+-rdg_flag_similar_memory_accesses (struct graph *rdg, bitmap partition,
+- bitmap loops, bitmap processed,
+- VEC (int, heap) **other_stores)
+-{
+- bool foo;
+- unsigned i, n;
+- int j, k, kk;
+- bitmap_iterator ii;
+- struct graph_edge *e;
+-
+- EXECUTE_IF_SET_IN_BITMAP (partition, 0, i, ii)
+- if (RDG_MEM_WRITE_STMT (rdg, i)
+- || RDG_MEM_READS_STMT (rdg, i))
+- {
+- for (j = 0; j < rdg->n_vertices; j++)
+- if (!bitmap_bit_p (processed, j)
+- && (RDG_MEM_WRITE_STMT (rdg, j)
+- || RDG_MEM_READS_STMT (rdg, j))
+- && rdg_has_similar_memory_accesses (rdg, i, j))
+- {
+- /* Flag first the node J itself, and all the nodes that
+- are needed to compute J. */
+- rdg_flag_vertex_and_dependent (rdg, j, partition, loops,
+- processed, &foo);
+-
+- /* When J is a read, we want to coalesce in the same
+- PARTITION all the nodes that are using J: this is
+- needed for better cache locality. */
+- rdg_flag_all_uses (rdg, j, partition, loops, processed, &foo);
+-
+- /* Remove from OTHER_STORES the vertex that we flagged. */
+- if (RDG_MEM_WRITE_STMT (rdg, j))
+- for (k = 0; VEC_iterate (int, *other_stores, k, kk); k++)
+- if (kk == j)
+- {
+- VEC_unordered_remove (int, *other_stores, k);
+- break;
+- }
+- }
+-
+- /* If the node I has two uses, then keep these together in the
+- same PARTITION. */
+- for (n = 0, e = rdg->vertices[i].succ; e; e = e->succ_next, n++);
+-
+- if (n > 1)
+- rdg_flag_all_uses (rdg, i, partition, loops, processed, &foo);
+- }
+-}
+-
+ /* Returns a bitmap in which all the statements needed for computing
+ the strongly connected component C of the RDG are flagged, also
+ including the loop exit conditions. */
+
+ static bitmap
+ build_rdg_partition_for_component (struct graph *rdg, rdgc c,
+- bool *part_has_writes,
+- VEC (int, heap) **other_stores)
++ bool *part_has_writes)
+ {
+ int i, v;
+ bitmap partition = BITMAP_ALLOC (NULL);
+@@ -793,13 +689,6 @@
+ rdg_flag_vertex_and_dependent (rdg, v, partition, loops, processed,
+ part_has_writes);
+
+- /* Also iterate on the array of stores not in the starting vertices,
+- and determine those vertices that have some memory affinity with
+- the current nodes in the component: these are stores to the same
+- arrays, i.e. we're taking care of cache locality. */
+- rdg_flag_similar_memory_accesses (rdg, partition, loops, processed,
+- other_stores);
+-
+ rdg_flag_loop_exits (rdg, loops, partition, processed, part_has_writes);
+
+ BITMAP_FREE (processed);
+@@ -863,6 +752,79 @@
+ BITMAP_FREE (saved_components);
+ }
+
++/* Returns true when it is possible to generate a builtin pattern for
++ the PARTITION of RDG. For the moment we detect only the memset
++ zero pattern. */
++
++static bool
++can_generate_builtin (struct graph *rdg, bitmap partition)
++{
++ unsigned i;
++ bitmap_iterator bi;
++ int nb_reads = 0;
++ int nb_writes = 0;
++ int stores_zero = 0;
++
++ EXECUTE_IF_SET_IN_BITMAP (partition, 0, i, bi)
++ if (RDG_MEM_READS_STMT (rdg, i))
++ nb_reads++;
++ else if (RDG_MEM_WRITE_STMT (rdg, i))
++ {
++ nb_writes++;
++ if (stmt_with_adjacent_zero_store_dr_p (RDG_STMT (rdg, i)))
++ stores_zero++;
++ }
++
++ return stores_zero == 1 && nb_writes == 1 && nb_reads == 0;
++}
++
++/* Returns true when PARTITION1 and PARTITION2 have similar memory
++ accesses in RDG. */
++
++static bool
++similar_memory_accesses (struct graph *rdg, bitmap partition1,
++ bitmap partition2)
++{
++ unsigned i, j;
++ bitmap_iterator bi, bj;
++
++ EXECUTE_IF_SET_IN_BITMAP (partition1, 0, i, bi)
++ if (RDG_MEM_WRITE_STMT (rdg, i)
++ || RDG_MEM_READS_STMT (rdg, i))
++ EXECUTE_IF_SET_IN_BITMAP (partition2, 0, j, bj)
++ if (RDG_MEM_WRITE_STMT (rdg, j)
++ || RDG_MEM_READS_STMT (rdg, j))
++ if (rdg_has_similar_memory_accesses (rdg, i, j))
++ return true;
++
++ return false;
++}
++
++/* Fuse all the partitions from PARTITIONS that contain similar memory
++ references, i.e., we're taking care of cache locality. This
++ function does not fuse those partitions that contain patterns that
++ can be code generated with builtins. */
++
++static void
++fuse_partitions_with_similar_memory_accesses (struct graph *rdg,
++ VEC (bitmap, heap) **partitions)
++{
++ int p1, p2;
++ bitmap partition1, partition2;
++
++ for (p1 = 0; VEC_iterate (bitmap, *partitions, p1, partition1); p1++)
++ if (!can_generate_builtin (rdg, partition1))
++ for (p2 = 0; VEC_iterate (bitmap, *partitions, p2, partition2); p2++)
++ if (p1 != p2
++ && !can_generate_builtin (rdg, partition2)
++ && similar_memory_accesses (rdg, partition1, partition2))
++ {
++ bitmap_ior_into (partition1, partition2);
++ VEC_ordered_remove (bitmap, *partitions, p2);
++ p2--;
++ }
++}
++
+ /* Aggregate several components into a useful partition that is
+ registered in the PARTITIONS vector. Partitions will be
+ distributed in different loops. */
+@@ -885,8 +847,7 @@
+ if (bitmap_bit_p (processed, v))
+ continue;
+
+- np = build_rdg_partition_for_component (rdg, x, &part_has_writes,
+- other_stores);
++ np = build_rdg_partition_for_component (rdg, x, &part_has_writes);
+ bitmap_ior_into (partition, np);
+ bitmap_ior_into (processed, np);
+ BITMAP_FREE (np);
+@@ -932,6 +893,8 @@
+ VEC_safe_push (bitmap, heap, *partitions, partition);
+ else
+ BITMAP_FREE (partition);
++
++ fuse_partitions_with_similar_memory_accesses (rdg, partitions);
+ }
+
+ /* Dump to FILE the PARTITIONS. */
Index: gcc/DATESTAMP
===================================================================
---- gcc/DATESTAMP (.../tags/gcc_4_5_2_release) (wersja 168030)
-+++ gcc/DATESTAMP (.../branches/gcc-4_5-branch) (wersja 168030)
+--- gcc/DATESTAMP (.../tags/gcc_4_5_2_release) (wersja 168599)
++++ gcc/DATESTAMP (.../branches/gcc-4_5-branch) (wersja 168599)
@@ -1 +1 @@
-20101216
-+20101218
++20110108
Index: gcc/DEV-PHASE
===================================================================
---- gcc/DEV-PHASE (.../tags/gcc_4_5_2_release) (wersja 168030)
-+++ gcc/DEV-PHASE (.../branches/gcc-4_5-branch) (wersja 168030)
+--- gcc/DEV-PHASE (.../tags/gcc_4_5_2_release) (wersja 168599)
++++ gcc/DEV-PHASE (.../branches/gcc-4_5-branch) (wersja 168599)
@@ -0,0 +1 @@
+prerelease
Index: gcc/tree-ssa-sccvn.c
===================================================================
---- gcc/tree-ssa-sccvn.c (.../tags/gcc_4_5_2_release) (wersja 168030)
-+++ gcc/tree-ssa-sccvn.c (.../branches/gcc-4_5-branch) (wersja 168030)
+--- gcc/tree-ssa-sccvn.c (.../tags/gcc_4_5_2_release) (wersja 168599)
++++ gcc/tree-ssa-sccvn.c (.../branches/gcc-4_5-branch) (wersja 168599)
@@ -1063,6 +1063,7 @@
size2 = TREE_INT_CST_LOW (gimple_call_arg (def_stmt, 2)) * 8;
if ((unsigned HOST_WIDE_INT)size2 / 8
@@ -75,9 +407,143 @@
return (void *)-1;
Index: gcc/ChangeLog
===================================================================
---- gcc/ChangeLog (.../tags/gcc_4_5_2_release) (wersja 168030)
-+++ gcc/ChangeLog (.../branches/gcc-4_5-branch) (wersja 168030)
-@@ -1,3 +1,23 @@
+--- gcc/ChangeLog (.../tags/gcc_4_5_2_release) (wersja 168599)
++++ gcc/ChangeLog (.../branches/gcc-4_5-branch) (wersja 168599)
+@@ -1,3 +1,157 @@
++2011-01-07 Rainer Orth <ro at CeBiTec.Uni-Bielefeld.DE>
++
++ Backport from mainline:
++ 2011-01-06 Rainer Orth <ro at CeBiTec.Uni-Bielefeld.DE>
++
++ PR target/43309
++ * config/i386/i386.c (legitimize_tls_address)
++ <TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
++ * config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
++ (tls_initial_exec_64_sun): New pattern.
++
++2011-01-03 Eric Botcazou <ebotcazou at adacore.com>
++
++ Backport from mainline
++ 2010-12-30 Eric Botcazou <ebotcazou at adacore.com>
++
++ PR target/47038
++ * config/sparc/sparc.c (sparc_file_end): Call resolve_unique_section
++ on the GOT helper if USE_HIDDEN_LINKONCE.
++
++ 2010-12-02 Eric Botcazou <ebotcazou at adacore.com>
++
++ PR target/46685
++ * config/sparc/sparc.c (can_use_mov_pic_label_ref): New predicate.
++ (sparc_expand_move): Call it to decide whether to emit the special
++ mov{si,di}_pic_label_ref patterns.
++ (sparc_legitimize_pic_address): Call it to decide whether to emit
++ the regular PIC sequence for labels. Fix long line.
++ (sparc_file_end): Set is_thunk for the PIC helper.
++
++2010-12-30 John David Anglin <dave.anglin at nrc-cnrc.gc.ca>
++
++ * config/pa/pa.md: Add ",*" condition to 64-bit add/subtract boolean
++ patterns.
++
++2010-12-27 Yao Qi <yao at codesourcery.com>
++
++ Backport from mainline:
++ 2010-10-14 Yao Qi <yao at codesourcery.com>
++
++ PR target/45447
++ * config/arm/arm.c (arm_build_builtin_va_list): Assign
++ va_list_name to TYPE_STUB_DECL (va_list_type).
++
++2010-12-23 Sebastian Pop <sebastian.pop at amd.com>
++ Richard Guenther <rguenther at suse.de>
++
++ PR tree-optimization/46758
++ * graphite-sese-to-poly.c (scan_tree_for_params_right_scev): Use
++ tree_int_to_gmp instead of int_cst_value.
++ (scan_tree_for_params_int): Same.
++ (scan_tree_for_params): Same.
++ (pdr_add_data_dimensions): Use ppl_set_inhomogeneous_tree.
++
++2010-12-23 Sebastian Pop <sebastian.pop at amd.com>
++
++ Backport from mainline
++ Fix PR45758: reset scevs before Graphite.
++ 2010-09-24 Sebastian Pop <sebastian.pop at amd.com>
++
++ PR tree-optimization/45552
++ * graphite.c (graphite_initialize): Call scev_reset.
++
++2010-12-23 Sebastian Pop <sebastian.pop at amd.com>
++
++ PR tree-optimization/43023
++ * tree-data-ref.c (mem_write_stride_of_same_size_as_unit_type_p):
++ Removed.
++ (stores_zero_from_loop): Call stmt_stores_zero.
++ (stmt_with_adjacent_zero_store_dr_p): New.
++ * tree-data-ref.h (stmt_with_adjacent_zero_store_dr_p): Declared.
++ (stride_of_unit_type_p): New.
++ * tree-loop-distribution.c (generate_memset_zero): Do not return a
++ boolean. Call gcc_assert on stride_of_unit_type_p.
++ (generate_builtin): Call stmt_stores_zero.
++ (rdg_flag_all_uses): Removed.
++ (rdg_flag_similar_memory_accesses): Removed.
++ (build_rdg_partition_for_component): Removed parameter
++ other_stores. Removed call to rdg_flag_similar_memory_accesses.
++ (can_generate_builtin): New.
++ (similar_memory_accesses): New.
++ (fuse_partitions_with_similar_memory_accesses): New.
++ (rdg_build_partitions): Call
++ fuse_partitions_with_similar_memory_accesses.
++
++2010-12-21 Martin Jambor <mjambor at suse.cz>
++
++ Backport from mainline:
++ 2010-12-09 Martin Jambor <mjambor at suse.cz>
++
++ PR middle-end/46734
++ * tree-sra.c (splice_param_accesses): Check that there are not
++ multiple ADDRESSABLE types.
++
++2010-12-19 John David Anglin <dave.anglin at nrc-cnrc.gc.ca>
++
++ Backport from mainline:
++ 2010-12-18 John David Anglin <dave.anglin at nrc-cnrc.gc.ca>
++
++ PR target/46915
++ * config/pa/pa.c (branch_to_delay_slot_p): Use next_active_insn instead
++ of next_real_insn. Search forward checking for both ASM_INPUT and
++ ASM_OPERANDS asms until exit condition is found.
++ (branch_needs_nop_p): Likewise.
++ (use_skip_p): New function.
++ (output_cbranch): Use use_skip_p.
++ (output_bb, output_bvb): Likewise.
++
++2010-12-19 Eric Botcazou <ebotcazou at adacore.com>
++
++ PR target/46729
++ * config/sparc/sparc.h (GLOBAL_OFFSET_TABLE_REGNUM): New macro.
++ (PIC_OFFSET_TABLE_REGNUM): Rewrite in terms of above macro.
++ * config/sparc/sparc.c (pic_helper_needed): Delete.
++ (global_offset_table): Likewise.
++ (pic_helper_symbol): Rename to...
++ (got_helper_rtx): ...this.
++ (global_offset_table_rtx): New global variable.
++ (sparc_got_symbol): Likewise.
++ (sparc_got): New static function.
++ (check_pic): Use local variable and call sparc_got.
++ (sparc_tls_symbol): Initialize to NULL_RTX.
++ (sparc_tls_got): In non-PIC mode, reload the GOT register for Sun TLS
++ and 32-bit ABI and copy the GOT symbol to a new register otherwise.
++ (get_pc_thunk_name): Rename local variable.
++ (gen_load_pcrel_sym): New wrapper around load_pcrel_sym{si,di}.
++ (load_pic_register): Rename to...
++ (load_got_register): ...this. Adjust and call gen_load_pcrel_sym.
++ (sparc_expand_prologue): Do not test flag_pic.
++ (sparc_output_mi_thunk): Use pic_offset_table_rtx directly.
++ (sparc_file_end): Test got_helper_rtx instead of pic_helper_needed.
++ Rename local variable and do not call get_pc_thunk_name again.
++ * config/sparc/sparc.md (load_pcrel_sym): Add operand #3.
++
+2010-12-18 Alexandre Oliva <aoliva at redhat.com>
+
+ PR debug/46756
@@ -101,10 +567,18 @@
2010-12-16 Release Manager
* GCC 4.5.2 released.
+Index: gcc/testsuite/gcc.target/arm/pr45447.c
+===================================================================
+--- gcc/testsuite/gcc.target/arm/pr45447.c (.../tags/gcc_4_5_2_release) (wersja 0)
++++ gcc/testsuite/gcc.target/arm/pr45447.c (.../branches/gcc-4_5-branch) (wersja 168599)
+@@ -0,0 +1,3 @@
++/* { dg-do compile } */
++/* { dg-options "-g -femit-struct-debug-baseonly" } */
++typedef __builtin_va_list x;
Index: gcc/testsuite/gnat.dg/opt13.adb
===================================================================
--- gcc/testsuite/gnat.dg/opt13.adb (.../tags/gcc_4_5_2_release) (wersja 0)
-+++ gcc/testsuite/gnat.dg/opt13.adb (.../branches/gcc-4_5-branch) (wersja 168030)
++++ gcc/testsuite/gnat.dg/opt13.adb (.../branches/gcc-4_5-branch) (wersja 168599)
@@ -0,0 +1,13 @@
+-- { dg-do run }
+-- { dg-options "-O" }
@@ -122,7 +596,7 @@
Index: gcc/testsuite/gnat.dg/opt13_pkg.adb
===================================================================
--- gcc/testsuite/gnat.dg/opt13_pkg.adb (.../tags/gcc_4_5_2_release) (wersja 0)
-+++ gcc/testsuite/gnat.dg/opt13_pkg.adb (.../branches/gcc-4_5-branch) (wersja 168030)
++++ gcc/testsuite/gnat.dg/opt13_pkg.adb (.../branches/gcc-4_5-branch) (wersja 168599)
@@ -0,0 +1,31 @@
+package body Opt13_Pkg is
+
@@ -158,7 +632,7 @@
Index: gcc/testsuite/gnat.dg/opt13_pkg.ads
===================================================================
--- gcc/testsuite/gnat.dg/opt13_pkg.ads (.../tags/gcc_4_5_2_release) (wersja 0)
-+++ gcc/testsuite/gnat.dg/opt13_pkg.ads (.../branches/gcc-4_5-branch) (wersja 168030)
++++ gcc/testsuite/gnat.dg/opt13_pkg.ads (.../branches/gcc-4_5-branch) (wersja 168599)
@@ -0,0 +1,15 @@
+package Opt13_Pkg is
<<Diff was trimmed, longer than 597 lines>>
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/gcc/gcc.spec?r1=1.644&r2=1.645&f=u
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/gcc/gcc-branch.diff?r1=1.40&r2=1.41&f=u
More information about the pld-cvs-commit
mailing list