Re: [PATCH] Fix static libasan link

2013-11-18 Thread Yury Gribov
> Ok with those changes. >Jakub Thanks. Committed revision 204934. -Y

Re: Revert libsanitizer patches or fix 59009

2013-11-18 Thread Kostya Serebryany
On Sat, Nov 16, 2013 at 7:59 AM, John David Anglin wrote: > As far as I can tell, libsanitizer works on hppa-linux. So, the change > could be added to the llvm tree. > However, I'm unlikely to test anything in the tree unless someone tells me > there's something to test. Submitted the hppa patch

Re: [patch][RFC] make lra.c:check_rtl set maybe_hot_insn_p

2013-11-18 Thread Yvan Roux
So, the validation is ok with this patch, I'm just not able to say if the original performance issue is still fixed with it. Could you check it Kyrylo ? Yvan 2013-11-17 Yvan Roux * config/arm/arm.md (store_minmaxsi): Use only when optimize_function_for_size_p. On 15 Novembe

Re: [PATCH, ARM, LRA] Fixed bootstrap failure in Thumb mode

2013-11-18 Thread Yvan Roux
Ping. On 7 November 2013 15:56, Yvan Roux wrote: > Hi, > > this patch fixed an LRA cycling due to secondary reload (Thumb mode). > Notice that this patch is a prerequisite to turn on LRA by default on > ARM. Bootstrapped on a9 and a15 without any regression in the > testsuite as LRA is off by de

[Patch, Fortran, OOP] PR 59143: Bogus warning with array-valued type-bound procedure

2013-11-18 Thread Janus Weil
Hi all, here is a straightforward patch to teach 'get_expr_storage_size' about type-bound procedures (which are handled internally as procedure-pointer components of the corresponding vtab). In that sense the patch should handle both TBPs as well as PPCs. Regtested on x86_64-unknown-linux-gnu. Ok

Re: [PATCH] PR ada/54040: [x32] Incorrect timeval and timespec

2013-11-18 Thread Arnaud Charlet
> Yes, it passed all tests with -m32, -mx32, -m64 on Linux/x86-64. > Installed on trunk. Is this OK to backport to 4.8 branch after > a few days? Actually there are two issues with your change: Using time_t for tv_nsec looks actually wrong, the definition on (my) linux is: struct timespec {

Re: [PATCH] PR ada/54040: [x32] Incorrect timeval and timespec

2013-11-18 Thread Arnaud Charlet
> Actually there are two issues with your change: > > Using time_t for tv_nsec looks actually wrong, the definition on (my) > linux is: > > struct timespec { > __kernel_time_t tv_sec; /* seconds */ > longtv_nsec;/* nanoseconds */ > }; >

Re: [0/10] Replace host_integerp and tree_low_cst

2013-11-18 Thread Richard Sandiford
Jeff Law writes: > On 11/16/13 05:53, Richard Sandiford wrote: >> After the patch that went in yesterday, all calls to host_integerp and >> tree_low_cst pass a constant "pos" argument. This series replaces each >> function with two separate ones: > [ ... ] > So I've almost entirely ignored the wh

Re: Pass floating point values on powerpc64 as per ABI

2013-11-18 Thread Andreas Schwab
Alan Modra writes: > diff -urp gcc3/libffi/testsuite/libffi.call/cls_double_va.c > gcc4/libffi/testsuite/libffi.call/cls_double_va.c > --- gcc3/libffi/testsuite/libffi.call/cls_double_va.c 2013-11-15 > 23:03:07.193964372 +1030 > +++ gcc4/libffi/testsuite/libffi.call/cls_double_va.c 2013-11-15

[AArch64] AArch64 SIMD Builtins Better Type Correctness.

2013-11-18 Thread James Greenhalgh
Hi, This patch adds infrastructure to allow us to model the correct types for the intrinsics in arm_neon.h. Thus far we have relied on ugly casts between data types, and treated every intrinsic as taking 'signed' vectors. So we have intrinsics in arm_neon.h which look like: uint32x4_t vaddw_hig

Re: [patch][RFC] make lra.c:check_rtl set maybe_hot_insn_p

2013-11-18 Thread Kyrill Tkachov
On 18/11/13 08:37, Yvan Roux wrote: So, the validation is ok with this patch, I'm just not able to say if the original performance issue is still fixed with it. Could you check it Kyrylo ? Hi Yvan, I'll run the benchmark today to confirm the performance, but from compiling some code sequences

Re: [patch][RFC] make lra.c:check_rtl set maybe_hot_insn_p

2013-11-18 Thread Yvan Roux
> Hi Yvan, > I'll run the benchmark today to confirm the performance, but from compiling > some code sequences that exhibited the bad behaviour in the past, I see that > this patch still fixes the issues. store_minmaxsi is not generated when > optimising for speed. Ok Cool, Thanks Kyrill Cheers,

RE: [PATCH, libgcc] Disable JCR section when java is not enabled

2013-11-18 Thread Joey Ye
Ping, as wasting 8 bytes of RAM isn't ignorable on embedded system. OK to trunk stage 1? > -Original Message- > From: Tom Tromey [mailto:tro...@redhat.com] > Sent: Thursday, October 10, 2013 21:32 > To: Jakub Jelinek > Cc: Joey Ye; p...@bothner.com; a...@redhat.com; H.J. Lu; gcc-patches;

Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support

2013-11-18 Thread Ilya Enkovich
Ping 2013/11/8 Ilya Enkovich : > Hi, > > Here is an updated patch version with no langhook. > > Regarding TLS objects issue - I do not think compiler should compensate the > absence of instrumentation in libraries. Compiler should be responsible for > initialization of Bounds Tables for .tdata

Re: [PATCH, MPX, 2/X] Pointers Checker [9/25] Bound constants

2013-11-18 Thread Ilya Enkovich
Ping 2013/11/7 Ilya Enkovich : > 2013/11/7 Jeff Law : >> On 10/31/13 03:15, Ilya Enkovich wrote: >>> >>> Hi, >>> >>> Here is a patch which adds support for bound constant to be used as >>> DECL_INITIAL for constant static bounds generated by compiler. >>> >>> Thanks, >>> Ilya >>> -- >>> >>> gcc/ >

Re: Some wide-int review comments

2013-11-18 Thread Richard Sandiford
Thanks for the changes. > @@ -8162,7 +8162,7 @@ fold_builtin_logarithm (location_t loc, > /* Prepare to do logN(exp10(exponent) -> exponent*logN(10). */ > { > REAL_VALUE_TYPE dconst10; > - real_from_integer (&dconst10, VOIDmode, 10, SIGNED); > +

[PATCH, MPX, 2/X] Pointers Checker [11/25] Expand builtins

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch to adopt some builtins expanding to Pointer Bounds Checker. Patch mostly disables inlining of instrumented calls to string function. Also adds support for _NOBND_NOCHK versions of string functions (this version does not check and copy bounds; therefore may be inlined as re

[Ada] Internal error on renaming of constant array with -gnatc

2013-11-18 Thread Eric Botcazou
This fixes an ICE on an obscure case with the -gnatc switch. Tested on x86_64-suse-linux, applied on the mainline. 2013-11-18 Eric Botcazou * gcc-interface/decl.c (gnat_to_gnu_entity) : Deal with an error mark as renamed object in type annotating mode. -- Eric BotcazouInde

[PATCH, MPX, 2/X] Pointers Checker [12/25] Expand bounded params

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch to expand bounded arguments for calls, input bounds for bounded params and returned bounds. Thanks, Ilya -- 2013-11-15 Ilya Enkovich * calls.c: Include tree-chkp.h, rtl-chkp.h. (arg_data): Add fields for bounds information and to store value pushed

[Ada] Fix unexpected read of volatile scalar for Out parameter

2013-11-18 Thread Eric Botcazou
This fixes an old issue in the compiler, whereby it unexpectedly generates a read of a volatile variable with scalar type passed as Out parameter to a subprogram; the subtlety being that the side-effects of the parameter viewed as a name still need to be evaluated prior to the call. Tested on x

Clean up LTO generation

2013-11-18 Thread Bernd Schmidt
I'm looking into using LTO to pass information between compilers for different targets, for the OpenACC implementation. This area of the compiler seems somewhat obfuscated by overengineering, and I'd like to simplify it first to make it easier to work with. lto_gimple_out and lto_finish_out aren't

Re: [PATCH GCC]Compute, cache and use cost of auto-increment rtx patterns in IVOPT

2013-11-18 Thread Bin.Cheng
Ping^2 Thanks, bin On Tue, Nov 12, 2013 at 3:08 PM, bin.cheng wrote: > Ping in this one. > Hi Bernd, could you please help us on this one? > Sorry for the inconvenience. > > Thanks, > bin > >> -Original Message- >> From: Bin.Cheng [mailto:amker.ch...@gmail.com] >> Sent: Monday, November

Re: [PATCH] Time profiler - phase 2

2013-11-18 Thread Jan Hubicka
> diff --git a/gcc/ChangeLog b/gcc/ChangeLog > index 5cb07b7..754f882 100644 > --- a/gcc/ChangeLog > +++ b/gcc/ChangeLog > @@ -1,3 +1,13 @@ > +2013-11-17 Martin Liska > + Jan Hubicka > + > + * cgraphunit.c (node_cmp): New function. > + (expand_all_functions): Function ordering

[Ada] Remove redundant define

2013-11-18 Thread Eric Botcazou
Tested on x86_64-suse-linux, applied on the mainline. 2013-11-18 Eric Botcazou * gcc-interface/trans.c (TARGET_ABI_OPEN_VMS): Delete as redundant. -- Eric BotcazouIndex: gcc-interface/trans.c === --- gcc-interface/tran

[PATCH, MPX, 2/X] Pointers Checker [13/25] Inline support

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch to add instumented code support in inliner. Main changes are: - Replace BUILT_IN_CHKP_ARG_BND calls in inlined code with actually passed bounds - Replace BUILT_IN_CHKP_BNDRET in caller with returned bounds - Add bounds copy for assignments generated by inliner Thanks,

[Ping, avr] Emit diagnostics if -f{pic,PIC,pie,PIE} or -shared is passed

2013-11-18 Thread Senthil Kumar Selvaraj
Ping! Regards Senthil On Mon, Nov 04, 2013 at 06:45:19PM +0530, Senthil Kumar Selvaraj wrote: > The AVR backend does not generate position independent code, yet it > happily accepts -fpic, -fPIC, -fpie and -fPIE. The generated code > doesn't change at all. Also, it accepts the -shared option to g

[PATCH, MPX, 2/X] Pointers Checker [14/25] Function splitting

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch to disable splitting when bounds transfer is required for splitted function. Thanks, Ilya -- 2013-11-13 Ilya Enkovich * ipa-split.c: Include tree-chkp.h. (consider_split): Do not split when splitted part needs bounds transfer. diff --git a/gcc/ip

[PATCH, MPX, 2/X] Pointers Checker [15/25] IPA Propagation

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch to disable propagation of bounded values. Thanks, Ilya -- 2013-11-13 Ilya Enkovich * ipa-prop.c: Include tree-chkp.h. (ipa_compute_jump_functions_for_edge): Do not propagate bounded args. diff --git a/gcc/ipa-prop.c b/gcc/ipa-prop.c index eb464e4..81e1237

RE: [PATCH] Fix C++0x memory model for -fno-strict-volatile-bitfields on ARM

2013-11-18 Thread Bernd Edlinger
Hi, On Fri, 15 Nov 2013 13:30:51, Richard Biener wrote: >> That looks like always pretending it is a bit field. >> But it is not a bit field, and bitregion_start=bitregion_end=0 >> means it is an ordinary value. > > I don't think it is supposed to mean that. It's supposed to mean > "the access is

[PATCH, MPX, 2/X] Pointers Checker [16/25] Tail recursion

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch to disable tail recursion transformation when bounds are passed by call. The reason is BUILT_IN_CHKP_ARG_BND which should always get default SSA_NAME of PARM_DECL as an argument. Thanks, Ilya -- 2013-11-15 Ilya Enkovich * tree-tailcall.c: Include tree-chkp.h.

[PATCH, MPX, 2/X] Pointers Checker [17/25] IPA SRA

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch remove bounded params from candidates for reduction. Thanks, Ilya -- 2013-11-15 Ilya Enkovich * tree-sra.c: Include tree-chkp.h. (find_param_candidates): Bounded param is not a candidate. diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c index d97af13.

Re: [1/10] Add tree_fits_shwi_p and tree_fits_uhwi_p

2013-11-18 Thread Richard Biener
On Sat, Nov 16, 2013 at 1:55 PM, Richard Sandiford wrote: > Add tree_fits_shwi_p and tree_fits_uhwi_p. The implementations are taken > directly from host_integerp. tree_ is a bit generic - you only ever return true for INTEGER_CSTs, so please use int_fits_[su]hwi_p please (mimicing int_fits_type

Re: [5/10] Add tree_to_shwi and tree_to_uhwi

2013-11-18 Thread Richard Biener
On Sat, Nov 16, 2013 at 2:03 PM, Richard Sandiford wrote: > Add tree_to_shwi and tree_to_uhwi. Initially tree_to_uhwi returns a > HOST_WIDE_INT, so that it's a direct replacement for tree_low_cst. > Patch 10 makes it return unsigned HOST_WIDE_INT instead. Possibly same naming issue (though we al

Re: [6/10] Mechanical replacement of tree_low_cst (..., 0)

2013-11-18 Thread Richard Biener
On Sat, Nov 16, 2013 at 2:05 PM, Richard Sandiford wrote: > Like patch 2, but using sed to replace "tree_low_cst (x, 0)" with > "tree_to_shwi (x)". Ok with whatever the naming bikeshedding arrives at. Richard. > Thanks, > Richard > > > gcc/c-family/ > * c-common.c, c-format.c, c-omp.c,

Re: [7/10] Mechanical replacement of tree_low_cst (..., 1)

2013-11-18 Thread Richard Biener
On Sat, Nov 16, 2013 at 2:06 PM, Richard Sandiford wrote: > Like the previous patch, but for tree_low_cst (x, 1) -> tree_to_uhwi_p (x). Same ok. Thanks, Richard. > Thanks, > Richard > > > gcc/ada/ > * gcc-interface/decl.c, gcc-interface/utils.c, gcc-interface/utils2.c: > Replace

Re: [9/10] Remove host_integerp and tree_low_cst

2013-11-18 Thread Richard Biener
On Sat, Nov 16, 2013 at 2:12 PM, Richard Sandiford wrote: > Remove the old functions, which are now unused. Ok. Thanks, Richard. > Thanks, > Richard > > > gcc/ > * tree.h (host_integerp, tree_low_cst): Delete. > * tree.c (host_integerp, tree_low_cst): Delete. > > Index: gcc/tree

[PATCH, MPX, 2/X] Pointers Checker [18/25] CCP (Stack store/restore)

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch to support BUILT_IN_CHKP_BNDRET and BUILT_IN_CHKP_BIND_BOUNDS in BUILT_IN_STACK_SAVE result uses. Thanks, Ilya -- 2013-11-15 Ilya Enkovich * tree-ssa-ccp.c (insert_clobber_before_stack_restore): Handle BUILT_IN_CHKP_BNDRET and BUILT_IN_CHKP_BIND_BOUNDS cal

Re: [8/10] Mop up remaining tree_low_cst calls

2013-11-18 Thread Richard Biener
On Sat, Nov 16, 2013 at 2:10 PM, Richard Sandiford wrote: > Handle tree_low_cst references that weren't caught by the sed. Same ok. Thanks, Richard. > Thanks, > Richard > > > gcc/ada/ > * gcc-interface/cuintp.c (UI_From_gnu): Use tree_to_shwi rather than > tree_low_cst. > > gcc/

Re: [10/10] Make tree_to_uhwi return unsigned

2013-11-18 Thread Richard Biener
On Sat, Nov 16, 2013 at 2:25 PM, Richard Sandiford wrote: > This is probably the only non-obvious part of the series. I went through > all callers to tree_to_uhwi to see whether they were used in a context > where signedness mattered. If so, I tried to adjust the casting to match. > > This mostl

[PATCH, MPX, 2/X] Pointers Checker [19/25] Strchr

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch to replace BUILT_IN_CHKP_BNDRET with assignment when optimizing strchr. Thanks, Ilya -- 2013-11-13 Ilya Enkovich * tree-ssa-strlen.c: Include tree-chkp.h. (handle_builtin_strchr): Remove retbnd call when strchr call is removed. diff --git a/gcc/t

Re: [1/10] Add tree_fits_shwi_p and tree_fits_uhwi_p

2013-11-18 Thread Jakub Jelinek
On Mon, Nov 18, 2013 at 11:50:45AM +0100, Richard Biener wrote: > On Sat, Nov 16, 2013 at 1:55 PM, Richard Sandiford > wrote: > > Add tree_fits_shwi_p and tree_fits_uhwi_p. The implementations are taken > > directly from host_integerp. > > tree_ is a bit generic - you only ever return true for I

Re: [5/10] Add tree_to_shwi and tree_to_uhwi

2013-11-18 Thread Richard Sandiford
Richard Biener writes: > On Sat, Nov 16, 2013 at 2:03 PM, Richard Sandiford > wrote: >> Add tree_to_shwi and tree_to_uhwi. Initially tree_to_uhwi returns a >> HOST_WIDE_INT, so that it's a direct replacement for tree_low_cst. >> Patch 10 makes it return unsigned HOST_WIDE_INT instead. > > Possib

Re: [1/10] Add tree_fits_shwi_p and tree_fits_uhwi_p

2013-11-18 Thread Eric Botcazou
> I actually think tree_fits is better, int_fits* looks too ambiguous to me, > what kind of integer (tree, int, HWI, ...) you actually mean. Seconded, all the more so that int_fits_type_p requires an INTEGER_CST as argument, unlike tree_fits_[su]hwi_p which accept any tree as argument. -- Eric

Re: Re: [Patch] Fix gcc.dg/20050922-*.c

2013-11-18 Thread Vidya Praveen
Mike, On 25/10/13 00:37, Mike Stump wrote: On Oct 24, 2013, at 2:26 AM, Vidya Praveen wrote: On Mon, Oct 21, 2013 at 06:40:28PM +0100, Mike Stump wrote: On Oct 21, 2013, at 3:28 AM, Vidya Praveen wrote: Tests gcc.dg/20050922-1.c and gcc.dg/20050922-2.c includes stdlib.h. This can be a issue

Re: [0/10] Replace host_integerp and tree_low_cst

2013-11-18 Thread Richard Biener
On Mon, Nov 18, 2013 at 10:08 AM, Richard Sandiford wrote: > Jeff Law writes: >> On 11/16/13 05:53, Richard Sandiford wrote: >>> After the patch that went in yesterday, all calls to host_integerp and >>> tree_low_cst pass a constant "pos" argument. This series replaces each >>> function with two

Re: Clean up LTO generation

2013-11-18 Thread Richard Biener
On Mon, Nov 18, 2013 at 11:10 AM, Bernd Schmidt wrote: > I'm looking into using LTO to pass information between compilers for > different targets, for the OpenACC implementation. This area of the > compiler seems somewhat obfuscated by overengineering, and I'd like to > simplify it first to make i

Re: [RFA][PATCH]Fix 59019

2013-11-18 Thread Steven Bosscher
On Mon, Nov 18, 2013 at 5:36 AM, Jeff Law wrote: > On 11/17/13 04:28, Steven Bosscher wrote: >> >> >> TRAP_CONDITION (PATTERN (i3)) == const1_rtx >> >> But shouldn't the check be on const_true_rtx? Or does combine put a >> const1_rtx there? > > I took const1_rtx from control_flow_insn_p. That's u

[PATCH, MPX, 2/X] Pointers Checker [20/25] Debug info

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch to avoid ICE in debug info generator for instrumented code. Thanks, Ilya -- 2013-11-15 Ilya Enkovich * dbxout.c (dbxout_type): Ignore POINTER_BOUNDS_TYPE. * dwarf2out.c (gen_subprogram_die): Ignore bound args. (gen_type_die_with_usage): Skip pointer

Re: [PATCH GCC]Compute, cache and use cost of auto-increment rtx patterns in IVOPT

2013-11-18 Thread Bernd Schmidt
On 11/04/2013 04:31 AM, bin.cheng wrote: > 2013-11-01 Bin Cheng > > * tree-ssa-loop-ivopts.c (enum ainc_type): New. > (address_cost_data): New field. > (get_address_cost): Compute auto-increment rtx cost in ainc_costs. > Use ainc_costs for auto-increment rtx patterns. >

RE: [PATCH] reimplement -fstrict-volatile-bitfields v4, part 1/2

2013-11-18 Thread Bernd Edlinger
Hi, This modified test case exposes a bug in the already approved part of the strict-volatile-bitfields patch: #include typedef struct {   char pad;   int arr[0]; } __attribute__((packed)) str; str * foo (int* src) {   str *s = malloc (sizeof (str) + sizeof (int));   s->arr[0] = 0x12345678;

Re: [PATCH] Support -fsanitize=leak

2013-11-18 Thread Marek Polacek
On Fri, Nov 15, 2013 at 08:41:38PM +0100, Jakub Jelinek wrote: > Hi! > > This patch adds support for -fsanitize=leak and -static-liblsan options. > If combined with -fsanitize=address, it does nothing, otherwise it links > in liblsan, a new shared+static library (on x86_64-linux only so far, > the

Re: [0/10] Replace host_integerp and tree_low_cst

2013-11-18 Thread Richard Sandiford
Richard Biener writes: > On Mon, Nov 18, 2013 at 10:08 AM, Richard Sandiford > wrote: >> Jeff Law writes: >>> On 11/16/13 05:53, Richard Sandiford wrote: After the patch that went in yesterday, all calls to host_integerp and tree_low_cst pass a constant "pos" argument. This series rep

[PATCH, i386, MPX, 2/X] Pointers Checker [21/25] Size relocation

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch to add size relocation and instruction to obtain object's size in i386 target. Thanks, Ilya -- 2013-11-15 Ilya Enkovich * config/i386/i386.md (UNSPEC_SIZEOF): New. (move_size_reloc_): New. * config/i386/predicates.md (size_relocation): New.

Re: Clean up LTO generation

2013-11-18 Thread Jan Hubicka
> On Mon, Nov 18, 2013 at 11:10 AM, Bernd Schmidt > wrote: > > I'm looking into using LTO to pass information between compilers for > > different targets, for the OpenACC implementation. This area of the > > compiler seems somewhat obfuscated by overengineering, and I'd like to > > simplify it fi

[PATCH] Fix libbacktrace on prelinked shared libraries

2013-11-18 Thread Jakub Jelinek
Hi! info->dlpi_addr == 0 is true for executables (but those have also info->dlpi_name set to ""), but not just for those, it is true also for successfully prelinked shared libraries or any other libraries that have been linked at non-zero offset and the dynamic linker managed to mmap them where th

Re: Clean up LTO generation

2013-11-18 Thread Bernd Schmidt
On 11/18/2013 02:03 PM, Jan Hubicka wrote: >> On Mon, Nov 18, 2013 at 11:10 AM, Bernd Schmidt >> wrote: >>> The following patch simplifies this by getting rid of >>> all_lto_gen_passes. We could simplify a little further if we decided we >>> really don't need two different timevars for different

Re: [PATCH] Fix PRs59125 and 54570

2013-11-18 Thread Richard Biener
On Fri, 15 Nov 2013, Richard Biener wrote: > On Fri, 15 Nov 2013, Jakub Jelinek wrote: > > > On Fri, Nov 15, 2013 at 02:56:51PM +0100, Richard Biener wrote: > > > Now that there is (finally :() a wrong-code testcase for the > > > PR54570 issue we can no longer ignore it (bah). So the following >

Re: Clean up LTO generation

2013-11-18 Thread Richard Biener
On Mon, Nov 18, 2013 at 2:19 PM, Bernd Schmidt wrote: > On 11/18/2013 02:03 PM, Jan Hubicka wrote: >>> On Mon, Nov 18, 2013 at 11:10 AM, Bernd Schmidt >>> wrote: The following patch simplifies this by getting rid of all_lto_gen_passes. We could simplify a little further if we decided w

[PATCH] Use libbacktrace as libsanitizer's symbolizer

2013-11-18 Thread Jakub Jelinek
Hi! This patch adds libbacktrace symbolizer to libsanitizer, with which we can avoid spawning and running external an external program (especially when it is not even provided by gcc itself). I've kept the possibility to override the symbolizer by magic symbols (InternalSymbolizer), and as I have

Re: [PATCH] Implement -fsanitize=null + new sanopt pass

2013-11-18 Thread Jakub Jelinek
On Wed, Nov 13, 2013 at 12:13:48AM +0100, Marek Polacek wrote: > --- gcc/config/bootstrap-ubsan.mk.mp 2013-11-12 13:46:13.345182065 +0100 > +++ gcc/config/bootstrap-ubsan.mk 2013-11-12 13:46:49.812314016 +0100 > @@ -2,6 +2,6 @@ > > STAGE2_CFLAGS += -fsanitize=undefined > STAGE3_CFLAGS += -

Re: [PATCH] PR ada/54040: [x32] Incorrect timeval and timespec

2013-11-18 Thread H.J. Lu
On Mon, Nov 18, 2013 at 1:02 AM, Arnaud Charlet wrote: >> Actually there are two issues with your change: >> >> Using time_t for tv_nsec looks actually wrong, the definition on (my) >> linux is: >> >> struct timespec { >> __kernel_time_t tv_sec; /* seconds */ >> lon

[v3 patch] __shared_ptr should never use atomic ops

2013-11-18 Thread Jonathan Wakely
This is something I've been meaning to change for years, see http://gcc.gnu.org/ml/libstdc++/2007-10/msg00180.html for a prior post. Currently __shared_ptr specializations still dispatch through __gnu_cxx::__exchange_and_add_dispatch for ref-count updates. The attached patch means the _S_single po

Re: [PATCH] Implement -fsanitize=null + new sanopt pass

2013-11-18 Thread Jakub Jelinek
On Mon, Nov 18, 2013 at 02:51:41PM +0100, Jakub Jelinek wrote: > On Wed, Nov 13, 2013 at 12:13:48AM +0100, Marek Polacek wrote: > > --- gcc/config/bootstrap-ubsan.mk.mp2013-11-12 13:46:13.345182065 > > +0100 > > +++ gcc/config/bootstrap-ubsan.mk 2013-11-12 13:46:49.812314016 +0100 > > @@

Re: [PATCH] PR ada/54040: [x32] Incorrect timeval and timespec

2013-11-18 Thread Arnaud Charlet
> >> struct timespec { > >> __kernel_time_t tv_sec; /* seconds */ > >> longtv_nsec;/* nanoseconds */ > >> }; > > This is wrong for x32 where tv_nsec is long long, not > long. There are a couple places where long should be > long long for

Re: [PATCH] Support -fsanitize=leak

2013-11-18 Thread Jakub Jelinek
On Fri, Nov 15, 2013 at 12:34:14PM -0800, Ian Lance Taylor wrote: > On Fri, Nov 15, 2013 at 11:41 AM, Jakub Jelinek wrote: > > > > This patch adds support for -fsanitize=leak and -static-liblsan options. > > If combined with -fsanitize=address, it does nothing, otherwise it links > > in liblsan, a

Re: [PATCH] Support -fsanitize=leak

2013-11-18 Thread Marek Polacek
On Mon, Nov 18, 2013 at 01:15:02PM +0100, Marek Polacek wrote: > Moreover, it fixes the bootstrap-ubsan failure when > building fixincl - I guess the gnu-user.h hunk was missing. Thanks. Sorry, turned out this is bogus. It really will need some configure/Makefile fix. Marek

[PATCH, i386, MPX, 2/X] Pointers Checker [22/25] Target builtins

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch introducing i386 target versions of Pointer Bounds Checker builtins. Thanks, Ilya -- 2013-11-15 Ilya Enkovich * config/i386/i386-builtin-types.def (BND): New. (ULONG): New. (BND_FTYPE_PCVOID_ULONG): New. (VOID_FTYPE_BND_PCVOID): New.

Re: [PATCH] PR ada/54040: [x32] Incorrect timeval and timespec

2013-11-18 Thread H.J. Lu
On Mon, Nov 18, 2013 at 5:57 AM, Arnaud Charlet wrote: >> >> struct timespec { >> >> __kernel_time_t tv_sec; /* seconds */ >> >> longtv_nsec;/* nanoseconds */ >> >> }; >> >> This is wrong for x32 where tv_nsec is long long, not >> long.

Use anti-ranges in memcpy/memset expansion

2013-11-18 Thread Jan Hubicka
Hi, this patch adds support to anti-ranges to determine_block_size. This makes it possible to bound size of block from bellow that is useful to avoid need for small size code path and it also allows us to inline the following: void *a; void *b; t(int c) { if (c<10) memcpy (a,b,c); } Because

Re: [PATCH] PR ada/54040: [x32] Incorrect timeval and timespec

2013-11-18 Thread Arnaud Charlet
> Ada was using long for time_t and > > type timeval is array (1 .. 2) of C.long > > It assumes that the type of tv_nsec is the same as tv_sec. Yes, and that was indeed wrong/dangerous. > > --- s-osinte-solaris-posix.ads (revision 298928) > > +++ s-osinte-solaris-posix.ads (working copy) > >

Re: Add value range support into memcpy/memset expansion

2013-11-18 Thread H.J. Lu
On Sun, Nov 17, 2013 at 3:38 PM, Jan Hubicka wrote: > Hi, > this is version I comitted. It also adds a testcase and enables the support > in i386 backend. > > Honza > > * doc/md.texi (setmem, movstr): Update documentation. > * builtins.c (determine_block_size): New function. >

Re: [PATCH] PR ada/54040: [x32] Incorrect timeval and timespec

2013-11-18 Thread H.J. Lu
On Mon, Nov 18, 2013 at 6:17 AM, Arnaud Charlet wrote: >> > >> > type timespec is record >> >tv_sec : time_t; >> > - tv_nsec : long; >> > + tv_nsec : time_t; >> > end record; >> > pragma Convention (C, timespec); >> > >> > But I'd rather settle on which type is appr

Re: [PATCH] PR ada/54040: [x32] Incorrect timeval and timespec

2013-11-18 Thread Arnaud Charlet
> >> __syscall_slong_t is a Linux specific type. We > >> can add tv_nsec_t, which should be the same > >> as time_t for all the current targets. > > > > Introducing tv_nsec_t looks reasonable to me. > > > > Can you make the change? > > Thanks. Not right now, I have lots of other things to do.

Re: libsanitizer merge from upstream r191666

2013-11-18 Thread Jakub Jelinek
On Fri, Nov 15, 2013 at 11:10:18AM +0100, Jakub Jelinek wrote: > 2013-11-15 Jakub Jelinek > > * cfgexpand.c (struct stack_vars_data): Add asan_base and asan_alignb > fields. > (expand_stack_vars): For -fsanitize=address, use (and set initially) > data->asan_base as base

Re: [PATCH] Implement -fsanitize=null + new sanopt pass

2013-11-18 Thread Marek Polacek
On Mon, Nov 18, 2013 at 02:51:41PM +0100, Jakub Jelinek wrote: > On Wed, Nov 13, 2013 at 12:13:48AM +0100, Marek Polacek wrote: > > --- gcc/config/bootstrap-ubsan.mk.mp2013-11-12 13:46:13.345182065 > > +0100 > > +++ gcc/config/bootstrap-ubsan.mk 2013-11-12 13:46:49.812314016 +0100 > > @@

Re: PING: Fwd: Re: [patch] implement Cilk Plus simd loops on trunk

2013-11-18 Thread Kyrill Tkachov
On 16/11/13 01:20, Aldy Hernandez wrote: On 11/15/13 15:05, Aldy Hernandez wrote: Why all this, and not keep everything but GF_OMP_FOR_KIND_SIMD and GF_OMP_FOR_KIND_DISTRIBUTE as they were, and just use: GF_OMP_FOR_KIND_DISTIRBUTE = 1 << 0, GF_OMP_FOR_KIND_SIMD = 2 << 0, GF_

Re: [gomp4 simd, RFC] Simple fix to override vectorization cost estimation.

2013-11-18 Thread Sergey Ostanevich
I would agree that the example is just for the case cost model makes correct estimation But how can we assure ourself that it won't have any mistakes in the future? I believe it'll be Ok to introduce an extra flag as Jakub proposed for the dedicated simd-forced vectorization to use unlimited cost

Re: [PATCH] Fix lto bootstrap verification failure with -freorder-blocks-and-partition

2013-11-18 Thread Teresa Johnson
On Sat, Nov 16, 2013 at 12:33 AM, Jan Hubicka wrote: >> When testing with -freorder-blocks-and-partition enabled, I hit a >> verification failure in an LTO profiledbootstrap. Edge forwarding >> performed when we went into cfg layout mode after bb reordering >> (during compgotos) created a situatio

Re: Use anti-ranges in memcpy/memset expansion

2013-11-18 Thread Richard Biener
On Mon, 18 Nov 2013, Jan Hubicka wrote: > Hi, > this patch adds support to anti-ranges to determine_block_size. > This makes it possible to bound size of block from bellow that is > useful to avoid need for small size code path and it also allows > us to inline the following: > void *a; > void *b;

Re: [gomp4 simd, RFC] Simple fix to override vectorization cost estimation.

2013-11-18 Thread Richard Biener
On Mon, 18 Nov 2013, Sergey Ostanevich wrote: > I would agree that the example is just for the case cost model makes > correct estimation But how can we assure ourself that it won't have any > mistakes in the future? We call it bugs and not mistakes and we have bugzilla for it. Richard. > I bel

Minor cgraph cleanups

2013-11-18 Thread Bernd Schmidt
This fixes some minor ugliness I noticed while looking at this code. It renames a poorly named global variable (shadowed by some function args in the same file), replaces a cast of an integer value to a pointer, and removes an undocumented and unused return value. Bootstrapped and tested on x86_64

[C++ testcase, committed] PR 53473

2013-11-18 Thread Paolo Carlini
Hi, tested x86_64-linux, committed to mainline. Paolo. / 2013-11-18 Paolo Carlini PR c++/53473 * g++.dg/cpp0x/constexpr-noexcept7.C: New. Index: g++.dg/cpp0x/constexpr-noexcept7.C === --- g++

Re: [PATCH] Fix lto bootstrap verification failure with -freorder-blocks-and-partition

2013-11-18 Thread Steven Bosscher
On Mon, Nov 18, 2013 at 3:53 PM, Teresa Johnson wrote: > From a bb layout perspective it seems like it would be beneficial to > do compgotos before layout. Was the current position just to try to > reduce compile time by keeping the block unified as long as possible? It was more a hack that got ou

[PATCH, i386, MPX, 2/X] Pointers Checker [23/25] Target hooks

2013-11-18 Thread Ilya Enkovich
Hi, Here is a patch with i386 version of Pointer Bounds Checker hooks. Thanks, Ilya -- 2013-11-15 Ilya Enkovich * config/i386/i386.c (ix86_builtin_mpx_function): New. (ix86_load_bounds): New. (ix86_store_bounds): New. (ix86_fn_abi_va_list_bounds_size): New.

Re: PING: Fwd: Re: [patch] implement Cilk Plus simd loops on trunk

2013-11-18 Thread Aldy Hernandez
The testcase c-c++-common/cilk-plus/PS/body.c needs an effective target check for fopenmp before adding -fopenmp to its options, otherwise it'll fail on bare-metal targets like arm-none-eabi. This patch adds that. Ok to commit? Thanks, Kyrill 2013-11-18 Kyrylo Tkachov * c-c++-common

Re: [PATCH] Use libbacktrace as libsanitizer's symbolizer

2013-11-18 Thread Alexey Samsonov
(resending in plain text) On Mon, Nov 18, 2013 at 7:49 PM, Alexey Samsonov wrote: Hi Jakub, Unfortunately, recently there were a few enhancements to sanitizer_symbolizer_posix_libcdep.cc (and friends), in LLVM trunk, and now it looks different from gcc version (apparently, the changes were

Re: [patch][RFC] make lra.c:check_rtl set maybe_hot_insn_p

2013-11-18 Thread Kyrill Tkachov
On 18/11/13 09:14, Kyrill Tkachov wrote: On 18/11/13 08:37, Yvan Roux wrote: So, the validation is ok with this patch, I'm just not able to say if the original performance issue is still fixed with it. Could you check it Kyrylo ? Hi Yvan, I'll run the benchmark today to confirm the performance

Re: [PATCH] Use libbacktrace as libsanitizer's symbolizer

2013-11-18 Thread Jakub Jelinek
On Mon, Nov 18, 2013 at 07:49:03PM +0400, Alexey Samsonov wrote: > > As for sanitizer, the reason I haven't implemented SendCommand method for > > the libbacktrace symbolizer is that the library doesn't provide the info > > as text, but as individual values passed to the callback, so printing > > t

Re: [PATCH] S/390: More htm testcases plus some fixes

2013-11-18 Thread Peter Bergner
On Mon, 2013-11-18 at 10:05 +0100, Andreas Krebbel wrote: > With the patch the htm-nofloat-2 testcase fails. Due to the > "returns_twice" flag on tbegin the optimizers fail to fold the > compares of the condition code and the s390_optimize_nonescaping_tx > routine in turn fails to optimize the sim

Re: [PATCH] Implement -fsanitize=null + new sanopt pass

2013-11-18 Thread Marek Polacek
On Mon, Nov 18, 2013 at 02:52:34PM +0100, Jakub Jelinek wrote: > Oh, one more thing, please update gcc/doc/, the -fsanitize= description is > far from up to date there. Ok, the following (incremental) hopefully improves the docs. Joseph, would you mind having a look at this? Thanks, 2013-11-18

[WWWDOCS] Document IPA/LTO/FDO/i386 changes in GCC-4.9

2013-11-18 Thread Jan Hubicka
Hi, there was many changes in this area. The following are ones I can think of. Please fell free to suggest more changes. We probably should mention Teresa's splitting work once it is complete and new micro-architectures targetd by x86 backend. Honza Index: changes.html =

Re: [PATCH] Use libbacktrace as libsanitizer's symbolizer

2013-11-18 Thread Jakub Jelinek
On Mon, Nov 18, 2013 at 07:50:33PM +0400, Alexey Samsonov wrote: > On Mon, Nov 18, 2013 at 7:49 PM, Alexey Samsonov wrote: > Unfortunately, recently there were a few enhancements to > sanitizer_symbolizer_posix_libcdep.cc (and friends), > in LLVM trunk, and now it looks different from gcc versi

Re: [PATCH] Fix libbacktrace on prelinked shared libraries

2013-11-18 Thread Ian Lance Taylor
On Mon, Nov 18, 2013 at 5:11 AM, Jakub Jelinek wrote: > > info->dlpi_addr == 0 is true for executables (but those have also > info->dlpi_name set to ""), but not just for those, it is true also > for successfully prelinked shared libraries or any other libraries that > have been linked at non-zero

[PATCH] Add reference binding instrumentation

2013-11-18 Thread Marek Polacek
This incremental patch brings the implementation of reference binding instrumentation, that is, it detects cases like int *p = NULL; int &r = *p; or auto &&rr = *p; and similarly. It does so by adding a COMPOUND_EXPR to the decl. As standard says, "A reference shall be initialized to refer to a

Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support

2013-11-18 Thread Jeff Law
On 11/08/13 02:02, Ilya Enkovich wrote: Hi, Here is an updated patch version with no langhook. Regarding TLS objects issue - I do not think compiler should compensate the absence of instrumentation in libraries. Compiler should be responsible for initialization of Bounds Tables for .tdata se

Re: [PATCH] Fix libbacktrace on prelinked shared libraries

2013-11-18 Thread Jakub Jelinek
On Mon, Nov 18, 2013 at 08:29:05AM -0800, Ian Lance Taylor wrote: > On Mon, Nov 18, 2013 at 5:11 AM, Jakub Jelinek wrote: > > > > info->dlpi_addr == 0 is true for executables (but those have also > > info->dlpi_name set to ""), but not just for those, it is true also > > for successfully prelinked

Re: [PATCH] Implement -fsanitize=null + new sanopt pass

2013-11-18 Thread Joseph S. Myers
On Mon, 18 Nov 2013, Marek Polacek wrote: > +@item @option{-fsanitize=shift} > + > +This option enables checking that the result of a shift operation is > +not undefined. Note that what exactly is considered undefined differs > +slightly between C and C++, as well as between ANSI C and C99, etc.

Re: [PATCH] Use libbacktrace as libsanitizer's symbolizer

2013-11-18 Thread Ian Lance Taylor
On Mon, Nov 18, 2013 at 5:39 AM, Jakub Jelinek wrote: > > I've kept the possibility to override the symbolizer by magic symbols > (InternalSymbolizer), and as I have no idea how the llvm buildsystem etc. > works and what is the possibility there to add libbacktrace, this just > requires users to c

Re: [PATCH] Fix libbacktrace on prelinked shared libraries

2013-11-18 Thread Ian Lance Taylor
On Mon, Nov 18, 2013 at 8:46 AM, Jakub Jelinek wrote: > > 2013-11-18 Jakub Jelinek > > * elf.c (SHN_UNDEF): Define. > (elf_initialize_syminfo): Add base_address argument. Ignore symbols > with st_shndx == SHN_UNDEF. Add base_address to address fields. > (elf_ad

Re: Add value range support into memcpy/memset expansion

2013-11-18 Thread H.J. Lu
On Mon, Nov 18, 2013 at 6:19 AM, H.J. Lu wrote: > On Sun, Nov 17, 2013 at 3:38 PM, Jan Hubicka wrote: >> Hi, >> this is version I comitted. It also adds a testcase and enables the support >> in i386 backend. >> >> Honza >> >> * doc/md.texi (setmem, movstr): Update documentation. >>

  1   2   3   >