Re: [patch i386]: Expand sibling-tail-calls via accumulator register

2014-05-26 Thread Kai Tietz
Hi, adjusted patch to make it more bullet-proved and tested it. 2014-05-26 Kai Tietz * config/i386/i386.c (ix86_expand_call): Enforce for sibcalls on memory the use of accumulator-register. (ix86_function_ok_for_sibcall): Reject for x86_64 ABI sibling calls

Re: [patch i386]: Expand sibling-tail-calls via accumulator register

2014-05-26 Thread Kai Tietz
- Original Message - > On Mon, May 26, 2014 at 02:20:36PM -0400, Kai Tietz wrote: > > --- i386.c (revision 210936) > > +++ i386.c (working copy) > > @@ -5298,6 +5298,12 @@ ix86_function_ok_for_sibcall (tree decl, tree exp) > >decl_or_type = type; &g

Re: [patch i386]: Expand sibling-tail-calls via accumulator register

2014-05-26 Thread Kai Tietz
- Original Message - > On Mon, May 26, 2014 at 03:22:50PM -0400, Kai Tietz wrote: > > > In any case, I still can't understand how limiting the choices of the > > > register allocator can improve code rather than making it worse. > > > If the accumulator

Re: [patch i386]: Sibcall tail-call improvement and partial fix PR/60104

2014-05-27 Thread Kai Tietz
- Original Message - > On 05/23/14 02:58, Kai Tietz wrote: > > Hello, > > > > yes the underlying issue is the same as for PR/46219. Nevertheless > > the patch doesn't solve this mentioned PR as I used for know a pretty > > conservative check

Re: [patch i386]: Expand sibling-tail-calls via accumulator register

2014-05-27 Thread Kai Tietz
Ok, so just the part ok the patch remains to prevent varardic-functions being a sibling-tail-call remains. Kai

Re: [patch i386]: Expand sibling-tail-calls via accumulator register

2014-05-28 Thread Kai Tietz
tail-sibcalls. ChangeLog gcc 2014-05-28 Kai Tietz * config/i386/i386.c (x86_output_mi_thunk): Add memory case for sibling-tail-calls. * config/i386/i386.md (sibcall_insn_operand): Add memory-constrain to its use. * config/i386/predicat

Re: [patch i386]: Expand sibling-tail-calls via accumulator register

2014-05-28 Thread Kai Tietz
- Original Message - > On 05/28/14 11:22, Richard Henderson wrote: > > On 05/28/2014 01:43 AM, Kai Tietz wrote: > >> + if (GET_CODE (op) == CONST) > >> +op = XEXP (op, 0); > >> + return (GET_CODE (op) == SYMBOL_REF || CONSTANT_P (op)); > &

Re: [patch i386]: Expand sibling-tail-calls via accumulator register

2014-05-28 Thread Kai Tietz
- Original Message - > On Wed, May 28, 2014 at 03:54:58PM -0600, Jeff Law wrote: > > >Why not get rid of all the above 4 lines and just keep: > > > > > >> return CONSTANT_P (op); > > > > > >? CONST matches CONSTANT_P, and what is inside of CONST should be > > >fine, and (plus (symbol_ref

Re: [patch i386]: Expand sibling-tail-calls via accumulator register

2014-05-30 Thread Kai Tietz
So, completed bootstrap and regression-test for x86_64-unknown-linux-gnu (multilib) by using following predicate for sibcall-patch. (define_predicate "sibcall_memory_operand" (match_operand 0 "memory_operand") { return CONSTANT_P (op); }) Worked fine, no regressions. Is sibcall-patch ok wi

Re: [patch i386]: Expand sibling-tail-calls via accumulator register

2014-05-30 Thread Kai Tietz
- Original Message - > On 05/30/2014 01:08 AM, Kai Tietz wrote: > > (define_predicate "sibcall_memory_operand" > > (match_operand 0 "memory_operand") > > { > > return CONSTANT_P (op); > > }) > > Surely that always returns fals

[patch cygwin64]: Fix building *-*-cygwin* target cross-compilers

2014-01-27 Thread Kai Tietz
Hi, I will apply following patch soon, if there aren't any objection. gcc/ChangeLog: 2014-01-27 Kai Tietz * config/i386/cygwin-stdint.h (INT64_TYPE): Make dependent on target architecture instead of host. (UINT64_TYPE, INT_LEAST64_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64

[patch c++]: Fix pr/58835 [4.7/4.8/4.9 Regression] ICE with __PRETTY_FUNCTION__ in broken function

2014-02-11 Thread Kai Tietz
Hi, the following patch adds missing handling of error_mark_node result of fname_decl within finish_fname. ChangeLog 2014-02-11 Kai Tietz PR c++/58835 * semantics.c (finish_fname): Handle error_mark_node. Regression tested for x86_64-unknown-linux-gnu, i686-w64-mingw32. Ok

Re: [patch c++]: Fix pr/58835 [4.7/4.8/4.9 Regression] ICE with __PRETTY_FUNCTION__ in broken function

2014-02-13 Thread Kai Tietz
Ping - Original Message - > Hi, > > the following patch adds missing handling of error_mark_node result of > fname_decl within finish_fname. > > ChangeLog > > 2014-02-11 Kai Tietz > > PR c++/58835 > * semantics.c (fini

[patch i386]: Fix PR/60193

2014-02-14 Thread Kai Tietz
Hi, ChangeLog 2014-02-14 Kai Tietz PR target/60193 * config/i386/i386.c (ix86_expand_prologue): Use rax register as displacement for restoring %r10, %eax. Regression-tested for x86_64-unknown-linux-gnu, and x86_64-w64-mingw32, and i686-w64-mingw32. Ok for apply? Regards, Kai

Re: [patch i386]: Fix PR/60193

2014-02-14 Thread Kai Tietz
2014-02-14 13:55 GMT+01:00 Uros Bizjak : > Hello! > >> 2014-02-14 Kai Tietz >> >> PR target/60193 >> * config/i386/i386.c (ix86_expand_prologue): Use >> rax register as displacement for restoring %r10, %eax. >> >> Regression-tested

Re: [patch i386]: Fix PR/60193

2014-02-14 Thread Kai Tietz
So, here is the asked more complex variant regarding displacement-value-range of amd64-instruction and taking care that we use constant-offsets instead of register-based displacement addressing if possible. ChangeLog 2014-02-14 Kai Tietz PR target/60193 * config/i386/i386.c

Re: [patch i386]: Fix PR/60193

2014-02-14 Thread Kai Tietz
2014-02-14 15:40 GMT+01:00 Uros Bizjak : > On Fri, Feb 14, 2014 at 2:48 PM, Kai Tietz wrote: >> 2014-02-14 13:55 GMT+01:00 Uros Bizjak : >>> Hello! >>> >>>> 2014-02-14 Kai Tietz >>>> >>>> PR target/60193 >>>>

Re: [patch i386]: Fix PR/60193

2014-02-14 Thread Kai Tietz
Hi, Adjusted my original testcase so that eax isn't redeclared and shadows. Additional moved initialization of eax_live up. ChangeLog 2014-02-14 Kai Tietz PR target/60193 * config/i386/i386.c (ix86_expand_prologue): Use rax register as displacement for restoring %r10,

Re: [patch i386]: Fix PR/60193

2014-02-14 Thread Kai Tietz
2014-02-14 16:20 GMT+01:00 Richard Henderson : > On 02/14/2014 06:41 AM, Kai Tietz wrote: >> + else >> +{ >> + t = plus_constant (Pmode, eax, UNITS_PER_WORD); >> + emit_move_insn (eax, t); >> + t = gen_rtx_PL

Re: [PATCH] Fixing SEH exceptions for languages != C++

2014-02-18 Thread Kai Tietz
2014-02-17 12:22 GMT+01:00 Jonathan Schleifer : > Am 16.02.2014 um 16:47 schrieb Mike Stump : > >> On Feb 15, 2014, at 9:27 AM, Jonathan Schleifer wrote: >>> The following patch fixes a bug in SEH exception handling that made it >>> crash with ObjC >> >> From an ObjC perspective, I'm fine with the

Re: [PATCH] Fixing SEH exceptions for languages != C++

2014-02-18 Thread Kai Tietz
2014-02-18 17:43 GMT+01:00 Jonathan Schleifer : > Am 18.02.2014 um 17:41 schrieb Kai Tietz : > >> Hi Mike, >> >> the patch is reasonable, and my testings haven't shown any >> regressions. So from that POV patch would be ok. >> Nevertheless it would be good

Re: [patch c++]: Fix pr/58835 [4.7/4.8/4.9 Regression] ICE with __PRETTY_FUNCTION__ in broken function

2014-02-19 Thread Kai Tietz
Ping? 2014-02-11 15:11 GMT+01:00 Kai Tietz : > Hi, > > the following patch adds missing handling of error_mark_node result of > fname_decl within finish_fname. > > ChangeLog > > 2014-02-11 Kai Tietz > > PR c++/58835 > * semantics.c (fini

[patch c++]: Fix PR/58873 [4.7/4.8/4.9 Regression] [c++11] ICE with __underlying_type for broken enum

2014-02-20 Thread Kai Tietz
Hi, Issue here is that the argument type gets NULL for function-call of cp_parser_functional_cast. This invalid type is the result of cp_parser_simple_type_specifier call. 2014-02-20 Kai Tietz PR c++/58873 * parser.c (cp_parser_functional_cast): Treat NULL_TREE valued type

Re: [PATCH] Fixing SEH exceptions for languages != C++

2014-02-26 Thread Kai Tietz
Hello Jonathan, 2014-02-20 20:19 GMT+01:00 Jonathan Schleifer : > There is also definitely a use-after-free if you call _Unwind_DeleteException > in your personality before returning _URC_INSTALL_CONTEXT (which you should, > if you don't want to leak and your landing pad doesn't call it). I'm no

Re: [cygming] make sure libgcc logic is consistent

2014-07-24 Thread Kai Tietz
Hello DJ, sorry for late reply. Patch is ok. Please apply. Thanks, Kai - Original Message - > > This patch changes the logic in "crtbegin" that looks for libgcc.dll > such that the test is only done once, guaranteeing consistent results > between the register and deregister cases. > >

{patch cp]: Disable hidden-inlines for pe-coff targets

2014-08-04 Thread Kai Tietz
Hi, This patch makes sure that visibility-option for hidden-inlines doesn't show any effect for pe-coff as for those targets no concept of hidden-visiblitly isn't present. ChangeLog 2014-08-04 Kai Tietz * decl2.c (determine_hidden_inline): Always fail for PE-COFF as t

[patch cp]: Check for keep-inline-dllexport that we are operating on true inlines

2014-08-04 Thread Kai Tietz
Hi, This patch makes sure that we check for flag keep-inline-dllexport that we operate on true inlines as we do it for keep-inline-functions. ChangeLog 2014-08-04 Kai Tietz * semantics.c (expand_or_defer_fn_1): Check for keep-inline-dllexport that we operate on a true inline

[patch testsuite]: Correct testcase for LLP64 targets

2014-03-17 Thread Kai Tietz
Hi, this patch corrects a regression seen in gcc.c-torture/compile/20010327-1.c for LLP64 targets. ChangeLog 2013-03-17 Kai Tietz * gcc.c-torture/compile/20010327-1.c: Adjust testcase for LLP64 targets. Ok for apply? Regards, Kai Index: gcc.c-torture/compile/20010327-1.c

Re: [patch testsuite]: Correct testcase for LLP64 targets

2014-03-17 Thread Kai Tietz
2014-03-17 10:53 GMT+01:00 Jakub Jelinek : > On Mon, Mar 17, 2014 at 10:50:35AM +0100, Rainer Orth wrote: >> Hi Kai, >> >> > Index: gcc.c-torture/compile/20010327-1.c >> > === >> > --- gcc.c-torture/compile/20010327-1.c(Revision 20

Re: [patch testsuite]: Correct testcase for LLP64 targets

2014-03-17 Thread Kai Tietz
Sorry, I repost last patch with small correction in dg-do directive. The ! in there needs additional framing, and I missed the target keyword. Regards, Kai Index: 20010327-1.c === --- 20010327-1.c(Revision 208594) +++ 20010327-1

[patch testsuite]: Fix some mingw testcases in gcc.dg

2014-03-17 Thread Kai Tietz
Hello, this patch fixes some regressions introduced by default-option -fms-extensions for mingw-targets. ChangeLog 2014-03-17 Kai Tietz * anon-struct-1.c: Add -fno-ms-extensions option for mingw targets. * anon-struct-11.c: Likewise. * anon-struct-2.c: Likewise. * c11-anon

Re: [patch testsuite]: Fix some mingw testcases in gcc.dg

2014-03-17 Thread Kai Tietz
hile this may be obvious to > you, it's often not so to reviewers. I did. "The regressions in testsuite are introduced by turning on the state of -fms-extensions." That all, and not more to tell. >> ChangeLog >> >> 2014-03-17 Kai Tietz >> >

[patch sdbout]: Fix PR rtl-optimization/56356

2014-03-18 Thread Kai Tietz
Hi, this patch fixes an ICE regarding COFF-debugging information. Problem is that the parms isn't necessarily an incoming argument, and not necessarily already set. By checking this - as done already in dbxout - we can avoid to process on invalid parm-declarations. ChangeLog 2014-03-18

[patch testsuite]: g++.dg/abi

2014-03-18 Thread Kai Tietz
on2.C -std=c++1y scan-assembler .weak(_definition)?[ \t]_?_ZN2N11D1C3fn1ENS0_1BE FAIL: g++.dg/abi/anon2.C -std=c++1y scan-assembler .weak(_definition)?[ \t]_?_ZN2N11D1C3fn2ES1_ ... ChangeLog 2014-03-18 Kai Tietz * g++.dg/abi/anon2.C: Skip for mingw targets. * g++.dg/abi/an

Re: [patch sdbout]: Fix PR rtl-optimization/56356

2014-03-18 Thread Kai Tietz
Patch got approved in bug-report for trunk. Applied at revision 208663 to trunk. Kai

Re: [patch testsuite]: g++.dg/abi

2014-03-19 Thread Kai Tietz
2014-03-19 17:23 GMT+01:00 Mike Stump : > On Mar 18, 2014, at 6:16 AM, Kai Tietz wrote: >> this patch skips anon2.C and anon3.C test for mingw target. Issue >> here is that weak under pe-coff is different to ELF-targets and >> therefore test doesn't apply for > &g

Re: [patch testsuite]: g++.dg/abi

2014-03-19 Thread Kai Tietz
2014-03-19 18:37 GMT+01:00 Joseph S. Myers : > On Wed, 19 Mar 2014, Kai Tietz wrote: > >> The concept of weak - as present in ELF - isn't known in COFF in >> general. There is some weak, but it works only for static library and >> in a limitted way. Therefore we can&

Re: [patch testsuite]: g++.dg/abi

2014-03-19 Thread Kai Tietz
2014-03-19 17:54 GMT+01:00 Mike Stump : > On Mar 19, 2014, at 9:49 AM, Rainer Orth > wrote: >>> The concept of weak - as present in ELF - isn't known in COFF in >>> general. There is some weak, but it works only for static library and >>> in a limitted way. Therefore we can't (and don't) use it

Re: [PATCH 1/2] Windows libibery: Don't quote args unnecessarily

2014-04-19 Thread Kai Tietz
Hello Ray, Patches to libiberty need to be cross-posted to binutils, gdb, and gcc ML. I did so for you now. - Original Message - > We only quote arguments that contain spaces, \n \t \v > or " characters to prevent wasting 2 characters per > argument of the CreateProcess() 32,768 limit.

Re: [PATCH 2/2] Windows libcpp: Make path-exists semantics more Posix-like

2014-04-19 Thread Kai Tietz
Hello Ray, - Original Message - > Windows does a short-circuit lookup of paths containing > ../ which means that: > > exists/doesnotexist/../file > > is considered to exist, while on Posix it is considered > not to. The Posix semantics are relied upon when building > glibc so any paths c

Re: RFA: x86 backend: Add default-manifest to Cygwin/MinGW links

2014-04-23 Thread Kai Tietz
Hello Nick, 2014-04-23 10:53 GMT+02:00 Nick Clifton : > Hi Guys, > > Please could I have permission to apply the patch below ? Ideally for > both mainline and the 4.9 branch. > > The patch adds a file called "default-manifest.o" to the end of a > final link command line for the Cygwin and

Re: RFA: x86 backend: Add default-manifest to Cygwin/MinGW links

2014-04-23 Thread Kai Tietz
2014-04-23 11:06 GMT+02:00 Nicholas Clifton : > Hi Kai, > > >>>The default manifest file contains a resource section (.rsrc) holding >>>information necessary for the binary to be run under Windows 8. It is >>>placed last on the linker command line so that a user provided >>>manifes

[patch c/c++]: Fix for PR c/52991 issue about ignored packed-attribute for ms-structure-layout

2012-12-11 Thread Kai Tietz
Hello, This fixes an old regression about ms-structure-layout in combination with packed-attribute. ChangeLog 2012-12-11 Kai Tietz PR c/52991 * stor-layout.c (start_record_layout): Handle packed-attribute for ms-structure-layout. (update_alignment_for_field

Re: [patch c/c++]: Fix for PR c/52991 issue about ignored packed-attribute for ms-structure-layout

2012-12-12 Thread Kai Tietz
2012/12/12 Richard Biener : > On Wed, Dec 12, 2012 at 4:11 PM, Richard Henderson wrote: >> On 12/12/2012 02:57 AM, Richard Biener wrote: >>> That looks wrong. Having both TYPE_PACKED and TYPE_ALIGN != BITS_PER_UNIT >>> is inconsistent, so this part of the patch should not be necessary. >> >> No,

Re: [patch c/c++]: Fix for PR c/52991 issue about ignored packed-attribute for ms-structure-layout

2012-12-12 Thread Kai Tietz
Hi, I added two testcases to this patch. So that we might detect regressions about this issue later more easily. 2012-12-12 Kai Tietz PR c/52991 * stor-layout.c (start_record_layout): Handle packed-attribute for ms-structure-layout. (update_alignment_for_field

Re: [patch c/c++]: Fix for PR c/52991 issue about ignored packed-attribute for ms-structure-layout

2012-12-13 Thread Kai Tietz
enforces unaligned accesses due it tries to save memory-use. If an user alignment is present the packing can just happen on last member for struct, as otherwise the alignment has to be applied and padding happens. But I agree that I didn't intended to change sysv_abi here by this

[patch libstdc++]: Fix LLP64 pointer-size issues for cxxabi, eh_alloc, and hash_bytes

2012-12-21 Thread Kai Tietz
Hello, this patch fixes some remaining issues with pointer-sizes for llp64 abi in libstdc++. ChangeLog 2012-12-21 Kai Tietz * config/os/mingw32/os_defines.h (_GLIBCXX_LLP64): Define if llp64 abi is used. * config/os/mingw32-w64/os_defines.h: Likewise. * libsupc

Re: [patch libstdc++]: Fix LLP64 pointer-size issues for cxxabi, eh_alloc, and hash_bytes

2012-12-21 Thread Kai Tietz
2012/12/21 Paolo Carlini : > Hi, > > > On 12/21/2012 08:59 AM, Kai Tietz wrote: >> >> Index: libsupc++/cxxabi.h >> === >> --- libsupc++/cxxabi.h (Revision 194655) >> +++ libsupc++/cx

Re: [patch libstdc++]: Fix LLP64 pointer-size issues for cxxabi, eh_alloc, and hash_bytes

2012-12-21 Thread Kai Tietz
2012/12/21 Paolo Carlini : > Hi, > > > On 12/21/2012 10:16 AM, Kai Tietz wrote: >> >> Well, I thought it is always present for gcc due gstdint.h header, > > As far as I know, that project isn't finished yet, there are still targets > which neither provide

Re: [patch libstdc++]: Fix LLP64 pointer-size issues for cxxabi, eh_alloc, and hash_bytes

2012-12-21 Thread Kai Tietz
2012/12/21 Paolo Carlini : > On 12/21/2012 10:36 AM, Kai Tietz wrote: >> >> well, issue isn't that 'long' is always 'ptrdiff_t'. > > But then, if we just change the type without paying attention to size (and > alignment) aren't we looking for

Re: [patch libstdc++]: Fix LLP64 pointer-size issues for cxxabi, eh_alloc, and hash_bytes

2012-12-21 Thread Kai Tietz
Hello, I changed type in __base_class_type_info to wide-enough type only for llp64 target. By this we have no (new) side-effects to other targets. ChangeLog 2012-12-21 Kai Tietz * config/os/mingw32/os_defines.h (_GLIBCXX_LLP64): Define if llp64 abi is used. * config/os

Re: [patch libstdc++]: Fix LLP64 pointer-size issues for cxxabi, eh_alloc, and hash_bytes

2012-12-21 Thread Kai Tietz
2012/12/21 Uros Bizjak : > Hello! > >> 2012-12-21 Kai Tietz >> >> * config/os/mingw32/os_defines.h (_GLIBCXX_LLP64): Define if llp64 >> abi is used. >> * config/os/mingw32-w64/os_defines.h: Likewise. >> * libsupc++/cxxabi.h (__base

[patch c++]: Fix type_info struct for llp64 targets

2012-12-21 Thread Kai Tietz
f 'long long' type's size, if pointer is larger then scalar-size of 'long' type. ChangeLog 2012-12-21 Kai Tietz * rtti.c (LONGPTR_T): New helper-macro. (get_pseudo_ti_init): Initialize offset_type by LONGPTR_T type instead of 'long' ty

Re: [patch libstdc++]: Fix LLP64 pointer-size issues for cxxabi, eh_alloc, and hash_bytes

2012-12-21 Thread Kai Tietz
2012/12/21 Gabriel Dos Reis : > On Fri, Dec 21, 2012 at 3:48 AM, Kai Tietz wrote: >> 2012/12/21 Paolo Carlini : >>> On 12/21/2012 10:36 AM, Kai Tietz wrote: >>>> >>>> well, issue isn't that 'long' is always 'ptrdiff_t'. >>&g

Re: [patch c++]: Fix type_info struct for llp64 targets

2012-12-27 Thread Kai Tietz
Ping 2012/12/21 Kai Tietz : > Hello, > > this patch fixes the layout of the info_type-s for llp64 target. We > used here 'long' type instead > of pointer-scalar-witdth type. That's an issue for llp64 targets. > I introduced for that the LONGPTR_T helper-macro,

Re: [PATCH]: Fix for PR 55707 bootstrap fails in gcc/graphite-dependences.c error cast loses precision

2013-01-03 Thread Kai Tietz
Hi Rainer, applied at rev 194859. Thanks, Kai

[patch libbacktrace]: Fix undeclared-symbols warning for SjLj-targets

2013-01-18 Thread Kai Tietz
Hi, this patch cleans up a undeclared-symbol issue in libbacktrace. ChangeLog 2013-01-18 Kai Tietz * backtrace.c (_Unwind_GetIPInfo): Add prototype. * simple.c (_Unwind_GetIPInfo): Likewise. Tested for x86_64-w64-mingw32, and i686-w64-mingw32. Ok for apply? Kai Index

[patch libstdc++]: Fix tests trying to override symbols in shared-library for mingw targets

2013-01-18 Thread Kai Tietz
Hi, this patch addresses some of libstdc++'s testsuite regressions on pe-coff targets due none-overridable symbols in DLL files. ChangeLog * 18_support/50594.cc: Force use of static libstdc++ for mingw targets. * 19_diagnostics/error_category/operators/equal.cc: Likewise.

Re: [patch libbacktrace]: Fix undeclared-symbols warning for SjLj-targets

2013-01-18 Thread Kai Tietz
013/1/18 Jakub Jelinek : > On Fri, Jan 18, 2013 at 11:05:11AM +0100, Kai Tietz wrote: >> this patch cleans up a undeclared-symbol issue in libbacktrace. > > It is prototyped in unwind.h, at least should be. > >> 2013-01-18 Kai Tietz >> >> * backt

Re: [patch libstdc++]: Fix tests trying to override symbols in shared-library for mingw targets

2013-01-18 Thread Kai Tietz
2013/1/18 Jonathan Wakely : > On 18 January 2013 10:17, Kai Tietz wrote: >> Hi, >> >> this patch addresses some of libstdc++'s testsuite regressions on >> pe-coff targets due none-overridable symbols in DLL files. >> ChangeLog >> >> * 18_s

[patch libiberty's include]: Fixes PR 39064 and partial PR 54620

2013-01-30 Thread Kai Tietz
Hi, this patch fixes for targets with sys/types.h the issue that wrong assumptions about pointer-sizes are used. Instead it uses uintptr_t/intptr_t. ChangeLog /include 2013-01-30 Kai Tietz PR other/54620 PR target/39064 * md5.h: Include sys/types.h if

Re: [patch libiberty's include]: Fixes PR 39064 and partial PR 54620

2013-01-30 Thread Kai Tietz
2013/1/30 Ian Lance Taylor : > On Wed, Jan 30, 2013 at 2:53 AM, Kai Tietz wrote: >> >> this patch fixes for targets with sys/types.h the issue that wrong >> assumptions about pointer-sizes are used. >> Instead it uses uintptr_t/intptr_t. >> >> ChangeL

Re: [patch libiberty's include]: Fixes PR 39064 and partial PR 54620

2013-01-30 Thread Kai Tietz
Hmm, I see ... so we need an new condition. Is it ok to apply? Thanks, Kai Index: md5.h === --- md5.h (Revision 195572) +++ md5.h (Arbeitskopie) @@ -40,6 +40,11 @@ # include typedef u_int32_t md5_uint32; typedef uin

[patch libiberty]: Fix PR 543413

2013-01-30 Thread Kai Tietz
Hi, this patch fixes wrong handling of cases that bitness of size_t is wider as 32-bit. ChangeLog 2013-01-30 Kai Tietz PR other/543413 * md5.c (md5_process_block): Handle case that size_t is a wider-integer-scalar a 32-bit unsigned integer. Tested for x86_64

[patch libiberty]: Fix PR 54620

2013-01-30 Thread Kai Tietz
Hi, this patch fixes wrong handling of cases that bitness of size_t is wider as 32-bit. ChangeLog 2013-01-30 Kai Tietz PR other/54620 * sha1.c (sha1_process_block): Handle case that size_t is a wider-integer-scalar as a 32-bit unsigned integer. Tested for x86_64

[patch libiberty]: Fix PR 53285 on 4.7 branch

2013-01-30 Thread Kai Tietz
Hi, this patch backports a fix from trunk ChangeLog 2013-01-30 Kai Tietz 2012-07-31 Mike Frysinger Merged from trunk. PR other/53285 * md5.c (md5_finish_ctx): Declare swap_bytes. Assign SWAP() output to swap_bytes, and then call memcpy to move it

Re: [patch libiberty]: Fix PR 543413

2013-01-31 Thread Kai Tietz
2013/1/31 Rainer Orth : > Kai Tietz writes: > >> this patch fixes wrong handling of cases that bitness of size_t is >> wider as 32-bit. >> >> ChangeLog >> >> 2013-01-30 Kai Tietz >> >> PR other/543413 > >

[patch i386]: Fix PR target/56186

2013-02-04 Thread Kai Tietz
Hello, this patch fixes reported regression about 128-bit return-type for x64 ABI. ChangeLog 2013-02-04 Kai Tietz PR target/56186 * i386.c (function_value_64): Add additional valtype argument and improve checking of return-argument types for 16-byte modes

Re: [patch i386]: Fix PR target/56186

2013-02-04 Thread Kai Tietz
2013/2/4 Jakub Jelinek : > On Mon, Feb 04, 2013 at 02:38:23PM +0100, Kai Tietz wrote: >> Tested for x86_64-w64-mingw32, and for x86_64-unknown-linux-gnu. Ok for >> apply? > > Please make sure to also test with a 4.7 based compiler (assuming > it is gcc47 and g

Re: [PATCH] Port Jason's r195550 varasm.c change also to mingw/cygwin/solaris private copies (PR libstdc++/54314)

2013-02-04 Thread Kai Tietz
2013/2/4 Jakub Jelinek : > Hi! > > In http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=195550 > Jason changed the default assemble_visibility target hook to avoid > complaining on DECL_ARTIFICIAL decls, even when they have some visibility > set (the C++ FE now sets visibility of construction vtable

[patch libada]: PR target/52122

2013-02-06 Thread Kai Tietz
Hi, this patch fixes an issue about recursice LN_S for mingw-host. The issue was already addressed by autotools, but an upgrade of version isn't suitable right now. For further information see the bug-report PR 52122. ChangeLog libada/ PR target/52122 * Makefile.in (LN_S_RECUSIV

Re: [PATCH, bootstrap]: Fix PR56227, bootstrap failure on MinGW.

2013-02-07 Thread Kai Tietz
2013/2/7 Uros Bizjak : > Hello! > > Attached (trivial) patch substitutes a bunch of "ll" conversion types > with HOST_LONG_LONG_FORMAT defines. Additionally, it fixes wrong usage > of HOST_WIDE_INT_PRINT_HEX_PURE in the argument of internal_error. > > The patch reportedly fixes bootstrap failures o

Re: [patch tree-optimization]: Improve handling of conditional-branches on targets with high branch costs

2011-10-17 Thread Kai Tietz
2011/10/17 Richard Guenther : > On Fri, Oct 14, 2011 at 9:43 PM, Kai Tietz wrote: >> Hello, >> >> So I committed the gimplify patch separate.  And here is the remaining >> fold-const patch. >> The important tests here are in gcc.dg/tree-ssa/builtin-expect[1-4].

Re: [patch tree-optimization]: Improve handling of conditional-branches on targets with high branch costs

2011-10-17 Thread Kai Tietz
2011/10/17 Richard Guenther : > On Mon, Oct 17, 2011 at 12:59 PM, Kai Tietz wrote: >> 2011/10/17 Richard Guenther : >>> On Fri, Oct 14, 2011 at 9:43 PM, Kai Tietz wrote: >>>> Hello, >>>> >>>> So I committed the gimplify patch separate.  And

Re: [patch tree-optimization]: Improve handling of conditional-branches on targets with high branch costs

2011-10-17 Thread Kai Tietz
Ok, I see. This might be profitable to do that. So fold_truth_op hunk looks like this @@ -5149,13 +5176,6 @@ fold_truthop (location_t loc, enum tree_ build2 (BIT_IOR_EXPR, TREE_TYPE (ll_arg), ll_arg, rl_arg),

Re: [patch tree-optimization]: Improve handling of conditional-branches on targets with high branch costs

2011-10-17 Thread Kai Tietz
Sure, Is simplier and also handles (A T[-IF] (B T-IF C) -> (A T B) T-IF C case, which can happen by framing in conditions. @@ -8380,13 +8400,65 @@ fold_truth_andor (location_t loc, enum t lhs is another similar operation, try to merge its rhs with our rhs. Then try to merge our lhs a

[patch testsuite]: Adjust tree-ssa/builtin-expect-*.c tests for high cost-branching optimization

2011-10-18 Thread Kai Tietz
Hello, this patch adjusts __builtin_expect tests in tree-ssa so, that short-circuit branch optimization don't lead to fallout. I've used here a multiplication, as simple substraction/addition might get optimized away. ChangeLog 2011-10-18 Kai Tietz * gcc.dg/tree-s

Re: [patch testsuite]: Adjust tree-ssa/builtin-expect-*.c tests for high cost-branching optimization

2011-10-18 Thread Kai Tietz
- Original Message - From: "Kai Tietz" To: gcc-patches@gcc.gnu.org Cc: "Richard Guenther" Sent: Tuesday, October 18, 2011 1:33:17 PM Subject: [patch testsuite]: Adjust tree-ssa/builtin-expect-*.c tests for high cost-branching optimization Hello, this patch adju

[patch tree-optimization]: allow branch-cost optimization for truth-and/or on mode-expanded simple boolean-operands

2011-10-20 Thread Kai Tietz
-cost optimization for IA-architecture and two for explicit checking for boolean-type. ChangeLog 2011-10-20 Kai Tietz * fold-const.c (simple_operand_p_2): Handle integral casts from boolean-operands. 2011-10-20 Kai Tietz * gcc.target/i386/branch-cost1.c: New test

Re: [patch tree-optimization]: allow branch-cost optimization for truth-and/or on mode-expanded simple boolean-operands

2011-10-21 Thread Kai Tietz
2011/10/21 Richard Guenther : > On Thu, Oct 20, 2011 at 3:08 PM, Kai Tietz wrote: >> Hello, >> >> this patch re-enables the branch-cost optimization on simple boolean-typed >> operands, which are casted to a wider integral type.  This happens due casts >> fr

Re: [Qemu-devel] gcc auto-omit-frame-pointer vs msvc longjmp

2011-10-24 Thread Kai Tietz
2011/10/24 Richard Henderson : > On 10/24/2011 09:18 AM, Kai Tietz wrote: >> A possible patch for 4.6 gcc versions I attached to this mail. > > ... > >> +/* For 32-bit Windows we need valid frame-pointer for function using >> +   setjmp.  */ >> +#define

Re: [Qemu-devel] gcc auto-omit-frame-pointer vs msvc longjmp

2011-10-25 Thread Kai Tietz
Applied a fix to trunk at rev. 180423 and to 4.6.x branch at rev. 180422. Regards, Kai

Re: [patch tree-optimization]: Improve handling of conditional-branches on targets with high branch costs

2011-10-26 Thread Kai Tietz
2011/10/26 Jiangning Liu : > > >> -Original Message- >> From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- >> ow...@gcc.gnu.org] On Behalf Of Michael Matz >> Sent: Tuesday, October 11, 2011 10:45 PM >> To: Kai Tietz >> Cc: Richard Guenther; K

Re: [patch tree-optimization]: Improve handling of conditional-branches on targets with high branch costs

2011-10-26 Thread Kai Tietz
2011/10/26 Michael Matz : > Hi, > > On Wed, 26 Oct 2011, Kai Tietz wrote: > >> > Yes, this part introduced different behavior for this small case, >> > >> > int f(char *i, int j) >> > { >> >        if (*i && j!=2) >> &g

Re: [patch tree-optimization]: Improve handling of conditional-branches on targets with high branch costs

2011-10-26 Thread Kai Tietz
I describe the sample more closely here extern int global = 0; extern int *a = NULL; void catchSigSegV( int sig ) { a = &global; } int foo (int j) { signal (SIGSEGV, catchSigSegV); if (*a && global) return 2; return 0; } I admit that in most cases such a scenario is not common. This samp

Re: [patch tree-optimization]: Improve handling of conditional-branches on targets with high branch costs

2011-10-26 Thread Kai Tietz
2011/10/26 Michael Matz : > Hi, > > On Wed, 26 Oct 2011, Kai Tietz wrote: > >> >> > int f(char *i, int j) >> >> > { >> >> >        if (*i && j!=2) >> >> >                return *i; >> >> >        el

Re: [patch tree-optimization]: Improve handling of conditional-branches on targets with high branch costs

2011-10-26 Thread Kai Tietz
2011/10/26 Michael Matz : > Hi, > > On Wed, 26 Oct 2011, Kai Tietz wrote: > >> well, if such a function is used as inline and we know for it that j has >> value != 2, then we have here a big difference.  For your first example, >> we still have to do the memory ac

Re: Fix gcc.dg/tls/thr-cse-1.c for MinGW target

2011-10-26 Thread Kai Tietz
Hi, patch looks fine for mingw 32-bit. With a small nit new test passes for 64-bit mingw version, too. The cygwin-part looks like the mingw one. 2011/10/26 Joseph S. Myers : > gcc.dg/tls/thr-cse-1.c tests that there are not two calls to > __emutls_get_address in the output.  Normally this just

Re: Fix gcc.dg/graphite/run-id-1.c for Windows targets

2011-10-26 Thread Kai Tietz
2011/10/26 Joseph S. Myers : > The test gcc.dg/graphite/run-id-1.c requires more stack space than > Windows targets provide by default.  This patch arranges for the > appropriate -Wl,--stack option (as in config/mh-mingw and > config/mh-cygwin) to be used by this test on those targets.  Tested > wi

Re: [patch tree-optimization]: Improve handling of conditional-branches on targets with high branch costs

2011-10-27 Thread Kai Tietz
2011/10/27 Jiangning Liu : > > >> -Original Message- >> From: Michael Matz [mailto:m...@suse.de] >> Sent: Wednesday, October 26, 2011 11:47 PM >> To: Kai Tietz >> Cc: Jiangning Liu; Richard Guenther; Kai Tietz; gcc-patches@gcc.gnu.org; >> Ric

Many testsuite failures on x86_64 due recent "fix" about f16cintrin.h header

2011-11-06 Thread Kai Tietz
Hi, In ChangeLog is mentioned a change to config/config.gcc, which doesn't exist. I assume the change is meant for config.gcc within gcc/ folder, but also for this file no change was applied. By this f16cintrin.h header isn't installed at all. Cuprit patch is: 2011-11-05 Quentin Neill

[patch tree-optimization 1/2]: Branch-cost optimizations

2011-11-06 Thread Kai Tietz
x27;s testsuite. This are unit-pred-6_b and uniit-pred-6_c testcases. Those failures are caused by jump-threading optimization in vrp, as vrp-pass. Those failures could be fixed by the second patch, if we would move the ifcombine pass before the first vrp pass. ChangeLog 2011-11-06 Kai

[patch tree-optimization 2/2]: Branch-cost optimizations

2011-11-06 Thread Kai Tietz
reassociation-pass can optimize on them. ChangeLog 2011-11-06 Kai Tietz * tree-ssa-ifcombine.c (remove_stmt_chain): New helper. (update_gimple_cond_condtion_from_tree): Likewise. (stmt_no_side_effects_p): Likewise. (bb_no_side_effects_p): Use stmt_no_side_effects_p

Re: [patch tree-optimization]: Fix for PR/49806

2011-11-07 Thread Kai Tietz
2011/8/1 Richard Guenther : > On Fri, Jul 29, 2011 at 2:07 PM, Kai Tietz wrote: >> Hello, >> >> this patch fixes regression of bug report PR middle-end/49806, which was >> caused due unhandled type-cast patterns reasoned by boolification of >> compares and typ

Re: [patch tree-optimization 1/2]: Branch-cost optimizations

2011-11-07 Thread Kai Tietz
2011/11/7 Richard Guenther : > On Sun, Nov 6, 2011 at 11:12 PM, Kai Tietz wrote: >> Hello, >> >> By this patch branch-cost optimization is moved from tree AST to cfgexpand >> from gimple to RTL.  By this we are able to do better optimization on >> conditionals s

Re: [patch tree-optimization 2/2]: Branch-cost optimizations

2011-11-07 Thread Kai Tietz
2011/11/7 Richard Guenther : > On Sun, Nov 6, 2011 at 11:17 PM, Kai Tietz wrote: >> Hello, >> >> the second patch extends the tree-ssa-ifcombine pass so, that it chains up >> simple if-and/or-if patterns via associative bitwise-and/or operations.   >> This al

Re: RFA: New pass to delete unexecutable paths in the CFG

2011-11-07 Thread Kai Tietz
2011/11/7 Richard Guenther : > On Mon, Nov 7, 2011 at 5:07 PM, Jeff Law wrote: >> -BEGIN PGP SIGNED MESSAGE- >> Hash: SHA1 >> >> >>> >>> I also wonder if instead of a new pass control-dependent DCE can be >>> taught of this? >> It could.   I'm not sure it really buys us anything except may

Re: [patch tree-optimization 1/2]: Branch-cost optimizations

2011-11-07 Thread Kai Tietz
2011/11/7 Jeff Law : > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > On 11/07/11 09:14, Richard Guenther wrote: > >>> >>> Well, not that I noticed that I missed here any freedom.  In >>> what cases you mean I would need here freedom to create new >>> ssa-statements? >> >> You lookup SSA_NAME_

Re: [patch tree-optimization 1/2]: Branch-cost optimizations

2011-11-08 Thread Kai Tietz
Hi, with not much hope that this patch gets into 4.7 version, resent revised version for the first part of patch. I updated the patch according to comments I got by matz on IRC yesterday. Patch uses now vector for collecting truth &/|'s conditional chain. Additionally it checks now consisten

Re: [patch tree-optimization 1/2]: Branch-cost optimizations

2011-11-09 Thread Kai Tietz
2011/11/9 Jeff Law : > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > On 11/07/11 15:36, Richard Guenther wrote: > >> >> Yes.  tree-affine does this for a sum of expressions of the form a >> + b * c. It collects such sum, optimizes it (and you can >> add/subtract or scale these things) and re-

<    1   2   3   4   5   6   7   8   9   >