Hello.
This patch removes obsolete GO_IF_MODE_DEPENDENT_ADDRESS macros from H8300
back end in the GCC and introduces equivalent TARGET_MODE_DEPENDENT_ADDRESS_P
target hook.
Regression tested on h8300-unknown-elf with no new failure.
OK to install?
* config/h8300/h8300.h
Hello,
Is this ok to apply?
2011-03-31 Andreas Tobler andre...@fgznet.ch
* config/rs6000/rs6000.c (rs6000_handle_option): Remove unused isel
var.
Index: config/rs6000/rs6000.c
===
--- config/rs6000/rs6000.c
On Thu, Mar 31, 2011 at 08:30:42AM +0200, Andreas Tobler wrote:
Hello,
Is this ok to apply?
That patch is obvious, just commit it.
2011-03-31 Andreas Tobler andre...@fgznet.ch
* config/rs6000/rs6000.c (rs6000_handle_option): Remove unused isel
var.
---
Uros Bizjak ubiz...@gmail.com writes:
d) The definition of type Stat_t struct also includes additional
struct and this confuses compilation.
I've got a similar issue on IRIX 6.5: sys/time.h has
struct timeval {
#if _MIPS_SZLONG == 64
__int32_t :32;
#endif
time_t tv_sec;
On Wed, Mar 30, 2011 at 6:05 PM, Jakub Jelinek ja...@redhat.com wrote:
Hi!
MEM_REFs which can represent type punning on lhs don't force
non-gimple types to be addressable. This causes various problems
in the expander, which wasn't prepared to handle that.
This patch tries to fix what I've
On Wed, Mar 30, 2011 at 8:09 PM, H.J. Lu hongjiu...@intel.com wrote:
On Wed, Mar 30, 2011 at 08:02:38AM -0700, H.J. Lu wrote:
Hi,
Currently, we limit XVECEXP to 26 elements in machine description
since we use letters 'a' to 'z' to encode them. I don't see any
reason why we can't go beyond
On Wed, Mar 30, 2011 at 11:17 PM, Michael Matz m...@suse.de wrote:
Hi,
for some reasons the FAIL of pass49-frag now annoyed me enough to look
into it, where it didn't do so for the last 50 years it's failing (give or
take a few). mudflap has a mean to mark some expressions as not
On Thu, Mar 31, 2011 at 12:39 AM, Steven Bosscher stevenb@gmail.com wrote:
Hi,
This is the first cleanup for cprop.c. These cleanups are only
possible now, thanks to splitting the CPROP code out from gcse.c
The first change is to not treat unfolded conditions as constant in
On Tue, Mar 29, 2011 at 12:20:32PM +0200, Mark Wielaard wrote:
Some dwarf consumers (dwarves, systemtap and dwarflint) grok Dwarf V4,
but not yet the new .debug_types section. To make it easier to use these
tools with -gdwarf-4 this patch introduces a new
-fno-debug-types-section flag and
On Thu, Mar 31, 2011 at 4:07 AM, Michael Matz m...@suse.de wrote:
Hi,
I fear I wasn't as thorough in also splitting this one into several
patches, but the different cleanups are at least mostly in different
files. They are:
* lto-lang remembers all builtin decls in a local list, to be
On Thu, 31 Mar 2011 04:59:18 +0200, Richard Henderson wrote:
On 03/30/2011 11:19 AM, Dodji Seketeli wrote:
First, it avoids emitting two consecutive .loc that are identical.
Strictly speaking that should fix this issue in this particular case.
What's the compatibility strategy? I.e. how
On Thu, Mar 31, 2011 at 9:14 AM, Paolo Bonzini bonz...@gnu.org wrote:
On 03/31/2011 03:22 AM, Michael Matz wrote:
this came up when looking into why the static ctors contain useless trees
(like casts). We can simply canonicalize them while varpool analyzes
pending decls. It'll look at
Seems reasonable to me, thanks! Patch updated.
Stu
2011-03-29 Stuart Henderson stuart.hender...@analog.com
From Bernd Schmidt
* config/bfin/bfin.md (rotrsi, rotlsi): Don't take INTVAL of anything
that's not CONST_INT.
-Original Message-
From: Richard Henderson
Ping^2
2011/1/26 Robert Millan r...@gnu.org:
Ping!
2011/1/18 Robert Millan r...@gnu.org:
2011/1/14 Robert Millan r...@gnu.org:
2011/1/12 Robert Millan r...@gnu.org:
* The headers config/kfreebsd-gnu.h etc. override
GLIBC_DYNAMIC_LINKER. But the 64-bit configurations
Richard Guenther richard.guent...@gmail.com writes:
On Wed, Mar 30, 2011 at 8:09 PM, H.J. Lu hongjiu...@intel.com wrote:
On Wed, Mar 30, 2011 at 08:02:38AM -0700, H.J. Lu wrote:
Hi,
Currently, we limit XVECEXP to 26 elements in machine description
since we use letters 'a' to 'z' to encode
The LTO partitioning code asserts that at most the first partition
is empty (which should probably be also the last one). It works
fine when other partitions are empty so there is no reason to barf
on users when they run into such partitioning cases.
Thus, committed as obvious.
Richard.
On Thu, Mar 31, 2011 at 11:58:29AM +0200, Uros Bizjak wrote:
+ /* Even if the stack pointer isn't the CFA register, we need to correctly
+ describe the adjustments made to it, in particular differentiate the
+ frame-related ones from the frame-unrelated ones. */
+ if (size 0)
+
On Thu, 2011-03-31 at 11:33 +0800, Chung-Lin Tang wrote:
On 2011/3/30 05:28 PM, Richard Earnshaw wrote:
On Wed, 2011-03-30 at 15:35 +0800, Chung-Lin Tang wrote:
On 2011/3/30 上午 12:23, Richard Earnshaw wrote:
On Tue, 2011-03-29 at 22:53 +0800, Chung-Lin Tang wrote:
On 2011/3/29 下午
e.g.
- operands[1] = bfin_gen_compare (operands[1], SImode);
+ operands[1] = bfin_gen_compare (operands[1], MODEmode);
?
Updated patch attached.
Thanks,
Stu
2011-03-29 Stuart Henderson stuart.hender...@analog.com
From Bernd Schmidt:
* config/bfin/bfin.md (MOVCC): New mode_macro.
This is the main change that motivated the less-than-successful
optabs interface cleanup. Tree expansion yields MEMs that are
legitimiate memory_operands, but it's not uncommon for some optabs
to need a more restricted type of address. This patch records
whether operands can be memories, and
On Thu, Mar 31, 2011 at 12:09 PM, Jakub Jelinek ja...@redhat.com wrote:
On Thu, Mar 31, 2011 at 11:58:29AM +0200, Uros Bizjak wrote:
+ /* Even if the stack pointer isn't the CFA register, we need to correctly
+ describe the adjustments made to it, in particular differentiate the
+
* Kai Tietz wrote on Thu, Mar 31, 2011 at 12:19:51PM CEST:
--- gcc.orig/gcc/config.gcc 2011-03-23 21:15:32.0 +0100
+++ gcc/gcc/config.gcc2011-03-31 10:50:05.559129000 +0200
@@ -1420,6 +1420,10 @@ i[34567]86-*-mingw* | x86_64-*-mingw*)
*)
Hi,
This patch changes NEON's default vector size from 64 to 128 bits.
The patch doesn't touch mvectorize-with-neon-quad, but removes the
uses of TARGET_NEON_VECTORIZE_QUAD.
Following Julian's suggestion I added a param preferred-vector-size
for testing and debugging purposes.
I tested a
we hit this limit trying to write the explicit semantics for a
vec_interleave_evenv32qi.
;;(define_insn vec_interleave_evenv32qi
;; [(set (match_operand:V32QI 0 register_operand =r)
;;(vec_select:V32QI
;; (vec_concat:V64QI
;;(match_operand:V32QI 1 register_operand 0)
;;
Joseph S. Myers jos...@codesourcery.com writes:
Bootstrapped with no regressions on x86_64-unknown-linux-gnu. OK to
commit?
Ok for mips-tdump.c, mips-tfile.c and config/mips/iris6.h.
I had asked about this last year and had it on my agenda since the
information included, even if visible to
On Thu, 31 Mar 2011, Ira Rosen wrote:
+Illegal values are ignored. The default is 128.
See the GNU Coding Standards
http://www.gnu.org/prep/standards/html_node/GNU-Manuals.html:
Please do not use the term illegal to refer to erroneous input to a
computer program. Please use invalid for
Georg-Johann Lay a...@gjlay.de writes:
Richard Henderson schrieb:
On 03/25/2011 05:41 AM, Georg-Johann Lay wrote:
On 03/22/2011 06:48 PM, Richard Henderson wrote:
Ok. Watch out for other target problems this week.
libgcc fails to build for avr (SVN 171446)
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
Whee. The static checkers found another real bug. The
tree-ssa-forwprop.c fix eliminates a potential NULL pointer dereference
due to a typo in a condition. Basically if DEF_STMT is null, it would
be passed to can_propagate_from which would then
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/31/11 00:22, Anatoly Sokolov wrote:
Hello.
This patch removes obsolete GO_IF_MODE_DEPENDENT_ADDRESS macros from H8300
back end in the GCC and introduces equivalent TARGET_MODE_DEPENDENT_ADDRESS_P
target hook.
Regression tested
On 31 March 2011 14:28, Joseph S. Myers jos...@codesourcery.com wrote:
On Thu, 31 Mar 2011, Ira Rosen wrote:
+Illegal values are ignored. The default is 128.
See the GNU Coding Standards
http://www.gnu.org/prep/standards/html_node/GNU-Manuals.html:
Please do not use the term illegal to
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/24/11 17:57, Andrew MacLeod wrote:
My fault for not being specific about it... I tend to just use data race
as a catch all for all these types of things when talking about them
with Aldy.
the testcase should have for (x=0; x limit;
On Thu, Mar 31, 2011 at 01:39:05PM +0200, Ira Rosen wrote:
This patch changes NEON's default vector size from 64 to 128 bits.
No comments about the patch itself, but this change should be noted in
changes.html.
-Nathan
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/23/11 08:45, Bernd Schmidt wrote:
With prologues appearing in blocks other than the entry block, ifcvt can
decide to predicate them. This is not a good idea, as dwarf2out will
blow up trying to handle predicated frame-related things.
OK.
jeff
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/23/11 08:47, Bernd Schmidt wrote:
We'll start putting return into JUMP_LABELS in a subsequent patch, so
I've decided to make it unique as a small cleanup.
There's already another macro called return_rtx, so the new one goes
by the name of
On 31 March 2011 15:11, Nathan Froyd froy...@codesourcery.com wrote:
On Thu, Mar 31, 2011 at 01:39:05PM +0200, Ira Rosen wrote:
This patch changes NEON's default vector size from 64 to 128 bits.
No comments about the patch itself, but this change should be noted in
changes.html.
I'll do
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/23/11 08:55, Bernd Schmidt wrote:
The first basic block contains insns to move incoming argument registers
to pseudos. When these pseudos live across calls, they get allocated to
call-saved registers. This in turns disables shrink-wrapping,
On Thu, Mar 31, 2011 at 2:55 PM, Jeff Law l...@redhat.com wrote:
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
Whee. The static checkers found another real bug. The
tree-ssa-forwprop.c fix eliminates a potential NULL pointer dereference
due to a typo in a condition. Basically if DEF_STMT
On Thu, Mar 31, 2011 at 3:08 PM, Jeff Law l...@redhat.com wrote:
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/24/11 17:57, Andrew MacLeod wrote:
My fault for not being specific about it... I tend to just use data race
as a catch all for all these types of things when talking about
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/31/11 07:26, Richard Guenther wrote:
On Thu, Mar 31, 2011 at 3:08 PM, Jeff Law l...@redhat.com wrote:
On 03/24/11 17:57, Andrew MacLeod wrote:
My fault for not being specific about it... I tend to just use data race
as a catch all for all
On 03/31/2011 03:23 PM, Jeff Law wrote:
On 03/23/11 08:55, Bernd Schmidt wrote:
The first basic block contains insns to move incoming argument registers
to pseudos. When these pseudos live across calls, they get allocated to
call-saved registers. This in turns disables shrink-wrapping, since
This patch adds an array_mode_supported_p hook, which says whether
MAX_FIXED_MODE_SIZE should be ignored for a given type of array.
It follows on from the discussion here:
http://gcc.gnu.org/ml/gcc/2011-03/msg00342.html
The intended use of the hook is to allow small arrays of vectors
to have
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/24/11 07:11, Bernd Schmidt wrote:
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
On Thu, Mar 31, 2011 at 3:32 PM, Richard Sandiford
richard.sandif...@linaro.org wrote:
This patch adds an array_mode_supported_p hook, which says whether
MAX_FIXED_MODE_SIZE should be ignored for a given type of array.
It follows on from the discussion here:
OK.
Jason
New version of previous patch. Apologies.
Stu
-Original Message-
From: Henderson, Stuart
Sent: 31 March 2011 12:20
To: gcc-patches@gcc.gnu.org
Subject: [Patch] bfin: move loop invariants out of loop
The attached patch attempts to move loop invariants out of loops for Blackfin.
On 2011/3/31 06:14 PM, Richard Earnshaw wrote:
On Thu, 2011-03-31 at 11:33 +0800, Chung-Lin Tang wrote:
On 2011/3/30 05:28 PM, Richard Earnshaw wrote:
On Wed, 2011-03-30 at 15:35 +0800, Chung-Lin Tang wrote:
On 2011/3/30 上午 12:23, Richard Earnshaw wrote:
On Tue, 2011-03-29 at 22:53 +0800,
On 03/31/2011 03:56 PM, Henderson, Stuart wrote:
The attached patch adds the FDPIC reg to TARGET_EXTRA_LIVE_ON_ENTRY for
Blackfin fdpic.
2011-03-31 Stuart Henderson stuart.hender...@analog.com
From Jie Zhang
*config/bfin/bfin.c (bfin_extra_live_on_entry): New.
Richard,
Thank you for the crystal clear explanation. Now I understand why we
were not using the end_prologue debug hook before :-).
From what you say and from what Jan said, I think we could just keep the
part (of my earlier patch) that avoids emitting two consecutive
redundant .loc
Richard Guenther richard.guent...@gmail.com writes:
On Thu, Mar 31, 2011 at 3:32 PM, Richard Sandiford
richard.sandif...@linaro.org wrote:
This patch adds an array_mode_supported_p hook, which says whether
MAX_FIXED_MODE_SIZE should be ignored for a given type of array.
It follows on from the
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/30/11 08:19, Richard Guenther wrote:
Well, I'm not sure that strict-align targets that provide byte access do
not simply hide the issue inside the CPU (thus, perform the read-modify-write
there and do not guarantee any atomicity unless you
This PR doesn't exactly trigger currently on trunk; a REG_DEAD note that
occurs in trunk, but not in the 4.5-based compilers which this bug was
reported for, currently blocks auto-inc-dec from doing its job, and just
happens to avoid this ICE.
The problem is vldmia/db, which do exist, are
On 03/31/2011 04:16 PM, Henderson, Stuart wrote:
The attached patch attempts to move loop invariants out of loops for Blackfin.
2011-03-31 Stuart Henderson stuart.hender...@analog.com
From Bernd Schmidt
* config/bfin/bfin.c (bfin_gen_bundles): Don't try to bundle a jump.
On Thu, Mar 31, 2011 at 4:47 PM, Jeff Law l...@redhat.com wrote:
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/30/11 08:19, Richard Guenther wrote:
Well, I'm not sure that strict-align targets that provide byte access do
not simply hide the issue inside the CPU (thus, perform the
Hi,
the ACATS test cc3601a started to fail recently at -O2 after the various tweaks
to the optimizer. This is an assertion failure in the gimplifier invoked from
PRE because of a dangling PLACEHOLDER_EXPR in operand #2 of an ARRAY_REF.
CCP2 turns the ARRAY_REF:
D.2774_394 =
On Thu, Mar 31, 2011 at 5:25 PM, Eric Botcazou ebotca...@adacore.com wrote:
Hi,
the ACATS test cc3601a started to fail recently at -O2 after the various
tweaks
to the optimizer. This is an assertion failure in the gimplifier invoked from
PRE because of a dangling PLACEHOLDER_EXPR in
On 03/31/2011 07:35 AM, Dodji Seketeli wrote:
redundant .loc directives. It seems to me that in the case of direct
output (i.e when we the underlying assembler doesn't support the .loc
directive) we already avoid the duplication. And that avoidance fixes
the immediate issue GDB is facing,
While debugging why several libgo tests on Solaris 2/SPARC were hanging
in select (cf. PR go/48242, go/48243), I found that fd_set is
typedef struct fd_set {
longfds_bits[__howmany(FD_SETSIZE, FD_NFDBITS)];
} fd_set;
The current implementation of the FD* funcs in sysfile_posix.go
(rotate:SI (match_operand:SI 1 register_operand )
-(match_operand:SI 2 immediate_operand )))]
+(match_operand:SI 2 const_int_operand )))]
{
- if (INTVAL (operands[2]) != 16)
+ if (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != 16)
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/30/11 10:51, Richard Sandiford wrote:
Nice cleanup thanks. Just noticed a couple of things:
Jeff Law l...@redhat.com writes:
*** struct reload
*** 100,106
int inc;
/* A reg for which reload_in is the equivalent.
Hi Carrot,
How about adding an alternative only enabled for T2 that uses the `l'
constraint and inventing new constraints for some of the constant values
that are valid for 16 bit instructions since the `I' and `L' constraints
have different meanings depending on whether TARGET_32BIT
On Thu, Mar 31, 2011 at 5:57 PM, Michael Matz m...@suse.de wrote:
On Thu, 31 Mar 2011, Richard Guenther wrote:
canonicalize_constructor_val may be doing useful things on ADDR_EXPR
too, but you don't call it in that case because you only added your
code in the default case. You only reach
Rainer Orth r...@cebitec.uni-bielefeld.de writes:
While debugging why several libgo tests on Solaris 2/SPARC were hanging
in select (cf. PR go/48242, go/48243), I found that fd_set is
typedef struct fd_set {
longfds_bits[__howmany(FD_SETSIZE, FD_NFDBITS)];
} fd_set;
The
On 03/31/2011 05:42 PM, Richard Henderson wrote:
(rotate:SI (match_operand:SI 1 register_operand )
- (match_operand:SI 2 immediate_operand )))]
+ (match_operand:SI 2 const_int_operand )))]
{
- if (INTVAL (operands[2]) != 16)
+ if (GET_CODE
Rainer Orth r...@cebitec.uni-bielefeld.de writes:
I'm especially suffering from hangs on Solaris 8/x86 and Solaris 8 and
9/SPARC (not yet filed or investigated), which hangs the whole build (PR
go/48242). If I get around to it, I'll probably replace gotest by a
dg-based testsuite.
Argh, no,
Ian Lance Taylor i...@google.com writes:
What an annoying problem. Sorry about that. But why don't we just
change to byte?
If this causes the right bits to be set for big and little-endian hosts,
certainly fine with me. I haven't tried yet, but the less different
code paths, the better.
This patch to libgo makes the testsuite generate a libgo.sum and
libgo.log file which are much like the ones that DejaGNU would generate.
My hope is that this will cause the various scripts we have that parse
DejaGNU files do something useful with the libgo test results.
Bootstrapped and ran Go
Ian Lance Taylor i...@google.com writes:
Rainer Orth r...@cebitec.uni-bielefeld.de writes:
I'm especially suffering from hangs on Solaris 8/x86 and Solaris 8 and
9/SPARC (not yet filed or investigated), which hangs the whole build (PR
go/48242). If I get around to it, I'll probably replace
Following the difficulties with the setmem pattern, this patch series
makes the number of generator arguments (as opposed to rtx insn operands)
available in insn_data.
The first patch adds a new gather statistics function to gensupport,
and uses it in genemit.c
Bootstrapped regression-tested on
This second patch makes genoutput.c use the new get_pattern_stats function,
and adds the extra field to insn_data.
Bootstrapped regression-tested on x86_64-linux-gnu. OK to install?
Richard
gcc/
* recog.h (insn_data_d): Add n_generator_args.
* genoutput.c (data): Likewise.
This patch makes use of the new n_generator_args field.
Bboostrapped regressions-tested on x86_64-linux-gnu. Also tested by
building cc1 for arm-linux-gnueabi, mips-elf, spu-elf.
Richard
gcc/
* expr.c (emit_block_move_via_movmem): Use n_generator_args
instead of n_operands.
Hello,
* Rainer Orth wrote on Thu, Mar 31, 2011 at 06:12:31PM CEST:
Ian Lance Taylor i...@google.com writes:
Argh, no, I am trying to fight against that as long as possible. We
should be moving away from DejaGNU, not toward it.
Do you have a decent alternative? I've no idea what
Rainer Orth r...@cebitec.uni-bielefeld.de writes:
Ian Lance Taylor i...@google.com writes:
Rainer Orth r...@cebitec.uni-bielefeld.de writes:
I'm especially suffering from hangs on Solaris 8/x86 and Solaris 8 and
9/SPARC (not yet filed or investigated), which hangs the whole build (PR
This patch to the Go frontend fixes a bug: if you take a slice of an
array, you are in effect taking the address of the array, which in Go
requires moving the array to the heap. Bootstrapped and ran Go
testsuite on x86_64-unknown-linux-gnu. Committed to mainline.
Ian
diff -r b9df7566fd57
This patch to the libgo Makefile fixes a typo in a test case name. Ran
Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline.
Ian
diff -r 0158b3ae4e51 libgo/Makefile.am
--- a/libgo/Makefile.am Thu Mar 31 09:45:16 2011 -0700
+++ b/libgo/Makefile.am Thu Mar 31 09:47:33 2011 -0700
@@
On Thu, 31 Mar 2011, Ralf Wildenhues wrote:
Hello,
* Rainer Orth wrote on Thu, Mar 31, 2011 at 06:12:31PM CEST:
Ian Lance Taylor i...@google.com writes:
Argh, no, I am trying to fight against that as long as possible. We
should be moving away from DejaGNU, not toward it.
Do you
On 03/31/2011 09:01 AM, Bernd Schmidt wrote:
I have a dim memory of the problem being that something didn't check the
predicate. Sure enough, with the patch below applied to a 4.3 tree, I get
/local/src/egcs/gcc-4_3-branch/gcc/testsuite/gcc.c-torture/execute/20020226-1.c:43:
internal
On Thu, 31 Mar 2011, Rainer Orth wrote:
Ian Lance Taylor i...@google.com writes:
Rainer Orth r...@cebitec.uni-bielefeld.de writes:
I'm especially suffering from hangs on Solaris 8/x86 and Solaris 8 and
9/SPARC (not yet filed or investigated), which hangs the whole build (PR
On 03/28/2011 08:28 PM, Rodrigo Rivas wrote:
A few comments:
1. I'm not sure about what should happen if the begin/end found in class
scope are not ordinary functions.
Whatever range.begin() would mean if written explicitly.
My guess is that if it is a function
(static or non-static) it is
On 03/31/2011 06:22 PM, Richard Sandiford wrote:
Bootstrapped regression-tested on x86_64-linux-gnu. OK to install?
Ok all three.
Bernd
On Thu, 2011-03-31 at 22:18 +0800, Chung-Lin Tang wrote:
On 2011/3/31 06:14 PM, Richard Earnshaw wrote:
On Thu, 2011-03-31 at 11:33 +0800, Chung-Lin Tang wrote:
On 2011/3/30 05:28 PM, Richard Earnshaw wrote:
On Wed, 2011-03-30 at 15:35 +0800, Chung-Lin Tang wrote:
On 2011/3/30 上午
This patch set fixes PR 43920 - 'Choosing conditional execution over
conditional branches for code size in some cases'.
The patch set was tested on ARM and x86_64. The codesize changes were
benchmarked for ARM Thumb-2. For SPEC2000 and EEMBC CoreMark, a
reduction of 1.1% in the geomean of the
A testcase for the code in arm-size-branch_cost.patch.
Thanks,
- Tom
Index: gcc/testsuite/gcc.target/arm/pr43920-1.c
===
--- gcc/testsuite/gcc.target/arm/pr43920-1.c (revision 0)
+++ gcc/testsuite/gcc.target/arm/pr43920-1.c (revision
The impact of patches 4-9 of the patch set on the example from the bug
report for ARM Thumb-2 -Os is a further size reduction of 7%, from 58 to
54 bytes.
This size reduction is illustrated in this diff of the assembly
(left, without patches, size 58. right, with patches, size 54):
...
push
Currently uses and clobbers are counted as insns in crossjumping, which
can cause undesirable crossjumping. The patch fixes this.
Thanks,
- Tom
Index: gcc/cfgcleanup.c
===
--- gcc/cfgcleanup.c (revision 170556)
+++ gcc/cfgcleanup.c
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
Original patch discussion here:
http://gcc.gnu.org/ml/gcc-patches/2010-11/msg01917.html
This version results in about a .15% compile-time slowdown. In return
we get better code generation (size speed) through improved
inheritance and more
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/31/11 12:35, Tom de Vries wrote:
Currently uses and clobbers are counted as insns in crossjumping, which
can cause undesirable crossjumping. The patch fixes this.
OK. Please install.
jeff
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11
This patch fixes the various bugs that showed up with subversion id 171341 on
the powerpc relating to vector support.
I did a bootstrap and make check. The following tests now pass on a power7
linux/gnu system with these patches, and there were no regressions. Is it ok
to install the patch?
Inserts use of return register in epilogue threading, to keep
representation consistent, and prevent mismatch in crossjump matching.
Thanks,
- Tom
Index: gcc/function.c
===
--- gcc/function.c (revision 170556)
+++ gcc/function.c
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/31/11 12:29, Tom de Vries wrote:
Cleans up some code.
OK. Note that it would have helped if you mentioned that bb was a
loop invariant and thus ev and ev2 were loop invariants that could
be replaced by bb.
Please install.. Thanks,
jeff
Allows crossjump over fallthru paths.
Thanks,
- Tom
diff -u gcc/cfgcleanup.c gcc/cfgcleanup.c
--- gcc/cfgcleanup.c (working copy)
+++ gcc/cfgcleanup.c (working copy)
@@ -1139,6 +1139,43 @@
}
}
+ /* Walks from I1 in BB1 backward till the next non-debug insn, and returns the
+resulting
Test-case for crossjump-fallthru-ml.patch.
Thanks,
- Tom
Index: gcc/testsuite/gcc.target/arm/pr43920-2.c
===
--- gcc/testsuite/gcc.target/arm/pr43920-2.c (revision 0)
+++ gcc/testsuite/gcc.target/arm/pr43920-2.c (revision 0)
@@ -0,0
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/31/11 12:40, Tom de Vries wrote:
Inserts use of return register in epilogue threading, to keep
representation consistent, and prevent mismatch in crossjump matching.
OK.
Jeff
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)
Allow crossjumping in both directions. Crossjump was assumed to be
symmetric, and therefore only applied on edges e1,e2 and not on e2,e1.
Now given both the fallthru fix and the regnotes fix, crossjumping is
not symmetrical anymore, and we allow both directions (but not by
testing twice).
Thanks,
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/31/11 12:43, Tom de Vries wrote:
Allows crossjump over fallthru paths.
OK.
jeff
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/31/11 12:45, Tom de Vries wrote:
Allow crossjumping in both directions. Crossjump was assumed to be
symmetric, and therefore only applied on edges e1,e2 and not on e2,e1.
Now given both the fallthru fix and the regnotes fix, crossjumping is
I think this is a candidate to backport to libstdc++-4.6.1.
exception_ptr.h needs the forward declaration because it's
included from typeinfo before typeinfo defines std::type_info.
Tested:
`make check` in x86_64-unknown-linux-gnu/libstdc++-v3. The
abi_check test fails, but also did before
Hi Jeff,
On 03/31/2011 08:36 PM, Jeff Law wrote:
On 03/31/11 12:35, Tom de Vries wrote:
Currently uses and clobbers are counted as insns in crossjumping, which
can cause undesirable crossjumping. The patch fixes this.
OK. Please install.
jeff
I don't have an account at sourceware.org.
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/31/11 13:02, Tom de Vries wrote:
Hi Jeff,
On 03/31/2011 08:36 PM, Jeff Law wrote:
On 03/31/11 12:35, Tom de Vries wrote:
Currently uses and clobbers are counted as insns in crossjumping, which
can cause undesirable crossjumping. The
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 03/31/11 13:13, Vladimir Makarov wrote:
The following patch solves the PR48381. The reason for the problem is
described on
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48381
Ok to commit? It was successfully bootstrapped on x86-64.
On 2011/4/1 01:33 AM, Richard Earnshaw wrote:
On Thu, 2011-03-31 at 22:18 +0800, Chung-Lin Tang wrote:
On 2011/3/31 06:14 PM, Richard Earnshaw wrote:
On Thu, 2011-03-31 at 11:33 +0800, Chung-Lin Tang wrote:
On 2011/3/30 05:28 PM, Richard Earnshaw wrote:
On Wed, 2011-03-30 at 15:35 +0800,
1 - 100 of 122 matches
Mail list logo