The Go language has changed the meaning of
v, ok := -c
Now ok is set to whether the channel is closed, rather than having this
be a nonblocking read in which ok is set to whether the value was
received. Nonblocking reads now require a select statement. This patch
implements this in
Target avr now supports tail calls, so don't xfail on that.
testsuite/
2011-03-24 Georg-Johann Lay a...@gjlay.de
* gcc.dg/sibcall-3.c: Don't xfail on AVR.
* gcc.dg/sibcall-4.c: Don't xfail on AVR.
Index: testsuite/gcc.dg/sibcall-3.c
Hi,
This patch implements TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES for ARM NEON.
Regtested on arm-linux-gnueabi.
OK for trunk?
Thanks,
Ira
ChangeLog:
* config/arm/arm.c (arm_autovectorize_vector_sizes): New
function.
(TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES):
On 03/21/2011 06:36 PM, Kai Tietz wrote:
+ attr = lookup_attribute (IDENTIFIER_POINTER (TREE_PURPOSE (a)),
+ CONST_CAST_TREE (a2));
I might use as-name for the name, and change lookup_attribute to take a
const_tree rather than use CONST_CAST_TREE.
+ if
Anatoly Sokolov ae...@post.ru writes:
This patch casue ICE on H8300 target:
This is due to jump_address_operand checking the wrong mode.
The predicate is:
(define_predicate jump_address_operand
(match_code reg,mem)
{
if (GET_CODE (op) == REG)
return mode == Pmode;
[...]
}
but mode is
On Wed, Mar 23, 2011 at 10:24 PM, Diego Novillo dnovi...@google.com wrote:
This patch has a few cleanups and exports 5 functions from the LTO streamer
that we are using from PPH.
- When calling output_string_with_length, every caller would first
write a 0 to indicate that the string is not
On Wed, Mar 23, 2011 at 11:03 PM, Jonathan Wakely jwakely@gmail.com wrote:
Committed to 4.4 and 4.5 branches as obvious, will apply to 4.6 after
4.6.0 is released. The option's gone on the trunk so not relevant
there.
If you apply anything to 4.6 it should probably simply change
the docs
On 24 March 2011 10:12, Richard Guenther wrote:
On Wed, Mar 23, 2011 at 11:03 PM, Jonathan Wakely jwakely@gmail.com
wrote:
Committed to 4.4 and 4.5 branches as obvious, will apply to 4.6 after
4.6.0 is released. The option's gone on the trunk so not relevant
there.
If you apply
2011/3/24 Jason Merrill ja...@redhat.com:
On 03/21/2011 06:36 PM, Kai Tietz wrote:
+ attr = lookup_attribute (IDENTIFIER_POINTER (TREE_PURPOSE (a)),
+ CONST_CAST_TREE (a2));
I might use as-name for the name, and change lookup_attribute to take a
const_tree
On 03/23/2011 06:27 PM, Richard Henderson wrote:
On 03/23/2011 10:22 AM, Bernd Schmidt wrote:
On 03/23/2011 06:19 PM, Richard Henderson wrote:
body
body
restore r1 XXX
restore r2 XXX
jmp L2 XXX
L1: bodyYYY
bodyYYY
The attached patch updates the blackfin ___divsi3 and ___udivsi3
implementations (and updates ___umodsi3 to match), as well as adding .size
directives to all functions in the file.
2011-03-24 Stuart Henderson stuart.hender...@analog.com
* gcc/config/bfin/lib1funcs.asm (___divsi3): New
Hello,
As noted in the PR audit trail, this is a case when we fail to find a
transformed insn due to incomplete transformation history attached to it.
The earlier fixes of this issue worked only for bookkeeping copies, but now
we need a more general mechanism. Fixed by simply picking up
On Thu, 2011-03-24 at 12:56 +0900, Chung-Lin Tang wrote:
Hi,
PR48250 happens under TARGET_NEON, where DImode is included within the
valid NEON modes. This turns the range of legitimate constant indexes to
step-4 (coproc load/store), thus arm_legitimize_reload_address() when
trying to
Chung-Lin Tang clt...@codesourcery.com writes:
PR48183 is a case where ARM NEON instrinsics, under -O -g, produce debug
insns that tries to expand OImode (32-byte integer) zero constants, much
too large to represent as two HOST_WIDE_INTs; as the internals manual
indicates, such large constants
On 24 March 2011 13:03, Joseph S. Myers jos...@codesourcery.com wrote:
On Thu, 24 Mar 2011, Ira Rosen wrote:
Hi,
This patch implements TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES for ARM
NEON.
Given the multiple vector sizes support, is there a reason not to enable
I've updated config.sub to the latest version from config.git. This will
facilitate further cleanups by ensuring that certain obsolete triplets can
never appear as canonical hosts or targets in gcc or src builds.
Index: ChangeLog
This patch removes various dead cases from the toplevel configure.ac.
Target ep9312-* isn't known to config.sub at all so those cases have
been dead for a long time; likewise parisc*64*-* (those parisc cases
it does know have also been handled by config.sub as aliases for
hppa-* for a long time).
As $SUBJECT suggests. The patch looks much bigger than it actually is
due to re-indentation.
Tested on x86_64-unknown-linux-gnu. OK to commit?
-Nathan
* function.c (instantiate_virtual_regs): Use FOR_EACH_BB and
FOR_BB_INSNS_SAFE to iterate through insns. Re-indent.
*
On 03/24/2011 11:56 AM, Kai Tietz wrote:
+ if (TREE_VALUE (a) != NULL_TREE
+ TREE_CODE (TREE_VALUE (a)) == TREE_LIST
+ TREE_VALUE (attr) != NULL
+ TREE_CODE (TREE_VALUE (attr)) == TREE_LIST)
+ {
+ if (simple_cst_list_equal (TREE_VALUE (a),
+
Andreas Krebbel kreb...@linux.vnet.ibm.com writes:
On 03/22/2011 06:48 PM, Richard Henderson wrote:
Ok. Watch out for other target problems this week.
This unfortunately broke bootstrap on s390.
This is PR 48263. Since it seems to be affecting several targets,
and since my bootstrap seems
On Thu, Mar 24, 2011 at 11:03 AM, H.J. Lu hjl.to...@gmail.com wrote:
On Tue, Mar 22, 2011 at 6:28 AM, Ira Rosen ira.ro...@linaro.org wrote:
On 17 March 2011 16:48, Richard Guenther richard.guent...@gmail.com wrote:
+ then_datarefs = VEC_alloc (data_reference_p, heap, 1);
+ else_datarefs =
On Thu, Mar 24, 2011 at 1:39 PM, Richard Guenther
richard.guent...@gmail.com wrote:
On Thu, Mar 24, 2011 at 11:03 AM, H.J. Lu hjl.to...@gmail.com wrote:
On Tue, Mar 22, 2011 at 6:28 AM, Ira Rosen ira.ro...@linaro.org wrote:
On 17 March 2011 16:48, Richard Guenther richard.guent...@gmail.com
This removes a double-accounting for MEM_REF offsets. The code still
looks somewhat fishy, but at least is consistent in what it does now ;)
Bootstrapped and tested on x86_64-unknonw-linux-gnu, applied to trunk.
Richard.
2011-03-24 Richard Guenther rguent...@suse.de
PR
On Sun, Nov 21, 2010 at 21:52, Nathan Froyd froy...@codesourcery.com wrote:
* system.h (FUNCTION_ARG, FUNCTION_INCOMING_ARG): Poison.
(FUNCTION_ARG_ADVANCE): Likewise.
* tm.texi.in: Change references to them to hook references.
* tm.texi: Regenerate.
*
On Tue, Mar 22, 2011 at 04:59, Richard Guenther rguent...@suse.de wrote:
I simply put it in place as a possibility, I currently don't plan
to implement any GF_KIND_COMPLEX folders (the caller would need to
re-gimplify them which doesn't sound too useful). Maybe I should
simply drop it.
I have a number of patches that will be necessary for a new target. Some
of these can be applied now as cleanups, so I'm submit them now.
This changes the schedule_block main loop not to move instructions while
computing the schedule. Instead, we collect them in a VEC and modify the
RTL
This prints a bit more information in debugging dumps. Bootstrapped and
tested on i686-linux.
Bernd
* haifa-sched.c (queue_insn): New arg REASON. All callers
changed. Print it in debugging output.
Index: gcc/haifa-sched.c
The Fortran-specific bits of these patches:
[PATCH 02/18] enforce TREE_CHAIN and TREE_TYPE accesses
http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00565.html
[PATCH 07/18] generalize build_case_label to the rest of the compiler
http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00557.html
This caches dependency costs. The target adjust_cost macro can be quite
expensive. This may not make much of a difference now, but in the final
backtracking scheduler patches (which I'm omitting for the moment) we
look at these costs a bit more often.
Bernd
gcc/
* sched-int.h
We can currently select an insn to be scheduled, only to find out that
it's not actually valid at the current time, either due to state
conflicts or being an asm with something else already scheduled in the
same cycle. Not only is this pointless, it causes problem with the
sched_reorder logic in
On Tue, 2011-03-22 at 14:08 +, Andrew Stubbs wrote:
And again, with the patch ...
On 22/03/11 14:05, Andrew Stubbs wrote:
On 14/03/11 18:17, Richard Earnshaw wrote:
I think the order should be: not-a8, core-regs, core-regs, only-a8.
Ok, how about this?
I've tested that it
On Tue, 2011-03-22 at 21:00 +0100, Eric Botcazou wrote:
Like in the attached patch.
Sandra expressed an interest for it so I've installed it on the mainline
after
bootstrapping and regtesting on x86_64-suse-linux.
2011-03-22 Eric Botcazou ebotca...@adacore.com
*
On Thu, 24 Mar 2011 10:57:06 +
Richard Sandiford richard.sandif...@linaro.org wrote:
Chung-Lin Tang clt...@codesourcery.com writes:
PR48183 is a case where ARM NEON instrinsics, under -O -g, produce
debug insns that tries to expand OImode (32-byte integer) zero
constants, much too
This patch removes cases for a range of old hosts from the toplevel
configure.ac, as I think those cases are no longer useful. All the
removed code comes from Cygnus configure before the toplevel configure
was converted to be an autoconf-generated script.
In general those hosts, if ever
On 03/24/2011 03:24 PM, Richard Earnshaw wrote:
On Wed, 2011-03-23 at 16:46 +0100, Bernd Schmidt wrote:
I've discovered a problem with -mlong-calls on ARM. The bug was first
reported against a new target, but I'd copied the relevant code from the
ARM backend.
We use
Hi,
when fold_ternary_loc is attempting to make the tree prettier, e.g. by swapping
the arguments of a COND_EXPR, it does:
tem = fold_truth_not_expr (loc, arg0);
Now LOC is the location that will be put on the whole expression and there is
no reason it should override the location of ARG0,
Hi,
this improves the RTL generated for multi-word comparison to avoid generating
useless branches. In do_jump_by_parts_greater_rtx:
1) do not generate the last cond jump,
2) do not generate the uncond branch to the drop-through label, if any,
3) generate only one comparison for the
tree.c can gather optionally statistics--counts and total bytes
allocated--when tree nodes are created. Due to an oversight, however,
this accounting is not performed when nodes are copied. The patch below
corrects this oversight and moves things around so the accounting is
done in (almost) only
On Thu, Mar 24, 2011 at 10:37, Jeff Law l...@redhat.com wrote:
Bootstrapped and regression tested on x86_64-unknown-linux-gnu. OK for
trunk?
OK.
Diego.
On Thu, Mar 24, 2011 at 3:38 PM, Eric Botcazou ebotca...@adacore.com wrote:
Hi,
when fold_ternary_loc is attempting to make the tree prettier, e.g. by
swapping
the arguments of a COND_EXPR, it does:
tem = fold_truth_not_expr (loc, arg0);
Now LOC is the location that will be put on the
Hi,
the problematic line is:
label_name = (*targetm.strip_name_encoding) (ggc_strdup (buf));
On AIX, rs6000_xcoff_strip_name_encoding can return NAME + 1:
static const char *
rs6000_xcoff_strip_name_encoding (const char *name)
{
size_t len;
if (*name == '*')
name++;
len = strlen
Richard Sandiford richard.sandif...@linaro.org writes:
Andreas Krebbel kreb...@linux.vnet.ibm.com writes:
On 03/22/2011 06:48 PM, Richard Henderson wrote:
Ok. Watch out for other target problems this week.
This unfortunately broke bootstrap on s390.
This is PR 48263. Since it seems to be
On Sun, 2011-03-20 at 15:19 +, Ramana Radhakrishnan wrote:
Hi,
This fixes up documentation for the -marm option and changes the
behaviour of mthumb to reject the negative options to bring this to
behave similar to the marm option. The option needs to be documented
since we now
The attached code (derived from ACATS c34006d) raises a bogus Constraint_Error
since at least GCC 3.4:
raised CONSTRAINT_ERROR : p.adb:33 discriminant check failed
This is related to the overloading of function Create.
Tested on i586-suse-linux, applied on the mainline.
2011-03-24 Eric
On 03/24/2011 06:10 AM, Nathan Froyd wrote:
The Fortran-specific bits of these patches:
[PATCH 02/18] enforce TREE_CHAIN and TREE_TYPE accesses
http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00565.html
[PATCH 07/18] generalize build_case_label to the rest of the compiler
Hi,
While reading through the unit type support I noticed some parts were
still using the old DW_FORM_sig8 while others used the actual
DW_FORM_ref_sig8 as used in the dwarf spec. I missed some things in a
first scan because of this, so I thought I just clean it up.
2010-03-24 Mark Wielaard
We currently generate very poor code for tests like:
#include arm_neon.h
void
foo (uint32_t *a, uint32_t *b, uint32_t *c)
{
uint32x4x3_t x, y;
x = vld3q_u32 (a);
y = vld3q_u32 (b);
x.val[0] = vaddq_u32 (x.val[0], y.val[0]);
x.val[1] = vaddq_u32 (x.val[1], y.val[1]);
x.val[2] =
Pointer is promoted to Pmode from ptr_mode.
Indeed. However the problem is the 2 in assign_parm_setup_reg:
/* Store the parm in a pseudoregister during the function, but we may
need to do it in a wider mode. Using 2 here makes the result
consistent with promote_decl_mode and thus
The ARM vld3q and vld4q .md patterns expand into two individual vld3/vld4
instructions. Each instruction loads half of the total elements.
The problem is that this is implemented as:
array = vld3a (array, mem1)
array = vld3b (array, mem2)
with array being an input to the _first_ load as
Hi,
Detected by the elfutils dwarflint tool.
Example:
$ echo empty.c
$ gcc -g -c empty.c
$ readelf -x .debug_abbrev empty.o
Hex dump of section '.debug_abbrev':
0x 00 .
Although harmless it might add up if a project has a lot of objects without any
On Thu, 2011-03-03 at 11:35 +, Yufeng Zhang wrote:
Hi,
Here is a patch that fixes a problem in one g++ test case. A typo (of
using the macro ___ARM_EABI__ rather than __ARM_EABI__) has made the
original test case almost a NOP.
Also with a few other changes that make the test work
In order to improve Go test results on Solaris 2/SPARC, I need the
following patch.
* go-test.exp wasn't updated for the change from sparcv9 to sparc64.
While I still don't agree with the new name, at least the two should
be consistent.
* env.go needs to accept sparc and sparc64.
* Just
On 03/24/2011 03:11 PM, Joseph S. Myers wrote:
Furthermore, the whole idea of the toplevel configure tentative_cc
setting code is dubious since this is an autoconf-generated script and
it's autoconf's job to deal with finding a working compiler, putting
it in ANSI C mode, etc. - so if someone
When I tried to build libgo on Solaris 9/x86 with native tools, I ran
into a couple of issues:
* To correctly build sysinfo.go, one needs a different set of flags to
compile sysinfo.c that conflict with the onces needed on Solaris 10+.
Since there seems to be no easy way to autoconf this
On Thu, 2011-03-24 at 15:40 +, Richard Sandiford wrote:
We currently generate very poor code for tests like:
#include arm_neon.h
void
foo (uint32_t *a, uint32_t *b, uint32_t *c)
{
uint32x4x3_t x, y;
x = vld3q_u32 (a);
y = vld3q_u32 (b);
x.val[0] = vaddq_u32 (x.val[0],
Andreas Krebbel wrote:
2011-03-23 Andreas Krebbel andreas.kreb...@de.ibm.com
* reload.c (find_reloads_subreg_address): Add address_reloaded
parameter and return true there if the full address has been
reloaded.
(find_reloads_toplev): Pass address_reloaded flag.
AR_CFLAGS = cr is already the default.
Committed to gcc and src.
Paolo
2011-03-24 Paolo Bonzini bonz...@gnu.org
* mh-sysv4: Remove AR_CFLAGS.
Index: mh-sysv4
===
--- mh-sysv4(revision 171413)
+++ mh-sysv4
Hi,
this does fix a bad thinko of mine in negative_binomial_distribution
(the fix will certainly go in 4.6.1, unless Jakub wants it now) + I'm
adding basic statistical tests (adapted from GSL) for all the other
discrete distributions.
Thanks,
Paolo.
//
2011-03-24 Paolo Carlini
2011/3/24 Jason Merrill ja...@redhat.com:
How about splitting this out into a separate function that can compare
either list or expression arguments? That would also be useful for
merge_attributes and attribute_list_contained.
Jason
Ok, here is the patch
ChangeLog gcc/
2011-03-11 Kai
Yet another relic of cygnus configure. Eliminate.
Committed to gcc and (shortly) to src.
Paolo
2011-03-24 Paolo Bonzini bonz...@gnu.org
* configure.ac: Remove all mentions of mh-sysv4 and mh-solaris.
* configure: Regenerate.
* Makefile.def: Remove all mentions of
This enables omit-frame-pointer for i386-solaris. I honestly haven't
bootstrapped it, but I don't expect any problems (and if they appear,
it's much better to fix them ;).
Committed to gcc and (shortly) to src.
Paolo
2011-03-24 Paolo Bonzini bonz...@gnu.org
* configure.ac: Remove
On Thu, 24 Mar 2011, Paolo Bonzini wrote:
This enables omit-frame-pointer for i386-solaris. I honestly haven't
bootstrapped it, but I don't expect any problems (and if they appear, it's
much better to fix them ;).
How about killing mh-x86omitfp? The x86 compiler defaults to
Joseph S. Myers jos...@codesourcery.com writes:
On Thu, 24 Mar 2011, Paolo Bonzini wrote:
This enables omit-frame-pointer for i386-solaris. I honestly haven't
bootstrapped it, but I don't expect any problems (and if they appear, it's
much better to fix them ;).
How about killing
Hi Guys,
I am applying the patch below to add alignment control for jumps,
loops and labels to the RX backend.
Tested without regressions on an rx-elf target.
Cheers
Nick
gcc/ChangeLog
2011-03-24 Nick Clifton ni...@redhat.com
* config/rx/rx.h (LABEL_ALIGN_FOR_BARRIER):
On 03/24/2011 06:18 PM, Joseph S. Myers wrote:
On Thu, 24 Mar 2011, Paolo Bonzini wrote:
This enables omit-frame-pointer for i386-solaris. I honestly haven't
bootstrapped it, but I don't expect any problems (and if they appear, it's
much better to fix them;).
How about killing
On 03/23/2011 08:40 PM, H.J. Lu wrote:
Are you suggesting that we should say that SP and BP are 32bits so
that x32 has 16 integer registers, 14 are 64 bites and 2 are 32 bits?
No, merely that push/pop are valid with (reg:SI 7 sp).
r~
Hi,
this patch introduces for windows 32-bit target also the call-abi
specifiers (ms_abi/sys_v) and set its default for this target to
ms_abi. This patch set the default of the
callee_pop_aggregate_return attribute to true for MS_ABI call-abi on
32-bit. Additionally it avoids the check of
There's a top-level utils/ subdir in some trees. Yes, MeP has a tool
there.
Ian Lance Taylor i...@google.com writes:
Just a quick note that I committed patches yesterday which should fix at
least some of those problems. I failed to commit some of the test data
the last time I updated the library.
Fine, I'll give it another try tonight or over the weekend.
On Thu, 24 Mar 2011, Joseph S. Myers wrote:
Furthermore, the whole idea of the toplevel configure tentative_cc
setting code is dubious since this is an autoconf-generated script and
it's autoconf's job to deal with finding a working compiler, putting
it in ANSI C mode, etc. - so if someone
On 03/24/2011 10:33 AM, Aldy Hernandez wrote:
In the example below we usually hoist global into a register or
temporary to avoid reading from it at each step. This would cause a
race if another thread had modified global in between iterations.
for (x=0; x 5; x++)
sum[x] =
Uros Bizjak ubiz...@gmail.com writes:
2011-03-23 Uros Bizjak ubiz...@gmail.com
PR target/48237
* config/i386/i386.md (*movdf_internal_rex64): Do not split
alternatives that can be handled with movq or movabsq insn.
(*movdf_internal): Disable for !TARGET_64BIT.
This toplevel configure patch continues pruning useless or incorrect
code, generally specific to particular hosts or targets.
* There are mentions of target-groff, target-librx and tix, but these
are useless as they are not in Makefile.def, so they can safely be
removed.
* libmudflap is
On 03/24/2011 09:26 AM, Mark Wielaard wrote:
/* Terminate the table. */
- dw2_asm_output_data (1, 0, NULL);
+ if (abbrev_die_table_in_use 1)
+dw2_asm_output_data (1, 0, NULL);
I'd prefer this to be handled by
if (abbrev_die_table_in_use == 0)
return;
at the beginning of
On 03/24/2011 06:50 AM, Andrey Belevantsev wrote:
Hello,
As noted in the PR audit trail, this is a case when we fail to find a
transformed insn due to incomplete transformation history attached to
it. The earlier fixes of this issue worked only for bookkeeping
copies, but now we need a more
On 03/24/2011 07:38 AM, Eric Botcazou wrote:
+ /* Deal with the special case 0 x: only one comparison is necessary and
+ we reverse it to avoid jumping to the drop-through label. */
+ if (op0 == const0_rtx drop_through_if_true !drop_through_if_false)
+{
+ code = LE;
+
On 03/24/2011 04:47 AM, Nathan Froyd wrote:
* function.c (instantiate_virtual_regs): Use FOR_EACH_BB and
FOR_BB_INSNS_SAFE to iterate through insns. Re-indent.
* passes.c (init_optimization_passes): Move
pass_instantiate_virtual_regs after pass_into_cfg_layout_mode.
On Thu, Mar 24, 2011 at 8:59 PM, Rainer Orth
r...@cebitec.uni-bielefeld.de wrote:
Uros Bizjak ubiz...@gmail.com writes:
2011-03-23 Uros Bizjak ubiz...@gmail.com
PR target/48237
* config/i386/i386.md (*movdf_internal_rex64): Do not split
alternatives that can be handled
On 03/24/11 14:58, Richard Henderson wrote:
On 03/24/2011 10:33 AM, Aldy Hernandez wrote:
In the example below we usually hoist global into a register or
temporary to avoid reading from it at each step. This would cause a
race if another thread had modified global in between iterations.
On Thu, Mar 24, 2011 at 15:30, Le-Chun Wu l...@google.com wrote:
2011-03-24 Le-Chun Wu l...@google.com
* Makefile.in: Add new source file and headers in dependencies.
* attribs.c (decl_attributes): Handle lock attributes.
(is_lock_attribute_with_args): New function.
Could you also update http://gcc.gnu.org/wiki/ThreadSafetyAnnotation?
It still points to the old branch and seems to have stale content.
Will do.
Any plans for mainline merge?
I don't actually have a time frame for that, but that is the ultimate
goal.
On 24/03/2011 17:11, Paolo Bonzini wrote:
The cygwin host fragment is using obsolete variables and constructs,
modernize it.
Committed to gcc and (shortly) src.
Thanks, top-level stuff is a bit of a mystery to me :)
cheers,
DaveK
On 03/24/2011 01:54 PM, Mark Wielaard wrote:
+ if (abbrev_die_table_in_use == 1)
+return;
+
for (abbrev_id = 1; abbrev_id abbrev_die_table_in_use; ++abbrev_id)
{
dw_die_ref abbrev = abbrev_die_table[abbrev_id];
Still OK?
Yes.
r~
I've committed a patch to libgo to update to the current version of the
master Go library. The patch is too large to include here, and is in
any case simply a copy of changes available in the master Go library
repository. See SVN or http://codereview.appspot.com/4281068/ for the
changes as
On Thu, 24 Mar 2011, Aldy Hernandez wrote:
This work is independent of the C++ memory model. It is just to prevent the
optimizers from introducing new data races due to code movement. This initial
pass is just to make the optimizations data race safe so that if you have a
program which is
On Thu, 17 Mar 2011, Eric Botcazou wrote:
2011-03-13 Joseph Myers jos...@codesourcery.com
* config/sparc/sparc-opts.h: New.
Do you really need all the dates in there?
They were the dates on sparc.h from which this file was split out. This
version uses only the dates of the
While purging Windows code, I failed to remember that VMS has a 32-bit
mode as well, and thus this line still matters.
r~
diff --git a/gcc/config/alpha/alpha.md b/gcc/config/alpha/alpha.md
index 38d40b5..abd96c7 100644
--- a/gcc/config/alpha/alpha.md
+++ b/gcc/config/alpha/alpha.md
@@ -177,6
The attribute enabled feature can help avoid quite a lot of
duplication in the alpha backend. This begins the process
by tackling the easiest -- zero_extension, conditionalized
on the existance of the BWX instruction set extension.
Tested on alpha{,ev5,ev56,ev67}-linux.
r~
+ *
We don't get a chance to use attribute enabled here, but we can
eliminate some unnecessary expanders.
The non-BWX expansion paths wound up subregging the input to
DImode to perform the operation and subregging it back. Exactly
as the generic code paths would do.
I didn't investigate what
This handles everything except movdi, which is more complex.
One perhaps non-obvious thing is the use of the ABI as an isa
entry with respect to the loading of an address constant. This
appears in movsi for VMS. This turns out to be significantly
easier than using two different attributes to
This handles the movdi pattern, of which there were four copies...
r~
+ * config/alpha/alpha.md (attribute isa): Add er, ner.
+ (attribute enabled): Handle them.
+ (*movdi): Merge *movdi_{er_nofix,nofix,er_fix,fix}.
diff --git a/gcc/config/alpha/alpha.md
We have helper expanders -- originally for the builtins -- so that we can
write mskwh instead of mskxh-plus-magic-argument. Use them more often.
r~
+ * config/alpha/alpha.c (alpha_expand_unaligned_load): Use extql.
+ (alpha_expand_unaligned_store): Use mskwl, mskll, mskql.
+
On Thu, Mar 24, 2011 at 4:47 AM, Nathan Froyd froy...@codesourcery.com wrote:
As $SUBJECT suggests. The patch looks much bigger than it actually is
due to re-indentation.
Tested on x86_64-unknown-linux-gnu. OK to commit?
-Nathan
* function.c (instantiate_virtual_regs): Use
The predeclared function closed has been removed from the Go language,
as it is no longer necessary now that v, ok = -c returns whether the
channel is closed. This patch implements that in gccgo. This patch
also fixes the handling of case v, ok := -c in a select statement.
Bootstrapped and ran
On Thu, Mar 24, 2011 at 9:11 PM, H.J. Lu hjl.to...@gmail.com wrote:
On Thu, Mar 24, 2011 at 4:47 AM, Nathan Froyd froy...@codesourcery.com
wrote:
As $SUBJECT suggests. The patch looks much bigger than it actually is
due to re-indentation.
Tested on x86_64-unknown-linux-gnu. OK to commit?
95 matches
Mail list logo