2011/4/17 Nicola Pero :
> While reading GCC code, I noticed that in gengtype-state.c
> the equality function in a string hashtable is set to strcmp.
>
> But that returns 0 (ie, false for hashtable.c) when the strings
> are equal! I can't see how that hashtable would ever work. Do
> we have any te
On 04/11/2011 04:35 AM, Basile Starynkevitch wrote:
> 2011-04-11 Basile Starynkevitch
>
> * gengtype.h (struct input_file_st): Add inpisplugin field.
> (type_fileloc): New function.
> * gengtype.c
> (write_typed_struct_alloc_def): Add gcc_assert.
> (write_typed_al
Dimitrios -
The patch is OK with a ChangeLog entry. Also a patch to fix the same
in gengtype.c:matching_file_name_substitute is pre-approved (but it
looks like Jeff will beat you to this :)
> P.S. I was trying to test gcc on a rare arch (sparc-unknown-linux-gnu) but
> unfortunately the sparcstati
2011/5/16 Nicola Pero :
> 2011-05-16 Nicola Pero
>
> * gengtype.c (walk_type): Implemented "atomic" GTY option.
> * doc/gty.texi (GTY Options): Document "atomic" GTY option.
The patch is OK, with difference between "skip" and "atomic" options
documented. (Can be done as a follow-u
> 2011-05-15 Dmitry Gorbachev
>
> * gengtype-state.c (read_state_param_structs): Initialize "previous".
The logic in the function is OK, is this to silence some false positive warning?
In any case, the patch is OK, I assume you have tested it.
Thanks,
--
Laurynas
2011/5/19 Nicola Pero :
> Ok to go ?
> +2011-05-20 Nicola Pero
> +
> + * gengtype.c (walk_type): Implemented "atomic" GTY option.
> + * doc/gty.texi (GTY Options): Document "atomic" GTY option.
I assume it received the usual testing? If yes, then OK. Thanks!
--
Laurynas
2011/5/20 Nicola Pero :
> I'd like to show you a testcase, but, as you discuss in your other email, we
> can't
> really write GTY testcases at this stage. So here is a walked tour of how to
> test
> the new atomic option --
[...]
> To test that the GC marking actually works, I mostly bootstrap t
I will be able to look into this on Monday, not earlier, sorry.
2011/3/18 Diego Novillo :
> I think gengtype is failing me here, but I'm not sure. In PR 48167 we
> are failing to link cc1objplus because of undefined references:
>
> cp/parser.o:(.rodata+0x2b18): undefined reference to `gt_ggc_mx_c
2011/3/18 Nicola Pero :
> Index: gcc/ChangeLog
> ===
> --- gcc/ChangeLog (revision 171155)
> +++ gcc/ChangeLog (working copy)
> @@ -1,3 +1,7 @@
> +2011-03-18 Nicola Pero
> +
> + * gengtype.c (files_rules): Added ru
sharing of CONST_VECTOR rtxes. If that impacts memory usage
too much, a new hash table can be introduced for storing them. That is for
later, though.
Committed to gc-improv.
2011-03-29 Laurynas Biveinis
* rtl.h (use_rtl_permanent_mem): New.
(use_rtl_function_mem): New
Hello Basile -
The patch is correct in general. But a few nitpicks:
> 2011-04-04 Basile Starynkevitch
>* gengtype.c (write_typed_alloc_def): Gets extra outf_p argument
>and use it.
...: New argument f. Use it instead of header_file.
>(write_typed_struct_alloc_def, wr
Committed to gc-improv.
2011-04-07 Laurynas Biveinis
* rtl.h (gen_rtx_CONST): New.
Index: rtl.h
===
--- rtl.h (revision 171651)
+++ rtl.h (working copy)
@@ -2188,6 +2188,7 @@
generation functions included above do the
Fixes a bunch of C testsuite failures. Committed to gc-improv.
2011-04-07 Laurynas Biveinis
* stmt.c (label_rtx): Allocate RTX in permanent RTL memory.
Index: stmt.c
===
--- stmt.c (revision 170593)
+++ stmt.c (working
> 2011-04-08 Basile Starynkevitch
> * gengtype.c (write_typed_alloc_def): New argument f. Use it instead
> of header_file.
> (write_typed_struct_alloc_def, write_typed_typedef_alloc_def)
> (write_typed_alloc_defns): Likewise.
> (main): Calls write_typed
2011/4/8 Steven Bosscher :
>> * stmt.c (label_rtx): Allocate RTX in permanent RTL memory.
>
> That looks strange, labels should be function specific, except
> non-local labels. Maybe you can get away with allocating DECL_NONLOCAL
> labels on the permanent rtl obstack?
That's a good idea, I
2011/4/8 Jeff Law :
> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA1
>
> On 04/08/11 07:21, Laurynas Biveinis wrote:
>> 2011/4/8 Steven Bosscher :
>>>> * stmt.c (label_rtx): Allocate RTX in permanent RTL memory.
>>>
>>> That looks strange, la
2011/4/9 Steven Bosscher :
> 4. RTL per function. GCC expands one GIMPLE function at a time, and
> the idea is to initialize the RTL obstack once when expanding starts,
> let it grow until final, and blow it away after final. Unlike 20 years
> ago, this obstack is never rolled back during RTL passe
2011/4/8 Basile Starynkevitch :
> Actually, the above committed patch is better than nothing, but not
> perfect. It happens to generate ggc_alloc macros for things which are
> not defined in the plugin (however, this is not a big deal in practice,
> since it generates some macros in common with tho
> So what's the plan for the case where you need to change the lifetime of
> an object?
Copying it. Frankly at the moment I don't how much trouble does deep
copying from scratch to function entails, as mentioned in your other
e-mail. ATM I am working at separating permanent from function. If it
tu
[Resending with the correct Mike's address, sorry for the spam]
> So what's the plan for the case where you need to change the lifetime of
> an object?
Copying it. Frankly at the moment I don't how much trouble does deep
copying from scratch to function entails, as mentioned in your other
e-mail.
2011/4/11 Basile Starynkevitch :
> On Fri, 8 Apr 2011 19:55:51 +0200
> Basile Starynkevitch wrote:
>
>> Committed revision 172203 (on trunk).
>>
>> Actually, the above committed patch is better than nothing, but not
>> perfect. It happens to generate ggc_alloc macros for things which are
>> not de
)
+++ ChangeLog (working copy)
@@ -1,3 +1,8 @@
+2014-04-24 Laurynas Biveinis
+
+ * MAINTAINERS: Move myself from Reviewers to Write After Approval
+ section.
+
2014-04-21 Rafael Ávila de Espíndola
* MAINTAINERS (Write After Approval): Delete myself.
Index: MAINTAINERS
> ISTR we went to typed allocs as part of a transition which not
> fully materialised?
Yes. I had plans to replace the call-based GC marker routines with a
generic routine that operates on a type marker stored next to the
object. That enables partial, generational, etc GC.
> I actually dislike t
PING
http://codereview.appspot.com/4250047
http://gcc.gnu.org/ml/gcc/2011-01/msg00363.html
this patch moves Valgrind header detection from "valgrind" checking to "misc"
and enables
the latter whenever the former is enabled.
If only "misc" is enabled, then Valgrind header presence is optional.
I
t sure the branch will be
ready for consideration for 4.7.
2011-06-02 Laurynas Biveinis
* varasm.c (make_decl_rtl): Allocate DECL_RTL in the permanent RTL
memory.
* rtl.c: (_obstack_allocated_p): Declare.
(allocated_in_function_mem_p): New.
(need_co
2011/10/11 Gary Funck :
> static GTY ((if_marked ("tree_map_marked_p"),
> param_is (struct tree_map)))
> htab_t upc_block_factor_for_type;
> [...]
> upc_block_factor_for_type = htab_create_ggc (512, tree_map_hash,
> tree_map_eq, 0);
>
> I
2011/10/13 Gary Funck :
> On 10/13/11 06:15:31, Laurynas Biveinis wrote:
>> [...] In your case (correct me if I misunderstood something)
>> you have one hash table, marking of which will mark more objects
>> which are required for the correct marking of the second hash table.
2011/10/20 Jan Kratochvil :
> Hi,
>
> with custom patched dwarf2out.c I got a crash on memory mangled by the garbage
> collector. With patched GTY there the crash no longer happened - but I do not
> have a reproducer anymore, sorry if it is a bogus patch.
>
> The memory corrupted later was initial
> While adjusting some GTY markers I started getting warnings about '^C' used
> but not defined; this looks to be a cut and paste error.
>
> Applying as obvious.
Good catch, thanks for fixing this.
--
Laurynas
> For scalar fields or skipped fields, gengtype produces empty loops.
> This patch checks for that case and breaks out if an empty loop body
> is detected:
> Bootstrapped&tested on powerpc64-unknown-linux-gnu. OK?
>
> Ciao!
> Steven
OK, thanks!
--
Laurynas
> I think it merely points to a bogus GTY annotation, not sure if we want to
> gobble this kind of gengtype hacks which only benefit -O0 ...
>
> The annotation is libcpp/include/line-map.h
>
> In the example above x1 (for token "+") is going to be the same
> as y1. x0 is the spelling loc
> gcc/lto/ChangeLog:
>
> 2012-07-24 Uros Bizjak
>
> * lto-tree.h (lang_decl): Add variable_size GTY option.
>
> gcc/go/ChangeLog:
>
> 2012-07-24 Uros Bizjak
>
> * go-lang.c (lang_decl): Add variable_size GTY option.
>
> gcc/c/ChangeLog:
>
> 2012-07-24 Uros Bizjak
>
>
2012/7/24 Steven Bosscher :
> On Tue, Jul 24, 2012 at 12:11 PM, Laurynas Biveinis
> wrote:
>>> I think it merely points to a bogus GTY annotation, not sure if we want to
>>> gobble this kind of gengtype hacks which only benefit -O0 ...
>> This one indeed looks redund
am_is") == 0
> || (strncmp (opt->name, "param", 5) == 0
> && ISDIGIT (opt->name[5])
s/arrays of scalar types/arrays of atomic types, add a ChangeLog entry
and the snippet above is approved ;)
libcpp:
2012-06-24 Laurynas Bivienis
>> s/arrays of scalar types/arrays of atomic types, add a ChangeLog entry
>> and the snippet above is approved ;)
>
> Can you commit it along with your fixes? I think it'd be good to keep
> this and your fixes together in a single commit.
OK
--
Laurynas
.
Java and libcpp parts are already approved.
Tested on x86_64 linux, no regressions. OK for trunk?
[1] http://gcc.gnu.org/ml/gcc-patches/2012-07/msg01204.html
gcc:
2012-07-27 Laurynas Biveinis
Steven Bosscher
* gengtype.c (adjust_field_type): Diagnose duplicate "l
Laurynas Biveinis
* gengtype.h (enum gc_vec_type_kind): New.
List individual vector kinds in the token codes.
* gengtype-lex.l: Handle DEF_VEC_A, DEF_VEC_O, DEF_VEC_P,
DEF_VEC_I individually.
* gengtype-parse.c (token_names): Replace "DEF_VEC_[OP]&
Hi -
> See http://gcc.gnu.org/PR53880#c27
>
> Could you please have a look at that problem, and see if you, with all
> your GTY-fu, see an easy way out?
It looks like you beat me to it :)
--
Laurynas
Steven -
> Bootstrapped&tested on powerpc64-unknown-linux-gnu. OK for trunk?
Thanks for working on this. It looks good, couple of minor comments:
Please add an assert that d->have_this_obj == true in
write_types_local_process_field, before the oprintf that outputs
"this_obj".
> @@ -3444,6 +3449
Ping?
2012/7/30 Laurynas Biveinis :
> I only remembered to add DEF_VEC_A handlgin to gengtype.c a second after
> committing the previous patch [1].
>
> Here it is, done as a follow up. With some luck, this will be short-lived
> code because of the C++ conversion.
>
> Boots
Diego -
It's all good changes and your plan for future improvements sounds
good, including the part where gengtype is killed with fire.
> - Functions should be emitted in files that have access to the
> structure where they were defined. I'm not convinced that the
> current multiplicity of g
2011/7/6 Basile Starynkevitch :
> * doc/plugins.texi (Building GCC plugins): gengtype needs its
> gtype.state
Replace "than" in the patch with "as".
I assume it passes make info?
OK with that change, thank you.
--
Laurynas
2011/7/18 Romain Geissler :
> * gengtype-state.c (#include "bconfig.h"): #include "config.h"
> with host CC
include "bconfig.h" if GENERATOR_FILE is defined, "config.h" otherwise.
> * gengtype.c: Likewise
>* gengtype-lex.l: Likewise
>* gengtype-parse.c: Likewi
PING again...
2011/5/28 Laurynas Biveinis :
> PING
>
> http://codereview.appspot.com/4250047
> http://gcc.gnu.org/ml/gcc/2011-01/msg00363.html
>
> this patch moves Valgrind header detection from "valgrind" checking to "misc"
> and enables
> the latter
Pinging yet again...
2011/7/22 Laurynas Biveinis :
> PING again...
>
> 2011/5/28 Laurynas Biveinis :
>> PING
>>
>> http://codereview.appspot.com/4250047
>> http://gcc.gnu.org/ml/gcc/2011-01/msg00363.html
>>
>> this patch moves Valgrind header detect
2011/8/16 Richard Guenther :
>> ggc_alloc_zone_vec_rtvec_def is for allocating an array of rtvec_def,
>> but you want a single (variable sized) rtvec_def, so
>> ggc_alloc_zone_rtvec_def is the correct function to call.
>
> I'm not so sure about that given the more strongly typing of our allocators.
2011/8/16 Andreas Schwab :
> * ggc.h (ggc_alloc_rtvec_sized): Use ggc_alloc_zone_rtvec_def
> instead of ggc_alloc_zone_vec_rtvec_def.
Thanks again,
--
Laurynas
2011/9/17 Dodji Seketeli :
> OK, so the patch below extracts a public ggc_alloced_size_for_request
> function from the different implementations of the ggc allocator's
> interface, and lets new_linemap use that.
> libcpp/
>
> * include/line-map.h (struct line_maps::alloced_size_for_request):
2012 m. balandis 10 d. 18:08, Dodji Seketeli rašė:
> gcc/
>
> * gengtype.c (write_types_process_field): Force second argument
> of the call to the PCH object hierarchy walker to be 'x'.
I guess it'd be better if we separated prev_val[3] and constant "x"
uses to separate walk_type_
> 2012-10-03 Basile Starynkevitch
>
> * gengtype.c (walk_type): Emit mark_hook when inside a
> struct of a union member.
This is OK.
Thanks,
--
Laurynas
> Tested on x86_64. OK for trunk?
Looks OK, with some very minor comments and questions below.
> static void
> -consume_until_semi (bool immediate)
> +consume_until_eos (void)
> {
> - if (immediate && token () != ';')
> -require (';');
>for (;;)
> switch (token ())
>{
>
>>> - if (s->u.s.line.file != NULL
>>> - || (s->u.s.lang_struct && (s->u.s.lang_struct->u.s.bitmap &
>>> bitmap)))
>>> + if (s->u.s.lang_struct && (s->u.s.lang_struct->u.s.bitmap & bitmap))
>>> {
>>> error_at_line (pos, "duplicate definition of '%s %s'",
>>>
> * gengtype.c (create_user_defined_type): Ensure that the kind
> is set to TYPE_USER_STRUCT, fixing a bug seen when an incomplete
> declaration is seen before the GTY((user)) marking.
This is OK, thank you.
--
Laurynas
Mike -
Unfortunately I cannot allocate time for the review of the gengtype
bits right now, and it's not clear when I will be able to.
2013/11/23 Mike Stump :
> Richi has asked the we break the wide-int patch so that the individual port
> and front end maintainers can review their parts without
Diego -
>>> * doc/gty.texi: Document support for C++ templates and
>>> user-provided markers.
>>
>>
>> The 1st node in this doc file needs s/C/C++/g and perhaps some more
>> explanation with an eye on C++.
>
>
> Sorry. I'm not sure what you are trying to say here.
I'm referring
Diego -
I have some relatively minor comments. In general, the these changes
and the adjusted GTY doc intro blurb you sent in the other email are
OK with the minor comments addressed and if no objections from global
maintainers.
> (walk_type): Set D->IN_PTR_FILED when walking a TYPE_POINT
Hi -
2012/8/30 Aaron Gray :
> First of two patches for class'ized cp/parser.c|h gives limited
> support for gengtype to parse C++ classes and enums as first class
> citizens.
Please sync with Diego to avoid duplicate work and/or conflicting designs.
Thanks,
--
Laurynas
Hello Basile -
> 2012-10-02 Basile Starynkevitch
>
> * gengtype.c (walk_type): Emit mark_hook when inside a
> struct of a union member.
Can you send me off-list the gengtype output before and after the fix?
+ const char *structmarkhook = NULL;
struct_mark_hook or just
> +2013-05-03 David Malcolm
> +
> + * gengtype-state.c: (indent_amount): New variable,
> + (had_recent_newline): likewise
> + (write_new_line): New function
> + (write_any_indent): likewise
> + (write_open_paren): likewise
> + (write_close_paren): likewise
> +
2013/5/6 Jeff Law :
> 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 generally working on removing global state. Seems to take a tiny
> s
> 2012-11-15 Diego Novillo
>
> * gengtype-lex.l (VEC): Remove.
> Add characters in the set [\!\>\.-].
> * gengtype-parse.c (token_names): Remove "VEC".
> (require_template_declaration): Remove handling of VEC_TOKEN.
> (type): Likewise.
> Call creat
> Folks, Parallel builds contain a race due to a missing dependency
> between gengtype-lex.o and $(BCONFIG_H).
>
> This was introduced by the commit:
>
> http://gcc.gnu.org/ml/gcc-patches/2010-11/msg00926.html
>
> .. which injects an include of bconfig.h into the top of
> gengtype-lex.c but does no
Diego -
> I will need a global reviewer to approve the patch. Laurynas,
> could you take a look to make sure I'm not forgetting to remove
> anything?
Cannot find anything.
> * gengtype.c (write_enum_defn): Remove. Update all users.
> (write_Types_process_field): Remove generati
63 matches
Mail list logo