2011/11/10 Richard Guenther :
> On Wed, Nov 9, 2011 at 10:09 PM, Kai Tietz wrote:
>> 2011/11/9 Jeff Law :
>>> -BEGIN PGP SIGNED MESSAGE-
>>> Hash: SHA1
>>>
>>> On 11/07/11 15:36, Richard Guenther wrote:
>>>
>>>>
>&
Hi,
this patch fixes testsuite-failures for llp64 targets in
gcc.dg/tree-ssa testsuite.
ChangeLog
2012-09-19 Kai Tietz
* gcc.dg/tree-ssa/scev-3.c: Add llp64 to xfail.
* gcc.dg/tree-ssa/scev-4.c: Likewise.
Ok for apply?
Regards,
Kai
Index: scev-3.c
2012/6/15 Eric Botcazou :
>> Jacek Caban sent this:
>>
>> http://gcc.gnu.org/ml/gcc-patches/2012-03/msg01987.html
>>
>> in response to this:
>>
>> http://gcc.gnu.org/ml/gcc-patches/2012-03/msg01986.html
>>
>> But it never got reviewed. Could you review and commit?
>
> No, I don't have approval rig
2012/6/18 JonY :
> Hi,
>
> I am told that this ABI test does not apply to mingw targets. OK to apply?
Hi JonY,
The test doesn't apply to x64 windows targets, as for it sse is part of its ABI.
As test already checks for !ia32, we could simply check for
x86_64/i?86-*-mingw* targets instead. We don
Hello Tristan,
patch works for me, too. Just one nit about the patch.
2012/6/18 Tristan Gingold :
> @@ -8558,6 +8558,11 @@ ix86_frame_pointer_required (void)
> if (TARGET_32BIT_MS_ABI && cfun->calls_setjmp)
> return true;
>
> + /* Win64 SEH, very large frames need a frame-pointer as maximu
Hi,
ChangeLog
2012-06-20 Kai Tietz
* gcc.target/i386/pr23943.c (size_t): Use compatible type-definition
for LLP64 targets.
* gcc.target/i386/pr38988.c: Likewise.
Regression-tested for x86_64-w64-mingw32, and x86_64-unknown-linux-gnu.
Ok for apply?
Regards,
Kai
As both tests are checking already for !ia32, there is no additiona
check beside the targets necessary.
Cheers,
Kai
2012/6/25 Tristan Gingold :
>
> On Jun 18, 2012, at 4:28 PM, Kai Tietz wrote:
>
>> Hello Tristan,
>>
>> patch works for me, too. Just one nit about the patch.
>>
>> 2012/6/18 Tristan Gingold :
>>> @@ -8558,6 +8558,11 @@ ix86_frame_pointer_requi
2012/6/25 Richard Guenther :
> On Mon, 25 Jun 2012, Tristan Gingold wrote:
>
>>
>> On Jun 22, 2012, at 5:04 PM, Richard Henderson wrote:
>>
>> > On 06/21/2012 12:48 AM, Tristan Gingold wrote:
>> >> 2012-06-18 Tristan Gingold
>> >>
>> >> * config/i386/winnt.c (i386_pe_seh_end_prologue): Move c
Hello,
this patch fixes an ICE on valid code for preprocessor as described in PR 37215
ChangeLog
2012-06-27 Kai Tietz
PR preprocessor/37215
* c-ppoutput.c (preprocess_file): Check for none-empty buffer.
Tested for x86_64-unknown-linux-gnu, and i688-pc-cygwin. Ok for apply
Hi,
this patch fixes a testsuite-failure for LLP64 targets.
ChangeLog
2012-06-27 Kai Tietz
* g++.dg/cpp0x/constexpr-52672.C (ul_ptr): Use SIZE_TYPE instead of
hard-coded 'unsigned long'.
Tested for x86_64-w64-mingw32, and x86_64-unknown-linux-gnu. Ok for apply?
Re
Hello,
this patch makes sure that for pe(+)-coff targets always relocations
are allowed in readonly memory.
This fixes for x86_64-w64-mingw32 target some testcases.
ChangeLog
2012-06-27 Kai Tietz
* config/i386/winnt.c (i386_pe_reloc_rw_mask): New function.
* config/i386/i386
2012/6/27 Richard Henderson :
> On 06/27/2012 12:47 PM, Kai Tietz wrote:
>> 2012-06-27 Kai Tietz
>>
>> * config/i386/winnt.c (i386_pe_reloc_rw_mask): New function.
>> * config/i386/i386-protos.h (i386_pe_reloc_rw_mask): Add
>> prototype.
patch simply makes sure that the definition of
NATIVE_SYSTEM_HEADER_DIR remains a POSIX-style
path.
ChangeLog
2012-07-05 Kai Tietz
PR bootstrap/52947
* config/i386/mingw32.h (NATIVE_SYSTEM_HEADER_DIR): Define it always
as "/mingw/include".
Tested for x86_64-w64-mi
Hi,
I would kindly ask to revert this patch soonish. The define
OPTION_BIONIC is defined within linux.h header, which isn't used by
cygwin and mingw targets. so this symbol is undefined for them and
this is causing bootstrap issue for cygwin and mingw targets.
Regards,
Kai
2012/7/17 Richard Henderson :
> On 07/17/2012 12:35 AM, Tristan Gingold wrote:
>> So, the first element of ExceptionInformation will be exc.
>>
>> Should I add a comment ?
>
> Ah right. Definitely.
>
> Otherwise I don't see anything else in the way. Kai?
>
>
> r~
No, I don't have any objections.
real effect, but IMHO it makes sense to
add here the check for cast from boolean-type to be consitant.
ChangeLog
2011-08-02 Kai Tietz
* gimple.c (canonicalize_cond_expr_cond): Handle cast from boolean-type.
* tree-ssa-forwprop.c (forward_propagate_comparison): Return
true iff st
Hello,
this patch adds some statement-cleanup to forward-propagation.
ChangeLog
2011-08-02 Kai Tietz
* tree-ssa-forwprop.c (simplify_bitwise_binary):
Remove possible unused statement after optimization.
2011-08-02 Kai Tietz
* gcc.dg/tree-ssa/forwprop-9.c: Add
2011/8/2 Richard Guenther :
> On Tue, Aug 2, 2011 at 12:17 PM, Kai Tietz wrote:
>> Hello,
>>
>> this patch removes in forward-propagation useless comparisons X != 0
>> and X != ~0 for boolean-typed X. For one-bit precision typed X we
>> simplifiy X == 0 (and X !=
2011/8/2 Richard Guenther :
> On Tue, Aug 2, 2011 at 3:14 PM, Kai Tietz wrote:
>> 2011/8/2 Richard Guenther :
>>> On Tue, Aug 2, 2011 at 12:17 PM, Kai Tietz wrote:
>>>> Hello,
>>>>
>>>> this patch removes in forward-propagation useless c
2011/8/2 Richard Guenther :
> On Tue, Aug 2, 2011 at 12:39 PM, Kai Tietz wrote:
Thanks, yes, I noticed that. Patch adjusted for cfg_tree.
ChangeLog
2011-08-02 Kai Tietz
* tree-ssa-forwprop.c (simplify_bitwise_binary):
Remove possible unused statement after optimizat
Sorry, had a pasto in testcase.
Fixed at rev. 166205
2011-08-02 Kai Tietz
PR middle-end/49947
* gcc.dg/tree-ssa/forwprop-15.c
Tested on x86_64-pc-linux-gnu. Applied as obvious fix.
Regards,
Kai
Index: gcc.dg/tree-ssa/forwprop-15.c
-not expressions like ~(A & B) -> ~A |
~B, ~(A & B) -> ~A | ~B, and
~(A ^ B) -> A ^ ~B. These expansion are just temporary for this pass
and getting later by fold
reversed again back to their original form.
ChangeLog
2011-08-02 Kai Tietz
* tree-ssa-reassoc.c (gimple bu
Hello,
I noticed that I disallowed expansion of ~(X bitwise-binary-ops) for
none-boolean type. This limitiation isn't necessary and prevented
even some pattern-detections.
I've added 3 new testcases for this to the patch.
ChangeLog
2011-08-03 Kai Tietz
* tree-ssa-reassoc
2011/8/3 Michael Matz :
> Hi,
>
> On Tue, 2 Aug 2011, Kai Tietz wrote:
>
>> this patch improves the ability of reassociation pass to simplifiy
>> more complex bitwise-binary
>> operations with comparisons. We break-up for this patch statements
>> like (X | Y
2011/8/3 Michael Matz :
> Hi,
>
> On Wed, 3 Aug 2011, Kai Tietz wrote:
>
>> > Implement all of this in the normal reassoc machinery that already
>> > exists. Don't implement your own walker (which btw is superlinear
>> > because you recurse into
2011/8/3 Richard Guenther :
> On Wed, Aug 3, 2011 at 3:32 PM, Kai Tietz wrote:
>> 2011/8/3 Michael Matz :
>>> Hi,
>>>
>>> On Tue, 2 Aug 2011, Kai Tietz wrote:
>>>
>>>> this patch improves the ability of reassociation pass to simpli
Hello,
This patch resets for x64_64 windows abi the content of
ix86_varargs_gpr_size and ix86_varargs_fpr_size to zero.
Those variable might contain wrong values from prior use of sysv-abi va_list.
ChangeLog
2011-08-04 Kai Tietz
* config/i386/i386.c (setup_incoming_varargs_ms_64
call, then we should set frame's hard_frame_pointer_offset to its
current stack_pointer_offset (minus 128 delta for smaller common
stack-address ranges).
ChangeLog
2011-08-04 Kai Tietz
* config/i386/i386.c (ix86_compute_frame_layout): Adjust
hard_frame_pointer_offset
i
2011/8/4 Richard Henderson :
> On 08/04/2011 01:53 PM, Kai Tietz wrote:
>> diff = frame->stack_pointer_offset - frame->hard_frame_pointer_offset;
>> - if (diff > 240 || (diff & 15) != 0)
>> + if (diff > 240 || (diff & 15) != 0 || cfun->
2011/8/4 Kai Tietz :
> 2011/8/4 Richard Henderson :
>> On 08/04/2011 01:53 PM, Kai Tietz wrote:
>>> diff = frame->stack_pointer_offset -
>>> frame->hard_frame_pointer_offset;
>>> - if (diff > 240 || (diff & 15) != 0)
>>> +
Hello,
this adjusts some testcases for LLP64 target x86_64 mingw.
ChangeLog
2011-08-06 Kai Tietz
* gcc.dg/tree-ssa/pr23455.c: Adjust testcases for LLP64 for
x86_64 mingw target.
* gcc.dg/tree-ssa/loop-1.c: Likewise.
* gcc.dg/tree-ssa/ssa-store-ccp-2.c
2011/8/7 Mike Stump :
> On Aug 6, 2011, at 6:04 AM, Kai Tietz wrote:
>> this adjusts some testcases for LLP64 target x86_64 mingw.
>
> Ok. Please watch for any comments on stdarg... I don't have any, but others
> might.
Ok, will do. Applied at rev 177543.
Thanks,
Kai
E is
of integral kind,
and CST fits into type of A.
2011-08-09 Kai Tietz
PR middle-end/49806
* tree-vrp.c (simplify_bit_ops_using_ranges): Add
code for type-cast sinking for bitwise-operations.
* gcc.dg/tree-ssa/vrp47.c: Remove dom-dump and adjusted
Ups missed to update patch before sending it. Inlined tested patch.
Kai
Index: gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp47.c
===
--- gcc.orig/gcc/testsuite/gcc.dg/tree-ssa/vrp47.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp47.c
@@ -4,8 +4
Hello,
this patch fixes for options -fopenmp and/or -ftree-parallelize-loops=
the binding to pthread-library.
ChangeLog
2011-08-16 Kai Tietz
* config/i386/mingw32.h (GOMP_SELF_SPEC): Add -pthread option.
Bootstrapped for x86_64-w64-mingw32 and i686-pc-mingw32. Applied at
revision
32-bit and 64-bit Windows host.
ChangeLog
2011-08-28 Kai Tietz
* config/os/mingw32/error_constants.h (ECHILD): Add support,
if present.
(ENOSPC): Likewise.
(EPERM): Likewise.
Bootstrapped and regression tested for x86_64-w64-mingw32 and
i686-w64-mingw32. Ok for
2011/8/28 Paolo Carlini :
> Hi,
>>
>> Hello,
>>
>> this patch adds some errno values supported by newer runtime-version.
>> To keep backward compatibility
>> this patch checks for their definition before trying to use them.
>
> Any particular reason for not using [GLIBCXX_CHECK_SYSTEM_ERROR] for mi
2011/8/28 Paolo Carlini :
> On 08/28/2011 10:05 PM, Kai Tietz wrote:
>>
>> 2011/8/28 Paolo Carlini:
>>>
>>> Hi,
>>>>
>>>> Hello,
>>>>
>>>> this patch adds some errno values supported by newer runtime-version.
>&
r-values ETIMEDOUT,
ENOTSUP, and EWOULDBLOCK present.
ChangeLog
2011-08-28 Kai Tietz
* configure: Regenerated.
* config.h.in: Regenerated.
* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR) Add
checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and
EWOULDBLOCK.
2011/8/29 Paolo Carlini :
> On 08/29/2011 10:54 AM, Pedro Alves wrote:
>>
>> While these two didn't get the HAVE_... prefix. Was that intended?
>
> To be clear: make sure before committing that *all* use _GLIBCXX_HAVE_*
>
> Paolo.
Done and added missing _GLIBCXX_HAVE_ for all checks.
Committed at
Hi Pedro,
The update of copyright date is ok.
The rest of the patch doesn't look right. Why you have here a stray
comma? Why you remove here leading spaces for comments?
Kai
2011/8/30 Paolo Carlini :
> ... I committed the below because what we have now cannot possibly be right,
> can easily br
2011/8/30 Paolo Carlini :
> On 08/30/2011 11:18 AM, Kai Tietz wrote:
>>
>> Hi Pedro,
>
> Paolo
>>
>> The update of copyright date is ok.
>> The rest of the patch doesn't look right. Why you have here a stray
>> comma?
>
> Actually, *you* ha
2011/9/20 JonY :
> Hi,
>
> Its been used in the automated toolchain builds for sometime, seems like
> a good idea to enable it by default. It can be easily changed to match
> for all mingw as well if needed.
>
> OK for trunk?
>
> Index: libstdc++-v3/configure.ac
> ==
2011/9/20 Charles Wilson :
> On 9/20/2011 9:20 AM, JonY wrote:
>> On 9/20/2011 13:59, Kai Tietz wrote:
>>> 2011/9/20 JonY:
>>>> Its been used in the automated toolchain builds for sometime,
>>>> seems like a good idea to enable it by default. It can be
>
ST'=~CST
- (X != 0) | (Y != 0) -> (X ! Y) != 0
- (X == 0) & (Y == 0) -> (X | Y) == 0
- (X != ~0) | (Y != ~0) -> (X & Y) != ~0
- (X == ~0) & (Y == ~0) -> (X & Y) != ~0
ChangeLog
2011-09-21 Kai Tietz
* tree-ssa-reassoc.c (gimple build_a
2011/9/25 Paolo Carlini :
> On 09/25/2011 05:14 PM, Cesar Strauss wrote:
>>
>> I quote my reasoning: On 09/20/2011 11:56 PM, Cesar Strauss wrote:
>>>
>>> On the one hand, according to comment 4 of [1], by using
>>> --enable-fully-dynamic-string, all other users will miss a very good
>>> optimizatio
2011/9/27 Richard Henderson :
> On 09/23/2011 04:45 PM, Sriraman Tallam wrote:
>> I also want the SECTION_EXCLUDE part alone to be considered for trunk.
>
> This is ok for trunk.
>
> Kai, is there a similar flag for pe-coff? I.e. is there something
> reasonable that we can add to i386_pe_asm_named
Hi,
this patch enables same feature as in thread "[google] Add
SECTION_EXCLUDE flag and exclude .gnu.callgraph sections
(issue5126041)" for pe-coff x86 and x64 targets.
ChangeLog
2011-09-27 Kai Tietz
* configure.ac: Add test for new section attribute
specifier &quo
2011/9/27 Richard Henderson :
> On 09/27/2011 12:58 PM, Kai Tietz wrote:
>> +#ifdef HAVE_GAS_SECTION_EXCLUDE
>> + if ((flags & SECTION_EXCLUDE) != 0)
>> + *f++ = 'e';
>> +#endif
>
> If 'e' is not supported, I wonder if we should emit
2011/10/1 Pedro Alves :
> On Saturday 01 October 2011 12:15:42, JonY wrote:
>> On 10/1/2011 18:33, Pedro Alves wrote:
>> > On Saturday 01 October 2011 07:03:35, JonY wrote:
>> >> Hi,
>> >>
>> >> I followed Paolo's suggestion with the os_defines.h trick. I duplicated
>> >> os/mingw32/ to os/mingw32-
2011/10/3 Ozkan Sezer :
> PING?
>
> On Thu, Sep 22, 2011 at 2:28 PM, Ozkan Sezer wrote:
>> Hi:
>>
>> Unless I'm missing something, the mingw CPP_SPEC changes introduced in
>> r171833 have a typo: -D_REENTRANCE should read -D_REENTRANT . Patchlet
>> below. Please review, and apply if it's OK.
>>
>
Hello,
This patch (one of two) adds to tree-ssa-reassociation code for
expansion of packed
bitwise-binary operations - like (X | Y) == 0, etc.
Also it normalizes bitwise-not operations on bitwise-binary tree
chains - like ~(X | Y) -> ~X & ~Y.
ChangeLog
2011-10-04 Kai Tietz
Hello,
This patch (two of two) adds to tree-ssa-reassociation code for
repropagation of unpacked
bitwise-binary operations - like (X == 0) & (Y == 0), etc.
Also it denormalizes bitwise-not operations on bitwise-binary tree
chains - eg ~X & ~Y -> ~(X | Y).
ChangeLog
2011-10-04
2011/10/3 Ozkan Sezer :
> On Mon, Oct 3, 2011 at 5:56 PM, Kai Tietz wrote:
>> 2011/10/3 Ozkan Sezer :
>>> PING?
>>>
>>> On Thu, Sep 22, 2011 at 2:28 PM, Ozkan Sezer wrote:
>>>> Hi:
>>>>
>>>> Unless I'm missing
RUTH_(AND|OR)_EXPR, if left-hand
operand is a simple operand, and has no side-effects.
ChangeLog
2011-10-06 Kai Tietz
* fold-const.c (fold_truth_andor): Convert TRUTH_(AND|OR)IF_EXPR
to TRUTH_OR_EXPR, if suitable.
Bootstrapped and tested for all languages (including Ada and
-effects, and doesn't
trap, then try to convert expression to a TRUTH_(AND|OR)_EXPR, if left-hand
operand is a simple operand, and has no side-effects.
ChangeLog
2011-10-06 Kai Tietz
* fold-const.c (fold_truth_andor): Convert TRUTH_(AND|OR)IF_EXPR
to TRUTH_OR_EXPR, if sui
2011/10/6 Richard Guenther :
> On Thu, Oct 6, 2011 at 11:28 AM, Kai Tietz wrote:
>> Hello,
>>
>> Sorry attached non-updated change. Here with proper attached patch.
>> This patch improves in fold_truth_andor the generation of branch-conditions
>> for targets ha
Hi,
I modified the patch so, that it always just converts two leafs of a
TRUTH(AND|OR)IF chain into a TRUTH_(AND|OR) expression, if branch costs are
high and leafs are simple without side-effects.
Additionally I added some testcases for it.
2011-10-06 Kai Tietz
* fold-const.c
2011/10/6 Michael Matz :
> Hi,
>
> On Thu, 6 Oct 2011, Richard Guenther wrote:
>
>> > + && ((TREE_CODE_CLASS (TREE_CODE (arg1)) != tcc_comparison
>> > + && TREE_CODE (arg1) != TRUTH_NOT_EXPR)
>> > + || !FLOAT_TYPE_P (TREE_TYPE (TREE_OPERAND (arg1, 0)
>>
>> ? simple_operan
2011/10/6 Michael Matz :
> Hi,
>
> On Thu, 6 Oct 2011, Kai Tietz wrote:
>
>> That's not the hole story. The difference between TRUTH_(AND|OR)IF_EXPR
>> and TRUTH_(AND|OR)_EXPR are, that for TRUTH_(AND|OR)IF_EXPR gimplifier
>> creates a COND expression, but
2011/10/6 Michael Matz :
> Hi,
>
> On Thu, 6 Oct 2011, Kai Tietz wrote:
>
>> > at which point this association doesn't make sense anymore, as
>>
>> Sorry, exactly this doesn't happen, due an ANDIF isn't simple, and
>> therefore it isn'
Hello,
This patch does rename break_up_subtract_bb to break_up_expr_bb, and it
modifies build_and_add_sum so that unary expression can be created by it, too.
The patch is a prerequisit of the following 6 additional patches.
ChangeLog
2011-10-07 Kai Tietz
* tree-ssa-reassoc.c
Hello,
This patch adds the repropagation of expanded bitwise-not expressions.
ChangeLog
2011-10-07 Kai Tietz
* tree-ssa-reassoc.c (walk_bitwise_stmt_elems): Helper
to collect different kinds of operands of a bitwise-binary
expression chain
Hello,
This patch adds to the break-up pass the facility to sink bitwise-not operations
into bitwise-binary expressions. Additionally it handles special
cases for ~(~X),
and ~(X cmp Y).
ChangeLog
2011-10-07 Kai Tietz
* tree-ssa-reassoc.c (remove_stmt_chain): Helper function
Hello,
This patch adds to the break-up pass the facility to expand (X | Y) ==/!= 0
expression. This enables in later reassociation pass better results.
ChangeLog
2011-10-07 Kai Tietz
* tree-ssa-reassoc.c (expand_cmp_ior): Helper for expanding
(X | Y) ==/!= 0 statments
Hello,
This patch adds to the break-up code the conversion for X ==/!= ~0 to
~X ==/!= 0.
ChangeLog
2011-10-07 Kai Tietz
* tree-ssa-reassoc.c (break_up_bitwise_combined_stmt): Add
handling for X !=/== 0 transformation to ~X !=/== 0.
2011-10-07 Kai Tietz
* gcc.dg
Hello,
This patch adds to the repropagation code the conversion for ~X ==/!=
CST to X ==/!= CST' (with CST' = ~ CST).
We need to do this back-conversion after initial bitwise-binary
repropagation loop, as otherwise
it would interfer.
ChangeLog
2011-10-07 Kai Tietz
Hello,
This patch adds to the repropagation pass for bitwise-expression the
conversion of (X != 0) | (Y != 0) -> (X | Y) != 0, and of (X == 0) & (Y == 0)
-> (X | Y) == 0.
ChangeLog
2011-10-07 Kai Tietz
* tree-ssa-reassoc.c (walk_bitwise_stmt_elems): Add new argument
Hello,
this is the updated version with the suggestion
2011/10/7 Richard Guenther :
> On Thu, Oct 6, 2011 at 4:25 PM, Kai Tietz wrote:
>> + && ((TREE_CODE_CLASS (TREE_CODE (arg1)) != tcc_comparison
>> + && TREE_CODE (arg1) != TRUTH_NOT_EXPR
>
2011/10/8 Paolo Carlini :
> Hi,
>
>> Ok, fixed it, I made a very dumb mistake in configure.host, new patch
>> attached.
>
> Patch is still ok with me, if Kai is ok with it (remember for next time:
> regenerated files are not posted, are just a distraction)
>
> Paolo
Ok, by me, too.
Thanks,
Kai
Hello,
this patch improves COFF linker for undefined weak symbols
and avoids writing symbols for discarded sections - if linker tells so
-, and for IR generated sections.
ChangeLog
2011-10-09 Kai Tietz
* cofflink.c (coff_link_check_ar_symbols): Allow
adding of archive-file
2011/10/7 Kai Tietz :
> Hello,
>
> this is the updated version with the suggestion
>
> 2011/10/7 Richard Guenther :
>> On Thu, Oct 6, 2011 at 4:25 PM, Kai Tietz wrote:
>>> + && ((TREE_CODE_CLASS (TREE_CODE (arg1)) != tcc_comparison
>>> +
2011/10/10 Richard Guenther :
> On Mon, Oct 10, 2011 at 12:35 PM, Kai Tietz wrote:
>> 2011/10/7 Kai Tietz :
>>> Hello,
>>>
>>> this is the updated version with the suggestion
>>>
>>> 2011/10/7 Richard Guenther :
Sample had a typo. Correct sample has of course to return r.
int foo ()
{
int c, r = 0;
if ((c = foo ()) != 0 && c < 20)
r = 1;
return r;
}
2011/10/10 Richard Guenther :
> On Fri, Oct 7, 2011 at 11:36 PM, Kai Tietz wrote:
>> Hello,
>>
>> this is the updated version with the suggestion
>>
>> 2011/10/7 Richard Guenther :
>>> On Thu, Oct 6, 2011 at 4:25 PM, Kai Tietz wrote:
>>
Recent patch had a thinko on rhs of inner lhs check for TRUTH-IF. It
has to be checked that the LHS code is same as outer CODE, as
otherwise we wouldn't apply different TRUTH-IF only on inner RHS of
LHS, which is of course wrong.
Index: gcc/gcc/fold-const.c
===
2011/10/10 Richard Guenther :
> On Mon, Oct 10, 2011 at 2:29 PM, Kai Tietz wrote:
>> Recent patch had a thinko on rhs of inner lhs check for TRUTH-IF. It
>> has to be checked that the LHS code is same as outer CODE, as
>> otherwise we wouldn't apply different TRUTH-IF o
2011/10/10 Richard Guenther :
> On Mon, Oct 10, 2011 at 4:06 PM, Kai Tietz wrote:
>> 2011/10/10 Richard Guenther :
>>> On Mon, Oct 10, 2011 at 2:29 PM, Kai Tietz wrote:
>>>> Recent patch had a thinko on rhs of inner lhs check for TRUTH-IF. It
>>>> has
2011/10/10 Richard Guenther :
> On Mon, Oct 10, 2011 at 5:07 PM, Kai Tietz wrote:
>> 2011/10/10 Richard Guenther :
>>> On Mon, Oct 10, 2011 at 4:06 PM, Kai Tietz wrote:
>>>> 2011/10/10 Richard Guenther :
>>>>> On Mon, Oct 10, 2011 at 2:29 PM, Kai T
2011/10/11 Michael Matz :
> Hi,
>
> On Mon, 10 Oct 2011, Kai Tietz wrote:
>
>> To ensure that we use simple_operand_p in all cases, beside for
>> branching AND/OR chains, in same way as before, I added to this function
>> an additional argument, by which the l
So updated version for patch. It creates new simple_operand_p_2
function instead of modifying simple_operand_p function.
ChangeLog
2011-10-11 Kai Tietz
* fold-const.c (simple_operand_p_2): New function.
(fold_truthop): Rename to
(fold_truth_andor_1): function name
2011/10/11 Michael Matz :
> Hi,
>
> On Tue, 11 Oct 2011, Kai Tietz wrote:
>
>> > Better make it a separate function the first tests your new
>> > conditions, and then calls simple_operand_p.
>>
>> Well, either I make it a new function and call it instead
prologue-used at the end of prologue. Also we
need to emit a memory blockage.
ChangeLog
2011-10-12 Kai Tietz
* config/i386/i386.c (ix86_expand_prologue): Mark
for TARGET_SEH all sse/integer registers as prologue-used.
Tested for x86_64-w64-mingw32. Ok for apply?
Regards,
Kai
2011/10/11 Michael Matz :
> Hi,
>
> On Tue, 11 Oct 2011, Kai Tietz wrote:
>
>> So updated version for patch. It creates new simple_operand_p_2
>> function instead of modifying simple_operand_p function.
>
> FWIW: I also can't think of a nice short name for that
2011/10/12 Michael Matz :
> Hi,
>
> On Wed, 12 Oct 2011, Kai Tietz wrote:
>
>> > And I think it could use some overview of the transformation done like in
>> > the initial patch, ala:
>> >
>> > "Transform ((A && B) && C) into (A
2011/10/12 Richard Henderson :
> On 10/12/2011 12:07 AM, Kai Tietz wrote:
>> Hello,
>>
>> by recent changes gcc begun to move code into the prologue region.
>> This is for x64 SEH an issue, as here the table-information for
>> prologue is limited to 255 bytes
to
bitwise operation. This shows up for Fortran, as here are more then one
boolean-kind type with different mode-sizes. I added a testcase for this,
ChangeLog
2011-10-13 Kai Tietz
* fold-const.c (simple_operand_p_2): New function.
(fold_truthop): Rename to
(fold_tru
2011/10/13 Richard Guenther :
> On Thu, Oct 13, 2011 at 1:25 PM, Kai Tietz wrote:
>> Hello,
>>
>> this new version addresses the comments from Michael and additional fixes
>> an latent issue shown up by this rewrite in fold-const.
>> On gimplify.c's gimple_b
if ((a & 4) == 0) if ((a & 8) != 0) -> if ((a & 12) == 8)
To support that, patch adds required additional patterns for
if.and.if, and if.or.if
detection to tree_ssa_ifcombine_bb.
ChangeLog
2011-10-13 Kai Tietz
* tree-ssa-ifcombine.c (same_phi_args_p_2): New
e are more than one boolean-kind type with
different mode-sizes. I added a testcase for this,
ChangeLog
2011-10-13 Kai Tietz
* fold-const.c (simple_operand_p_2): New function.
(fold_truthop): Rename to
(fold_truth_andor_1): function name.
Additionally remove
Yes, I have already sent an patch with Richard's wish. Indeed we need
only to do this type-casting for operands on transcription of
TRUTH_(AND|OR|XOR)_EXPR to BIT_(AND|OR|XOR)_EXPR.
Cheers,
Kai
2011/10/13 Paolo Carlini :
>>
>> Ping, did this go in trunk already?
>
> I would be surprised to see this happening if nobody like you or Kai actually
> does the commit ;)
>
> P
I will take care to apply it.
Kai
-engough BRANCH_COST and no
special-casing - like MIPS, S/390, and AVR.
ChangeLog
2011-10-14 Kai Tietz
* fold-const.c (simple_operand_p_2): New function.
(fold_truthop): Rename to
(fold_truth_andor_1): function name.
Additionally remove branching creation for
course for bitwise-xor/or operations some
more simplifications
are possible.
This patch just does the type-hoisting part. In a second patch I add
to compare_equal_optimize_1
the ability for further required simplifications for fixing this problem.
ChangeLog
2012-03-15 Kai Tietz
PR
+ Y -> Y == 0
X ==/!= X ^ Y -> Y == 0
(X - Y) ==/!= (Z - Y) -> X ==/!= Z
(Y - X) ==/!= (Y - Z) -> X ==/!= Z
(X + Y) ==/!= (X + Z) -> Y ==/!= Z
(X + Y) ==/!= (Z + X) -> Y ==/!= Z
(X ^ Y) ==/!= (Z ^ X) -> Y ==/!= Z
ChangeLog
2012-03-15 Kai Tietz
PR tree-opt
2012/3/15 Richard Guenther :
> On Thu, Mar 15, 2012 at 2:09 PM, Kai Tietz wrote:
>> Hi,
>>
>> this is the second part of the patch for this problem. It adds some
>> basic simplifications for ==/!=
>> comparisons for eliminating redudant operands.
>>
&g
2012/3/15 Richard Guenther :
> On Thu, Mar 15, 2012 at 2:08 PM, Kai Tietz wrote
>> Hi,
>>
>> The solution for this PR is a mix out of different issues. First is
>> of course the type-hoisting, but also
>> it shows some lacks in simplifications on integer-value
2012/3/15 Richard Guenther :
> On Thu, Mar 15, 2012 at 3:00 PM, Jakub Jelinek wrote:
>> On Thu, Mar 15, 2012 at 02:53:10PM +0100, Kai Tietz wrote:
>>> > This looks like to match unbound pattern sizes and thus does not fit
>>> > into the forwprop machinery. I
2012/3/15 Richard Guenther :
> On Thu, Mar 15, 2012 at 2:46 PM, Kai Tietz wrote:
>> 2012/3/15 Richard Guenther :
>>> On Thu, Mar 15, 2012 at 2:09 PM, Kai Tietz wrote:
>>>> Hi,
>>>>
>>>> this is the second part of the patch for this
401 - 500 of 842 matches
Mail list logo