Re: [PATCH] PR testsuite/69181: ensure expected multiline outputs is cleared per-test

2016-01-12 Thread David Malcolm
On Sat, 2016-01-09 at 03:07 +0100, Bernd Schmidt wrote: > On 01/09/2016 01:51 AM, David Malcolm wrote: > > The root cause here is that the logic to reset the list of expected > > multiline outputs was being run from: > >handle-multiline-outputs, called by > > p

[PATCH] PR other/69006: fix extra newlines after diagnostics

2016-01-12 Thread David Malcolm
Before r229884 (aka f04790107a32653aa7adbd24967b908c8a08), diagnostic_show_locus did not emit a newline for the line containing the caret, whereas the new implementation in r229884 does emit a newline for the final line it emits. PR other/69006 notes that this leads to undesired extra newlines

PING Re: [wwwdocs] gcc-6/changes.html: diagnostics, Levenshtein, -Wmisleading-indentation, jit

2016-01-13 Thread David Malcolm
Ping: https://gcc.gnu.org/ml/gcc-patches/2016-01/msg00250.html On Wed, 2016-01-06 at 09:50 -0500, David Malcolm wrote: > The attached patch adds information on various things to the > gcc-6/changes.html page: > > * source-range-tracking (the patch merges the description of the strin

[PATCH] PR driver/69265: improved suggestions for various misspelled options

2016-01-13 Thread David Malcolm
As of r230285 (b279775faf3c56b554ecd38159b70ea7f2d37e0b; PR driver/67613) the driver provides suggestions for misspelled options. This works well for some options e.g. $ gcc -static-libfortran test.f95 gcc: error: unrecognized command line option '-static-libfortran'; did you mean '-static-lib

Re: [PATCH] sanitize paths used in regular expression

2016-01-15 Thread David Malcolm
On Thu, 2016-01-14 at 17:31 -0800, Mike Stump wrote: > On Jan 14, 2016, at 4:54 PM, Zachary T Welch wrote: > > This patch fixes a small problem when running 'make check' from a path > > that includes "++". When such paths get used as a regular expression, > > that sequence would cause a runtime e

[wwwdocs] gcc-6/changes.html: diagnostics, Levenshtein, -Wmisleading-indentation, jit (v2)

2016-01-15 Thread David Malcolm
On Wed, 2016-01-13 at 10:00 -0500, David Malcolm wrote: > Ping: https://gcc.gnu.org/ml/gcc-patches/2016-01/msg00250.html > > On Wed, 2016-01-06 at 09:50 -0500, David Malcolm wrote: > > The attached patch adds information on various things to the > > gcc-6/changes.html pa

[PATCH 1/2] fix memory chunk corruption for opts_obstack (PR jit/68446)

2016-01-15 Thread David Malcolm
There can be multiple gcc_options instances, each with a call to init_options_struct matched with a call to finalize_options_struct whereas the opts_obstack is a singleton. Each gcc_options instance can potentially use the opts_obstack singleton. r230264 (aka 25faed340686df8d7bb2242dc8d0428

[PATCH 2/2] RFE: poisoning of invalid memory blocks and obstacks

2016-01-15 Thread David Malcolm
It was difficult to track down the memory corruption bug fixed by the previous patch (PR jit/68446). The following patch attempts to make it easier to find that kind of thing by adding "poisoning" code: (A) when memory blocks are returned to the memory_block_pool's free list (e.g. by an obsta

[PATCH, committed] PR diagnostic/68899: fix read-beyond-buffer when printing very wide source lines

2016-01-15 Thread David Malcolm
Our code for printing source code can apply an x-offset when printing very wide source lines, which attempts to ensure that the caret will be printed before line-wrapping occurs (it doesn't attempt to prevent line-wrapping, but the old implementation didn't either). The current implementation has

[PATCH] libcpp: use better locations for _Pragma tokens (preprocessor/69126)

2016-01-17 Thread David Malcolm
Our code for handling the "_Pragma" builtin macro is implemented in libcpp/directives.c:destringize_and_run. It handles _Pragma by creating a one-line buffer containing the _Pragma content, then sending it to do_pragma, which tokenizes it and handles the input as if it were spelled as #pragma.

[PATCH] PR testsuite/69181: ensure expected multiline outputs is cleared per-test (v2)

2016-01-18 Thread David Malcolm
On Tue, 2016-01-12 at 23:21 -0700, Jeff Law wrote: On 01/12/2016 12:34 PM, David Malcolm wrote: > >> I looked at this code, and there are two near-identical blocks which > >> reset all these variables. You are modifying only one of them, leaving > >> the one inside the i

[committed] PR jit/69144: Ensure that libgccjit's tempdir is fully cleaned-up

2016-01-19 Thread David Malcolm
There were a couple of ways that libgccjit could fail to unlink all of its tempfiles, leading to /tmp/libgccjit-* tempdirs lingering after the build: - dumpfiles requested by gcc_jit_context_enable_dump - ahead-of-time compilation artifacts which lingered in the tempdir after they've been copied

[PATCH] PR jit/63854: Introduce xstrdup_for_dump

2014-12-04 Thread David Malcolm
The auto_ptr<> idea sounds invasive (and made me wonder - why not go the whole way and use std::string?) Here's an implementation of the xstrdup_for_dump idea. To recap the motivation: cgraph*.c and ipa-*.c use xstrdup on strings when dumping them via fprintf, leaking all of the duplicated buffe

[PATCH 02/02] PR jit/64166: Add API entrypoint gcc_jit_context_enable_dump

2014-12-04 Thread David Malcolm
This is the JIT-specific part of the patch for PR jit/64166. Implement a way to get at dumpfiles from JIT testcases. Use it from test-sum-of-squares.c to provide a simple selftest of the dumping functionality, and use it from test-functions.c to add verification of the fix for PR jit/64020. gcc/

[PATCH 01/02] PR jit/64166: Add methods to gcc::dump_manager needed by JIT testing

2014-12-04 Thread David Malcolm
This is the non-JIT part of the patch for PR jit/64166. Provide a way for the JIT to lookup a dump_file_info * by switch name, and to get from there to the filename. OK for trunk? gcc/ChangeLog: PR jit/64166 * dumpfile.c (gcc::dump_manager::get_dump_file_info_by_switch):

[PATCH] PR other/63613: Add fixincludes for dejagnu.h

2014-12-04 Thread David Malcolm
assumed -fgnu89-inline until a recent upstream fix; see http://lists.gnu.org/archive/html/dejagnu/2014-10/msg00011.html Remove the workaround from jit.exp that used -fgnu89-inline in favor of a fixincludes to dejagnu.h that applies the upstream fix to a local copy. This should make it easier to

Re: [PATCH] allow passing argument to the JIT linker

2014-12-05 Thread David Malcolm
On Fri, 2014-12-05 at 01:27 -0500, Ulrich Drepper wrote: > If you generate code with the JIT which references outside symbols there > is currently no way to have a self-contained DSO created. The command > line to invoke the linker is fixed. What's the use-case here? Sorry if I'm not getting at

Re: [PATCH] libgccjit cleanups

2014-12-08 Thread David Malcolm
On Sat, 2014-12-06 at 15:29 -0500, Ulrich Drepper wrote: > This patch broken out of one I sent earlier with some extensions. It > contains only little cleanups to the libgccjit code. > > When creating the linker command line the code now uses an auto_vec > instead of the fixed size array. > > Th

Re: [PATCH] influence JIT linker command line

2014-12-08 Thread David Malcolm
On Sat, 2014-12-06 at 15:56 -0500, Ulrich Drepper wrote: > This patch supercedes the patch I sent earlier this week to add > dependencies to the linker command line. The implementation is > different. > > First, based on Dave's comment that he wants to keep the interface > simple, to enable the l

[PATCH, committed] Make jit/notes.txt better reflect current status quo

2014-12-08 Thread David Malcolm
The high-level overview diagram in jit/notes.txt showed the release of the JIT mutex in where I'd like it to be, rather than where it currently is. Fix the diagram to reflect reality, and clarify various other things. Committed to trunk as r218488. gcc/jit/ChangeLog: * notes.txt: Show th

[PATCH, committed] libgccjit++.h: use indentation to show inheritance

2014-12-08 Thread David Malcolm
Committed to trunk as r218489. gcc/jit/ChangeLog: * libgccjit++.h: Indent the forward declarations of the classes to show the inheritance hierarchy. --- gcc/jit/libgccjit++.h | 21 - 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/gcc/jit/libgccj

PING: Re: [PATCH 05/05] Add command-line option-parsing to jit testcases

2014-12-08 Thread David Malcolm
On Tue, 2014-11-25 at 20:34 -0500, David Malcolm wrote: > Add command-line option-parsing to the testcases, so that we can > manipulate them without needing a recompile (e.g. varying > optimization levels etc). > > This uses getopt_long, which is a GNU extension to libc. Is th

Re: PING: Re: [PATCH 05/05] Add command-line option-parsing to jit testcases

2014-12-08 Thread David Malcolm
On Mon, 2014-12-08 at 13:57 -0800, Mike Stump wrote: > On Dec 8, 2014, at 12:44 PM, David Malcolm > wrote: > > On Tue, 2014-11-25 at 20:34 -0500, David Malcolm wrote: > >> Add command-line option-parsing to the testcases, so that we can > >> manipulate them wi

Re: [PATCH] PR other/63613: Add fixincludes for dejagnu.h

2014-12-09 Thread David Malcolm
On Mon, 2014-12-08 at 14:13 +0100, Rainer Orth wrote: > Jeff Law writes: > > > On 12/04/14 15:42, Rainer Orth wrote: > >> David Malcolm writes: > >> > >>> assumed -fgnu89-inline until a recent upstream fix; > >>> see http://li

[PATCH, committed] jit-playback.c: Move dlopen code into a new function

2014-12-09 Thread David Malcolm
Malcolm + + * jit-playback.c (gcc::jit::playback::context::compile): Move the + dlopen code into... + (gcc::jit::playback::context::dlopen_built_dso): ...this new + function. + * jit-playback.h (gcc::jit::playback::context::dlopen_built_dso): + New function. + 2014-12-08 David Malcolm

[PATCH, committed] Guard less code with the JIT mutex

2014-12-09 Thread David Malcolm
angeLog (revision 218527) +++ gcc/jit/ChangeLog (revision 218528) @@ -1,5 +1,23 @@ 2014-12-09 David Malcolm + * jit-playback.c (gcc::jit::playback::context::compile): Acquire the + mutex here, immediately before using toplev, and release it here, on + each exit path after acquisition. +

Re: Running cc1 etc under valgrind (was Re: [PATCH 13/21] PR jit/63854: Add support for running "make check-jit" under valgrind)

2014-12-09 Thread David Malcolm
On Wed, 2014-11-19 at 13:38 -0500, David Malcolm wrote: > On Wed, 2014-11-19 at 09:57 -0700, Jeff Law wrote: > > On 11/19/14 03:46, David Malcolm wrote: > > > This commit updates jit.exp so that if RUN_UNDER_VALGRIND is present > > > in the environment, all of

[PATCH, committed] Add jit-tempdir.{c|h}

2014-12-09 Thread David Malcolm
her aliases m_path_template, or is NULL. */ - char *m_path_tempdir; - - /* The following are allocated using xmalloc. */ - char *m_path_c_file; - char *m_path_s_file; - char *m_path_so_file; + tempdir *m_tempdir; auto_vec m_functions; tree m_char_array_type_node; diff --git a/gcc/jit/

[PATCH, commmited] PR jit/63854: Document how to run the jit testsuite under valgrind

2014-12-09 Thread David Malcolm
Committed to trunk as r218538. Index: gcc/jit/ChangeLog === --- gcc/jit/ChangeLog (revision 218537) +++ gcc/jit/ChangeLog (revision 218538) @@ -1,5 +1,12 @@ 2014-12-09 David Malcolm + PR jit/63854 + * docs/internals/index.rst

[PATCH, committed] jit: toyvm.c: use correct path in debuginfo

2014-12-09 Thread David Malcolm
I noticed while debugging another issue that at some point I'd broken the source locations that toyvm.c sets up into the .toy source files, by using the filename, rather than the filesystem path. Also fix a segfault due to fclose (NULL) when the .toy file is not found. Committed to trunk as r2185

Re: [patch] gdb python pretty printer for DIEs

2014-12-10 Thread David Malcolm
On Tue, 2014-12-09 at 13:10 -0800, Aldy Hernandez wrote: > From: > Aldy Hernandez >To: > jason merrill > Cc: > David Malcolm > , gcc-patches > >

[PATCH, committed] Document the JIT C++ bindings (libgccjit++.h)

2014-12-10 Thread David Malcolm
ion I noticed at the same time. I've verified the build of HTML and PDF docs. Committed to trunk as r218588. 2014-12-10 David Malcolm * docs/cp/index.rst: New file. * docs/cp/intro/index.rst: New file. * docs/cp/intro/tutorial01.rst: New file. * doc

[PATCH] jit.exp: support C++ testcases

2014-12-10 Thread David Malcolm
There is an ugly kludge here in jit.exp, but it works. Is there a better way to do this? (see "Kludge alert" at top of jit.exp) gcc/jit/ChangeLog: * TODO.rst (Test suite): Remove item about running C++ testcases. * docs/internals/index.rst (Working on the JIT library): Add

Re: [PATCH] libgccjit cleanups

2014-12-11 Thread David Malcolm
On Wed, 2014-12-10 at 23:32 -0500, Ulrich Drepper wrote: > On Mon, Dec 8, 2014 at 11:36 AM, David Malcolm wrote: > > Thanks. Overall this is good, a few nitpicks inline below: > > I've made the changes and checked in the patch. ...as r218617. Thanks. The jit subd

[PATCH, committed] Handle NULL in gcc_jit_context_set_str_option

2014-12-19 Thread David Malcolm
r218617 broke test-error-pr63969-missing-driver.c. The commit added an xstrdup of new string option values on a gcc_jit_context, but string option values are allowed to be NULL. Handle the NULL case. Committed to trunk as r218969. gcc/jit/ChangeLog: * jit-recording.c (gcc::jit::recordin

[PATCH, committed] Fix issue with string options and nested gcc_jit_contexts

2014-12-19 Thread David Malcolm
The change to dynamically-allocated string options in r218617 introduced an issue with nested contexts, which were simply taking a copy of the string pointer, rather than owning their own buffer. Visible as various read-after-free errors when running test-nested-contexts.c under valgrind, where a

[PATCH, committed] Fix casting non-"int" to bool.

2014-12-19 Thread David Malcolm
Attempts to use gcc_jit_context_new_cast on an rvalue with non-"int" numeric type, with "bool" as the desired type would lead to an ICE when the context was compiled. Fix it. Brings jit.sum from: # of expected passes 4888 to: # of expected passes 5008 Committed to trunk as

[PATCH, committed] jit.exp: Don't drop the extension from the testcase when naming executable

2015-01-07 Thread David Malcolm
Previously, "test-foo.c" would be built by jit.exp as "test-foo.exe". However, we have various test-foo.c vs test-foo.cc testcases. We don't want them to clobber each other's executables (especially if we're going to parallelize the jit testsuite). Hence retain the extension, so they are built t

[PATCH, committed] jit.exp: add __func__ to help test-{combination|threads}.c

2015-01-07 Thread David Malcolm
Within the jit testsuite, test-combination.c and test-threads.c rerun other tests - the former all within one context, the latter in multiple contexts, each on a different thread. When reading the results of these combined tests it can be difficult to figure out where each PASS/FAIL line actually

[PATCH, committed] jit.exp: support C++ testcases

2015-01-07 Thread David Malcolm
This adds at least two ugly kludges to jit.exp, but it works: in particular: the setting of tool to "g++" when loading wrapper.lib, and the resetting of "orig_environment_saved". I also noticed that jit-dg-test wasn't returning a list of the form: [list $comp_output $output_file] as dg-test assu

[PATCH, committed] Fix typo in jit-recording.h

2015-01-07 Thread David Malcolm
Committed as r219319. gcc/jit/ChangeLog: * jit-recording.h (gcc::jit::recording::memento_of_get_type): Fix typo in comment. --- gcc/jit/jit-recording.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/jit/jit-recording.h b/gcc/jit/jit-recording.h index 17a1c

[PATCH, committed] Add test of handling arithmetic-overflow from JIT

2015-01-07 Thread David Malcolm
New testcase to verify that libgccjit client code can handle arithmeti overflow. This testcase brings jit.sum from: # of expected passes5158 to: # of expected passes6121 Committed to trunk as r219320. FWIW my motivation for this testcase was due to implementing "INT_*_OVF" op

[PATCH, committed] API extension: add GCC_JIT_UNARY_OP_ABS to enum gcc_jit_unary_op

2015-01-07 Thread David Malcolm
This adds GCC_JIT_UNARY_OP_ABS to the end of enum gcc_jit_unary_op, and so should not change ABI. Takes jit.sum from: # of expected passes 6121 to: # of expected passes 6196 Committed to trunk as r219321. gcc/jit/ChangeLog: * docs/topics/expressions.rst (Unary Operations)

[PATCH, committed] jit: Add checking for dereference of void *

2015-01-07 Thread David Malcolm
Reject attempts to dereference a void *, otherwise we get an ICE deep inside gimplification. Committed to trunk as r219333. FWIW, I ran into this as part of experiments at writing a libgccjit backend for PyPy; see https://bitbucket.org/pypy/pypy/branch/libgccjit-backend In particular, the tes

[PATCH, committed] New jit API entrypoint: gcc_jit_context_set_logfile

2015-01-08 Thread David Malcolm
a/gcc/jit/jit-logging.c b/gcc/jit/jit-logging.c new file mode 100644 index 000..61b898b --- /dev/null +++ b/gcc/jit/jit-logging.c @@ -0,0 +1,168 @@ +/* Internals of libgccjit: logging + Copyright (C) 2014-2015 Free Software Foundation, Inc. + Contributed by David Malcolm . + +This fil

[PATCH, committed] jit: New API entrypoint: gcc_jit_context_get_last_error

2015-01-08 Thread David Malcolm
This is of use when writing bindings for higher-level languages that support exception-handling. An example of using this is: https://bitbucket.org/pypy/pypy/commits/6b48e7ef126a50f0bd181f59a827244e0b3e2a00 where I use it in my experimental PyPy backend in order to raise meaningful RPython excep

[PATCH, committed] libgccjit.h: Fix description of struct gcc_jit_context

2015-01-08 Thread David Malcolm
libgccjit.h's description of gcc_jit_context talks about contexts having two states: before vs after compilation. This hasn't been the case for a long time, and it's long been possible to compile a context more than once, getting a different gcc_jit_result each time (assuming no errors happen). F

[PATCH, committed] PR jit/64206: delay cleanup of tempdir if the user has requested debuginfo

2015-01-09 Thread David Malcolm
Committed to trunk as r219395. gcc/jit/ChangeLog: PR jit/64206 * docs/internals/test-hello-world.exe.log.txt: Update, the log now shows tempdir creation/cleanup. * docs/_build/texinfo/libgccjit.texi: Regenerate. * jit-logging.h (class gcc::jit::log_user): Ad

[PATCH, committed] New jit API entrypoint: gcc_jit_context_new_rvalue_from_long

2015-01-09 Thread David Malcolm
Previously it was only possible to create integer constants via gcc_jit_context_new_rvalue_from_int [1], which takes a host "int" and a gcc_jit_type representing a target type Hence it wasn't possible to create e.g. the constant (long)LONG_MAX if int != long. (strictly speaking, one might be able

[PATCH, committed] Fix build of jit (was Re: [PATCH] Flatten tree.h and tree-core.h (Version 3))

2015-01-09 Thread David Malcolm
ias.h, symtab.h, > >> fold-const.h, wide-int.h and inchash.h due to flattening of tree.h. > >> * tree-scalar-evolution.c: Include hash-set.h, machmode.h, vec.h, > >> double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h, > >> wide-int.h

[PATCH, committed] Simplify jit.dg/test-combination.c

2015-01-09 Thread David Malcolm
jit.dg/test-combination.c was spelling out all of the passing test cases, twice, when test-threads.c already had this as metadata. Move the metadata from test-threads.c into all-non-failing-tests.h, and use it from test-combination.c to avoid this repetition. Before/after test-combination.c both

[PATCH, committed] jit: API change to gcc_jit_context_new_global

2015-01-12 Thread David Malcolm
This is an API change to one of the libgccjit.h entrypoints. Although we don't yet guarantee API stability for libgccjit, I'm loathe to break things without strong reasons. I think that in this case the reasons *are* sufficient (see below), and hence I feel that it's best to get this change in now

[PATCH, committed] jit-playback.c: fix missing fclose

2015-01-12 Thread David Malcolm
Reported by David Binderman within discussion of PR jit/63854. Before/after jit.sum has 7272 passes. Committed to trunk as r219487. gcc/jit/ChangeLog: * jit-playback.c (gcc::jit::playback::context::read_dump_file): Add missing fclose on error-handling path. --- gcc/jit/jit-playb

[PATCH, committed] libgccjit: detect various kinds of errors relating to params and locals

2015-01-12 Thread David Malcolm
In my PyPy libgccjit experiments I managed to get various crashes deep inside the compile (when expanding gimple -> RTL). Investigation showed that I was erroneously using params and locals from one function in an entirely different function. The API checks individual rvalues and the tree-like st

[PATCH, committed] jit: New API entrypoint: gcc_jit_context_dump_reproducer_to_file

2015-01-13 Thread David Malcolm
When debugging libgccjit or client code, the recipe for reproducing a bug can be very awkward. For example, consider client code, linked against many libraries, which parses some source file into some internal representation, and then walks this IR, calling into libgccjit. If this encounters a bu

Re: GCC 4.8.0 Status Report (2012-10-29), Stage 1 to end soon

2012-11-05 Thread David Malcolm
On Wed, 2012-10-31 at 11:13 +0100, Richard Biener wrote: > On Mon, Oct 29, 2012 at 6:56 PM, Jakub Jelinek wrote: > > Status > > == > > > > I'd like to close the stage 1 phase of GCC 4.8 development > > on Monday, November 5th. If you have still patches for new features you'd > > like to see i

PATCH: contrib/repro_fail: filter out "-ignore SIGHUP" from spawn line

2013-04-25 Thread David Malcolm
pe this is helpful Dave diff --git a/contrib/ChangeLog b/contrib/ChangeLog index 9f4505b..01afcb5 100644 --- a/contrib/ChangeLog +++ b/contrib/ChangeLog @@ -1,3 +1,7 @@ +2013-04-25 David Malcolm + + * repro_fail: filter out "-ignore SIGHUP" from the spawn lines + 2013-04-18 Diego N

Re: PATCH: contrib/repro_fail: filter out "-ignore SIGHUP" from spawn line

2013-04-25 Thread David Malcolm
On Thu, 2013-04-25 at 13:43 -0400, Diego Novillo wrote: > On 2013-04-25 12:30 , David Malcolm wrote: > > > diff --git a/contrib/ChangeLog b/contrib/ChangeLog > > index 9f4505b..01afcb5 100644 > > --- a/contrib/ChangeLog > > +++ b/contrib/ChangeLog > > @@

Re: [PATCH 4/6] Handwritten part of conversion of passes to instances of C++ classes

2013-04-26 Thread David Malcolm
On Fri, 2013-04-19 at 21:23 -0400, David Malcolm wrote: > This is the hand-written part of the patch; it is required for the > preceding auto-generated patch to make sense. [Answering my own patch] This patch isn't yet good enough as-is: upon investigating test case failu

[PATCH] Use indentation in gtype.state to show nested structure

2013-05-03 Thread David Malcolm
e-state.c | 198 +++ 2 files changed, 193 insertions(+), 45 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index cafda6e..9c9ce2a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,43 @@ +2013-05-03 David Malcolm + + * gengtype-state.c: (indent_amount

Re: [PATCH] Use indentation in gtype.state to show nested structure

2013-05-06 Thread David Malcolm
to SVN. [I believe the copyright assignment requirements are covered by an agreement the FSF has with my employer (Red Hat)]. Thanks again Dave commit 528a1c122c049d0d0ea12d819b63c59310edc7f2 Author: David Malcolm Date: Fri May 3 18:22:38 2013 -0400 Use indentation when generating gty

Re: PATCH: contrib/repro_fail: filter out "-ignore SIGHUP" from spawn line

2013-05-06 Thread David Malcolm
On Thu, 2013-04-25 at 14:10 -0400, David Malcolm wrote: > On Thu, 2013-04-25 at 13:43 -0400, Diego Novillo wrote: > > On 2013-04-25 12:30 , David Malcolm wrote: > > > > > diff --git a/contrib/ChangeLog b/contrib/ChangeLog > > > index 9f4505b..01afcb5 100

Re: [PATCH] Use indentation in gtype.state to show nested structure

2013-05-06 Thread David Malcolm
On Mon, 2013-05-06 at 12:22 -0600, Jeff Law wrote: > On 05/03/2013 06:48 PM, David Malcolm wrote: > > > > +static int indent_amount = 0; > > +static int had_recent_newline = 0; > Any clean way to do this without the global state? I have to ask given > you're gene

Re: [PATCH] Use indentation in gtype.state to show nested structure

2013-05-06 Thread David Malcolm
On Mon, 2013-05-06 at 17:05 -0400, David Malcolm wrote: [...snip...] > Thanks for review; see attached rewrite of patch. Sorry, I messed up the macro for generating the ChangeLog in the last patch; version with fixed ChangeLog attached. commit 566185b94449a90dc3213ea11643bfb3924a751d Aut

Re: [PATCH] Use indentation in gtype.state to show nested structure

2013-05-14 Thread David Malcolm
On Tue, 2013-05-14 at 11:44 -0600, Jeff Law wrote: > On 05/06/2013 03:05 PM, David Malcolm wrote: [...snip review and comments about auto-checking of formatting...] > Anyway, the patch is good to go. Please install. Thanks for reviewing. Probably a dumb question, but by "Please i

Add myself to MAINTAINERS as Write After Approval

2013-05-17 Thread David Malcolm
Adding myself to the MAINTAINERS in the "Write After Approval" category Index: ChangeLog === --- ChangeLog (revision 199021) +++ ChangeLog (revision 199022) @@ -1,3 +1,7 @@ +2013-05-17 David Malcolm + + * MAINTAINERS (W

Re: [PATCH] Use indentation in gtype.state to show nested structure

2013-05-17 Thread David Malcolm
On Wed, 2013-05-15 at 11:51 -0600, Jeff Law wrote: > On 05/14/2013 01:07 PM, David Malcolm wrote: > > On Tue, 2013-05-14 at 11:44 -0600, Jeff Law wrote: > >> On 05/06/2013 03:05 PM, David Malcolm wrote: > > > > [...snip review and comments about auto-checking of forma

Re: PATCH: contrib/repro_fail: filter out "-ignore SIGHUP" from spawn line

2013-05-20 Thread David Malcolm
On Mon, 2013-05-06 at 12:02 -0400, David Malcolm wrote: > On Thu, 2013-04-25 at 14:10 -0400, David Malcolm wrote: > > On Thu, 2013-04-25 at 13:43 -0400, Diego Novillo wrote: > > > On 2013-04-25 12:30 , David Malcolm wrote: > > > > > > > diff --git

Re: PATCH: contrib/repro_fail: filter out "-ignore SIGHUP" from spawn line

2013-05-21 Thread David Malcolm
On Tue, 2013-05-21 at 09:41 -0400, Diego Novillo wrote: > On 2013-05-20 16:03 , David Malcolm wrote: [...] > >> BTW, I don't have commit rights to GCC (am reattaching the patch for > >> convenience) > > (I have svn rights now) > Oh, that was it. Sorry, it

A trivial script to scrub ChangeLog changes from "git show"

2013-05-22 Thread David Malcolm
quot;git-merge-changelog", but that requires building/installing it at the receiving end commit 120b040899e61ca3b9214bd71a545038025e7e68 Author: David Malcolm Date: Wed May 22 15:17:35 2013 -0400 contrib/ * git-show-non-changelog.sh: New. diff --git a/contrib/ChangeLog b/contrib/Chan

Mark threshold arrays in bb-reorder.c as constant

2013-05-22 Thread David Malcolm
tched bootstrap of that revision. OK to commit to trunk? 2013-05-21 David Malcolm * bb-reorder.c (branch_threshold): make const (exec_threshold): ditto commit 60623f1616b3144310f432174ebbb3e2cc6dff28 Author: David Malcolm Date: Tue May 21 21:52:45 2013 -0400 Make bb-reor

Remove global state from gcc/tracer.c

2013-05-22 Thread David Malcolm
he implicit "this" of the tracer_state, avoiding the need to patch each individual use of a field within the state, minimizing the diff. Bootstrapped and tested on x86_64-unknown-linux-gnu against r199189, and has the same test results as an unpatched bootstrap of that revision. OK to commit t

Re: Mark threshold arrays in bb-reorder.c as constant

2013-05-22 Thread David Malcolm
On Wed, 2013-05-22 at 19:56 -0600, Jeff Law wrote: > On 05/22/2013 06:30 PM, David Malcolm wrote: > > The arrays of thresholds in gcc/bb-reorder.c appear not to have changed > > since 2004 (in r80564). > > > > As part of my hope of quashing global state in gcc, I'

Re: Remove global state from gcc/tracer.c

2013-05-23 Thread David Malcolm
On Thu, 2013-05-23 at 07:14 +0200, Jakub Jelinek wrote: > On Wed, May 22, 2013 at 08:45:45PM -0400, David Malcolm wrote: > > I'm attempting to eliminate global state from the insides of gcc. > > > > gcc/tracer.c has various global variables, which are only used duri

Re: Remove global state from gcc/tracer.c

2013-05-23 Thread David Malcolm
On Thu, 2013-05-23 at 06:56 -0400, David Malcolm wrote: > On Thu, 2013-05-23 at 07:14 +0200, Jakub Jelinek wrote: > > On Wed, May 22, 2013 at 08:45:45PM -0400, David Malcolm wrote: > > > I'm attempting to eliminate global state from the insides of gcc. > > > >

Re: Remove global state from gcc/tracer.c

2013-05-23 Thread David Malcolm
On Thu, 2013-05-23 at 11:59 -0400, David Malcolm wrote: > On Thu, 2013-05-23 at 06:56 -0400, David Malcolm wrote: > > On Thu, 2013-05-23 at 07:14 +0200, Jakub Jelinek wrote: > > > On Wed, May 22, 2013 at 08:45:45PM -0400, David Malcolm wrote: > > > > I'm attemp

Re: Remove global state from gcc/tracer.c

2013-05-23 Thread David Malcolm
On Thu, 2013-05-23 at 13:31 -0700, Richard Henderson wrote: > > /* The Ith entry is the number of objects on a page or order I. */ > > > > -static unsigned objects_per_page_table[NUM_ORDERS]; > > +DEFINE_STATIC_STATE_ARRAY(unsigned, objects_per_page_table, NUM_ORDERS) > > > > /* The Ith entr

Re: Mark threshold arrays in bb-reorder.c as constant

2013-05-24 Thread David Malcolm
On Fri, 2013-05-24 at 23:51 +0800, Chung-Ju Wu wrote: > 2013/5/23 Jakub Jelinek : > > On Wed, May 22, 2013 at 08:30:35PM -0400, David Malcolm wrote: > >> The arrays of thresholds in gcc/bb-reorder.c appear not to have changed > >> since 2004 (in r80564). > >>

[PATCH 1/2] handwritten part of patch

2013-05-25 Thread David Malcolm
Eliminate all direct references to "cfun" from macros in basic-block.h and introduce access methods to control_flow_graph * basic-block.h (control_flow_graph::get_basic_block_by_idx): New accessor methods. (control_flow_graph::get_entry_block): New method.

[PATCH 0/2] Proof-of-concept towards removal of the "cfun" global

2013-05-25 Thread David Malcolm
that genuinely is a variable. [4] https://github.com/davidmalcolm/gcc-refactoring-scripts/blob/master/refactor_cfun.py along with a test suite: https://github.com/davidmalcolm/gcc-refactoring-scripts/blob/master/test_refactor_cfun.py David Malcolm (2): handwritten autogenera

[PATCH 2/2] autogenerated part of patch

2013-05-25 Thread David Malcolm
This patch is 547K in size, so I've uploaded it to: http://dmalcolm.fedorapeople.org/gcc/large-patches/928e2d33daafe1943766dfb437f6ba7b795dfa41-0002-autogenerated-part-of-cfun-expansion.patch Patch autogenerated by refactor_cfun.py from https://github.com/davidmalcolm/gcc-refactoring-scripts revi

Re: [PATCH 0/2] Proof-of-concept towards removal of the "cfun" global

2013-05-28 Thread David Malcolm
On Tue, 2013-05-28 at 06:39 -0600, Jeff Law wrote: > On 05/25/2013 07:02 AM, David Malcolm wrote: > > I can think of three approaches to "cfun": > > (a) status quo: a global variable, with macros to prevent direct > > assignment, and an API for changing cfun.

Re: [PATCH 1/2] handwritten part of patch

2013-05-28 Thread David Malcolm
On Mon, 2013-05-27 at 15:38 +0200, Richard Biener wrote: > On Sat, May 25, 2013 at 3:02 PM, David Malcolm wrote: > > Eliminate all direct references to "cfun" from macros in > > basic-block.h and introduce access methods to control_flow_graph > &

Re: [PATCH 1/2] handwritten part of patch

2013-05-31 Thread David Malcolm
On Wed, 2013-05-29 at 10:06 +0200, Richard Biener wrote: > On Tue, May 28, 2013 at 8:04 PM, David Malcolm wrote: > > On Mon, 2013-05-27 at 15:38 +0200, Richard Biener wrote: > >> On Sat, May 25, 2013 at 3:02 PM, David Malcolm wrote: > >> > Eliminate all di

[PATCH] tree-ssa-structalias.c: make call_stmt_vars static

2013-06-04 Thread David Malcolm
call_stmt_vars is only used inside of tree-ssa-structalias.c, so it can be made static. Successfully bootstrapped on x86_64-unknown-linux-gnu (using gcc-4.7.2-2.fc17.x86_64). OK for trunk? 2013-06-04 David Malcolm * tree-ssa-structalias.c (call_stmt_vars): Make static. Index: gcc

Re: [PATCH] tree-ssa-structalias.c: make call_stmt_vars static

2013-06-04 Thread David Malcolm
On Tue, 2013-06-04 at 15:43 -0600, Jeff Law wrote: > On 06/04/2013 03:29 PM, David Malcolm wrote: > > call_stmt_vars is only used inside of tree-ssa-structalias.c, so it can > > be made static. > > > > Successfully bootstrapped on x86_64-unknown-linux-gnu (using

[PATCH] tsan.c: mark tsan_atomic_table as constant

2013-06-04 Thread David Malcolm
The table of struct tsan_map_atomic within tsan.c is never modified, so it can be marked as const. Successfully bootstrapped on x86_64-unknown-linux-gnu (using gcc-4.7.2-2.fc17.x86_64). OK for trunk? 2013-06-05 David Malcolm * tsan.c (tsan_atomic_table): Make const. Index: gcc

[PATCH] Remove unused pass_update_address_taken

2013-06-04 Thread David Malcolm
emove it from trunk? 2013-06-05 David Malcolm * tree-pass.h (pass_update_address_taken): Remove. * tree-ssa.c (pass_update_address_taken): Remove. Index: gcc/tree-pass.h === --- gcc/tree-pass.h (revision 199679) ++

Re: [PATCH] Remove unused pass_update_address_taken

2013-06-05 Thread David Malcolm
On Wed, 2013-06-05 at 10:33 +0200, Richard Biener wrote: > On Wed, Jun 5, 2013 at 4:48 AM, David Malcolm wrote: > > If I'm reading things right, pass_update_address_taken is never actually > > used. > > > > Deleting it, I was able to still successfully bootstrap

Re: [PATCH] tsan.c: mark tsan_atomic_table as constant

2013-06-05 Thread David Malcolm
On Wed, 2013-06-05 at 13:27 +0400, Konstantin Serebryany wrote: > On Wed, Jun 5, 2013 at 6:40 AM, David Malcolm wrote: > > The table of struct tsan_map_atomic within tsan.c is never modified, so > > it can be marked as const. > > > > Successfully bootstrapped on x86_

[PATCH] tree-into-ssa.c: make interesting_blocks static

2013-06-07 Thread David Malcolm
"interesting_blocks" is only used inside tree-into-ssa.c, so it can be made static. Successfully bootstrapped on x86_64-unknown-linux-gnu (using gcc-4.7.2-2.fc17.x86_64). OK for trunk? 2013-06-07 David Malcolm * tree-into-ssa.c (interesting_blocks): Make static. Index

[PATCH] tree-object-size.c: mark "unknown" as const

2013-06-07 Thread David Malcolm
The array "unknown" within tree-object-size.c is only ever read from, not written to, so it can be marked as const. Successfully bootstrapped on x86_64-unknown-linux-gnu (using gcc-4.7.2-2.fc17.x86_64). OK for trunk? 2013-06-07 David Malcolm * tree-object-size.c (unkn

Re: [PATCH] tree-object-size.c: mark "unknown" as const

2013-06-07 Thread David Malcolm
On Fri, 2013-06-07 at 20:49 +0200, Jakub Jelinek wrote: > On Fri, Jun 07, 2013 at 01:40:00PM -0400, David Malcolm wrote: > > The array "unknown" within tree-object-size.c is only ever read from, > > not written to, so it can be marked as const. > > > > Succes

Re: [PATCH] tree-into-ssa.c: make interesting_blocks static

2013-06-10 Thread David Malcolm
On Mon, 2013-06-10 at 12:32 -0700, Richard Henderson wrote: > On 06/07/2013 10:36 AM, David Malcolm wrote: > > * tree-into-ssa.c (interesting_blocks): Make static. > > Ok. Thanks; committed to svn trunk as r199911.

[PATCH] final.c: make debug_prefix_maps static

2013-06-11 Thread David Malcolm
Usage of "debug_prefix_maps" is hidden behind an API, with the only direct uses of the ptr being within final.c. Indeed the declaration of its type is local to that file. Hence it can be made static. Successfully bootstrapped on x86_64-unknown-linux-gnu OK for trunk? 2013-06-11 Dav

[PATCH] function.c: Remove stray copy of initial_trampoline

2013-06-11 Thread David Malcolm
: New file. (...snip...) (I'm not sure if the error occurred on the branch or during merger). I'm attaching a patch to remove the stray copy from function.c Successfully bootstrapped on x86_64-unknown-linux-gnu OK for trunk? 2013-06-11 David Malcolm *

Re: [PATCH] function.c: Remove stray copy of initial_trampoline

2013-06-11 Thread David Malcolm
On Tue, 2013-06-11 at 09:56 -0600, Jeff Law wrote: > On 06/11/13 09:16, David Malcolm wrote: > > > > 2013-06-11 David Malcolm > > > > * function.c (initial_trampoline): Remove stray copy; see > > varasm.c for the real copy. > This is fine.

Re: [PATCH] final.c: make debug_prefix_maps static

2013-06-11 Thread David Malcolm
On Tue, 2013-06-11 at 09:34 -0700, Richard Henderson wrote: > On 06/11/2013 07:57 AM, David Malcolm wrote: > > Usage of "debug_prefix_maps" is hidden behind an API, with the only > > direct uses of the ptr being within final.c. Indeed the declaration of > >

[PATCH] ggc-page.c : remove erroneous ATTRIBUTE_UNUSED

2013-06-14 Thread David Malcolm
ggc_pch_write_object's parameter "d" is marked with ATTRIBUTE_UNUSED, but in fact it is used in 4 places at the end of the function. Successfully bootstrapped on x86_64-unknown-linux-gnu. OK for trunk? 2013-06-14 David Malcolm * ggc-page.c (ggc_pch_write_object) : R

[PATCH 5/5] single_set takes an insn

2014-09-09 Thread David Malcolm
On Tue, 2014-09-09 at 09:53 -0600, Jeff Law wrote: > On 09/08/14 15:29, David Malcolm wrote: > > gcc/ChangeLog: [...] > > * config/avr/avr.c (avr_out_plus): Add checked cast to rtx_insn * > > when invoking single_set in region guarded by INSN_P. > >

<    30   31   32   33   34   35   36   37   38   39   >