| 3 ++-
9 files changed, 87 insertions(+), 32 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index 4f87c87..7ad116a 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,58 @@
2014-10-24 David Malcolm
imple-classes
index fb4c222..0e6a5d9 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,17 @@
2014-10-24 David Malcolm
+ tree-predcom.c: use gimple_phi in various places
+
+ * tree-predcom.c (find_looparound_phi): Return a gimple_phi rather
+
4 ++--
gcc/tree-tailcall.c | 2 +-
6 files changed, 44 insertions(+), 21 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index f0737b9..56fe40d 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,25 @@
2014-10-2
a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index b0a8465..b8d2f38 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,16 @@
2014-10-24 David Malcolm
+ tree-parloops.c: Use gimple_phi in various places
+
+ * tree-parloops.c (r
git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index d2bc077..5cf1049 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,12 @@
2014-10-24 David Malcolm
+ Concretize gimple_call_use_set and gimple_call_clobber_set
+
+ * gimpl
gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index a162b12..f7d2c73 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,12 @@
2014-10-24 David Malcolm
+ Make gimple_phi_arg_set_location require a gimple_phi
+
+ * gimpl
lasses b/gcc/ChangeLog.gimple-classes
index afdccbe..983819a 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,47 @@
2014-10-24 David Malcolm
+ Introduce gimple_try
+
+ * coretypes.h (gimple_try): New typedef.
+ (const_gimple_
sa-alias.h | 4 +-
gcc/tree-ssa-dce.c | 2 +-
gcc/tree-ssa-loop-prefetch.c | 2 +-
gcc/tree-ssa-math-opts.c | 2 +-
gcc/tree-ssa-operands.c | 4 +-
gcc/tree-ssa-pre.c | 2 +-
gcc/tree-ssa-sccvn.c | 17 +--
gcc/tree-ssa-sccvn.h | 2 +-
cc/gimplify.c | 2 +-
3 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index ba0f5c1..b874697 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,14 @@
2014-10-24
hanged, 98 insertions(+), 43 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index ec16551..7c2b168 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,60 @@
2014-10-24 David Malcolm
+ Introduce gimple_phi and u
100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,121 @@
2014-10-24 David Malcolm
+ Introduce gimple_phi_iterator
+
+ * gimple-iterator.h (struct gimple_phi_iterator): New subclass of
+ gimple_stmt_iterator with identical layout, but adding
ee-inline.c| 6 --
5 files changed, 43 insertions(+), 22 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index 8662070..9654b49 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,24 @@
ple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,15 @@
2014-10-24 David Malcolm
+ Concretize gimple_call_set_nothrow
+
+ * gimple.h (gimple_call_set_nothrow): Require a gimple_call.
+
+ * trans-mem.c (ipa_tm_insert_gettmclone_call): Likew
hangeLog.gimple-classes
index 9654b49..115f7ea 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,61 @@
2014-10-24 David Malcolm
+ Use gimple_call for callgraph edges
+
+ * cgraph.h (cgraph_edge::call_stmt): Strengthen field from plain
+
ses
@@ -1,5 +1,49 @@
2014-10-24 David Malcolm
+ Use subclasses of gimple in various places
+
+ * asan.c (insert_if_then_before_iter): Require a gimple cond
+ rathern than a plain gimple.
+ (asan_expand_check_ifn): Add a checked cast to gimple_c
a 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,61 @@
2014-10-24 David Malcolm
+ Introduce gimple_eh_else
+
+ * coretypes.h (gimple_eh_else): New typedef.
+ (const_gimple_eh_else): New typedef.
+
+ * gimple.h (gimple_buil
le-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,23 @@
2014-10-24 David Malcolm
+ Introduce gimple_eh_filter
+
+ * coretypes.h (gimple_eh_filter): New typedef.
+ (const_gimple_eh_filter): New typedef.
+
+ * gimple.h (gimple_build_eh_filter): Return a gimple_eh_filter
+
changed, 10 insertions(+), 15 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index e925118..b0c61d1 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,12 @@
2014-10-27 David Malcolm
+ * gimple.h (struct gdebug
iles changed, 81 insertions(+), 43 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index 5e6b383..3026787 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,42 @@
2014-10-24 David Malcolm
+ Introduce gimple
gimple-classes
index 5a271ca..f2f9a05 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,30 @@
2014-10-24 David Malcolm
+ Make gimple_phi_arg_location require a gimple_phi.
+
+ * gimple.h (gimple_phi_arg_location): Require a gimple_phi.
x 4006f14..c28facc 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,27 @@
2014-10-24 David Malcolm
+ Update various expressions within tree-scalar-evolution.c to be
gimple_phi
+
+ * tree-scalar-evolution.c (follow_ssa_edge): Require a gimple_p
sa-dce.c | 3 +-
gcc/tree-ssa-live.c | 2 +-
gcc/tree-ssa-propagate.c| 14 ---
gcc/tree-ssa-sink.c | 8 ++--
gcc/tree-ssa-uninit.c | 50 ++++
15 files changed, 157 insertions(+), 64 deletions(-)
di
ged, 25 insertions(+), 10 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index c28facc..627e6a2 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,19 @@
2014-10-24 David Malcolm
+ Concretize get_loop_exit_cond
, 9 insertions(+), 2 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index 6fd5738..63e5a8c 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,12 @@
2014-10-24 David Malcolm
+ Concretize parameter
--
gcc/ipa-icf.c| 8 +++---
gcc/tree-ssa-forwprop.c | 8 +++---
gcc/tree-ssa-reassoc.c | 2 +-
9 files changed, 136 insertions(+), 63 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index aec5065..133965c 100644
---
On Tue, 2014-10-28 at 14:47 -0400, David Malcolm wrote:
> Merger of changes on trunk from r216157 (2014-10-13) to
> r216746 (2014-10-27) into the dmalcolm/gimple-classes branch.
[...]
> Successfully bootstrapped®rtested on x86_64-unknown-linux-gnu
> (Fedora 20) - same results re
ns(+), 94 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index 50b87b9..10c3957 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,37 @@
2014-10-28 David Malcolm
+ * gimple.h (gimple_try_kind): Strengthen param
I've pushed the following three patches to the git branch
"dmalcolm/gimple-classes".
Successfully bootstrapped®rtested the combination of the three
patches on x86_64-unknown-linux-gnu (Fedora 20) - same results
relative to an unpatched control bootstrap of trunk's r21674
965c..b7a62de 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,37 @@
2014-10-28 David Malcolm
+ * doc/gimple.texi (Class hierarchy of GIMPLE statements): Update
+ for renaming of gimple_statement_wce to gwce.
+ * gimple-walk.c (walk_gim
ge.c| 2 +-
gcc/tree-ssa-threadupdate.c | 2 +-
16 files changed, 87 insertions(+), 39 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index b7a62de..50b87b9 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,47 @@
2014-10-28
ons(+), 23 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index 68add33..626ea2f 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,19 @@
2014-10-29 David Malcolm
+ * gimple.h (gimple_omp_teams_clauses): S
I've pushed the following ten patches to the git branch
"dmalcolm/gimple-classes".
Successfully bootstrapped®rtested the combination of the ten
patches upon the branch on x86_64-unknown-linux-gnu (Fedora 20) -
same results relative to an unpatched control bootstrap of trunk
| 13 ++---
gcc/tree-inline.c| 21
7 files changed, 145 insertions(+), 126 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index 10c3957..07ebee7 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@
---
6 files changed, 184 insertions(+), 125 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index f265a25..cc8b97b 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,30 @@
2014-10-29 David Malcolm
+
.
+ (refactor_eh_r): Add a checked cast.
+ * tree-inline.c (remap_gimple_stmt): Within case
+ GIMPLE_EH_FILTER, introduce local "filter_stmt" via a checked cast
+ and use in place of "stmt".
+ (estimate_num_insns): Add check
| 39 +-
gcc/gimple.h | 136 ---
gcc/omp-low.c| 167 ++-
gcc/tree-inline.c| 52 +-
gcc/tree-nested.c| 42 ++-
7 files changed, 330 ins
.gimple-classes
index 626ea2f..469c009 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,29 @@
2014-10-29 David Malcolm
+ * gimple.h (gimple_omp_sections_clauses): Strengthen param from
+ const_gimple to const gomp_sections *.
+ (
ons(+), 23 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index d85abcd..f265a25 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,19 @@
2014-10-29 David Malcolm
+ * gimple.h (gimple_omp_single_clauses): S
| 27 +--
gcc/omp-low.c| 44 +---
6 files changed, 78 insertions(+), 43 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index 469c009..d85abcd 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-cl
s
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,31 @@
2014-10-29 David Malcolm
+ * coretypes.h (struct gpredict): Add forward declaration.
+ * doc/gimple.texi (Class hierarchy of GIMPLE statements): Add
+ gpredict.
+ * gimple-pretty-print.c (pp_gimple_stmt_1): Within ca
gimple-classes b/gcc/ChangeLog.gimple-classes
index cc8b97b..e8001f4 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,26 @@
2014-10-29 David Malcolm
+ * gimple.h (gimple_omp_parallel_combined_p): Strengthen param from
+ const_gimple to
On Tue, 2014-10-21 at 15:24 -0400, David Malcolm wrote:
> On Tue, 2014-10-21 at 18:15 +0200, Gerald Pfeifer wrote:
> > On Monday 2014-10-20 15:19, David Malcolm wrote:
> > > +@item Sphinx (any working version)
> >
> > As opposed to "any non-working version"
On Fri, 2014-10-17 at 21:52 +, Joseph S. Myers wrote:
> Does libgccjit.so end up getting linked with -static-libstdc++
> -static-libgcc?
(sorry for belated reply)
It does when built with a bootstrap, but doesn't with
--disable-bootstrap. In the former case, the builddir's gcc/Makefile in
th
/ChangeLog.jit
index ce0ad40..90fccdb 100644
--- a/gcc/jit/ChangeLog.jit
+++ b/gcc/jit/ChangeLog.jit
@@ -1,3 +1,7 @@
+2014-10-30 David Malcolm
+
+ * dummy-frontend.c (jit_langhook_init): Remove some dead code.
+
2014-10-27 David Malcolm
* dummy-frontend.c: Drop includes of
I'd like to merge the JIT branch into trunk:
https://gcc.gnu.org/wiki/JIT
This is "v3" since it incorporates fixes for various issues
identified in earlier submissions:
v1: https://gcc.gnu.org/ml/gcc-patches/2014-09/msg02056.html
v2: https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01168.html
An earlier version of this was posted as:
"[PATCH 2/5] gcc: configure and Makefile changes needed by jit"
https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01169.html
Since then, I've eliminated the gcc_version, bindir, and pkgconfigdir
additions, and added the FULL_DRIVER_NAME variable and syml
In https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01793.html,
Joseph said:
> Although Sphinx isn't a build dependency, as a dependency for
> regenerating checked-in files I think it should be documented in
> install.texi (like autoconf, gettext, etc.).
This patch adds such documentation.
gcc/Chan
David Malcolm
SLSR Bill Schmidt
+jit David Malcolm
Note that individuals who maintain parts of the compiler need approval to
check in changes outside of the parts of the compiler they maintain.
diff --git a/contrib
gcc/jit/
* config-lang.in: New.
---
gcc/jit/config-lang.in | 38 ++
1 file changed, 38 insertions(+)
create mode 100644 gcc/jit/config-lang.in
diff --git a/gcc/jit/config-lang.in b/gcc/jit/config-lang.in
new file mode 100644
index 000..7a32afe
---
(+)
create mode 100644 gcc/jit/docs/index.rst
diff --git a/gcc/jit/docs/index.rst b/gcc/jit/docs/index.rst
new file mode 100644
index 000..ed75e36
--- /dev/null
+++ b/gcc/jit/docs/index.rst
@@ -0,0 +1,50 @@
+.. Copyright (C) 2014 Free Software Foundation, Inc.
+ Originally contributed by David
/gcc/jit/libgccjit.map b/gcc/jit/libgccjit.map
new file mode 100644
index 000..d4ba7b6
--- /dev/null
+++ b/gcc/jit/libgccjit.map
@@ -0,0 +1,100 @@
+# Linker script for libgccjit.so
+# Copyright (C) 2013-2014 Free Software Foundation, Inc.
+# Contributed by David Malcolm .
+#
+# This file is
When I previously submitted the jit for review, I posted all of the
documentation as one big patch, as:
"[PATCH 08/10] Documentation for the JIT library (Re: Patches 5-10 of jit
merger)"
https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01392.html
Since then, I've:
* eliminated all mentions
gcc/jit/
* dummy-frontend.c: New.
---
gcc/jit/dummy-frontend.c | 240 +++
1 file changed, 240 insertions(+)
create mode 100644 gcc/jit/dummy-frontend.c
diff --git a/gcc/jit/dummy-frontend.c b/gcc/jit/dummy-frontend.c
new file mode 100644
index
gcc/jit/
* Make-lang.in: New.
---
gcc/jit/Make-lang.in | 298 +++
1 file changed, 298 insertions(+)
create mode 100644 gcc/jit/Make-lang.in
diff --git a/gcc/jit/Make-lang.in b/gcc/jit/Make-lang.in
new file mode 100644
index 000..167fcad
This patch adds examples. These examples are used included
by the documentation when it is built, and are run as code by the
testsuite, ensuring that the examples shown in the docs build and
run.
gcc/jit/
* docs/examples/tut01-hello-world.c: New.
* docs/examples/tut02-square.c: Ne
Foundation, Inc.
+ Originally contributed by David Malcolm
+
+ This is free software: you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) a
diff --git a/gcc/jit/jit-common.h b/gcc/jit/jit-common.h
new file mode 100644
index 000..58e4a8c
--- /dev/null
+++ b/gcc/jit/jit-common.h
@@ -0,0 +1,182 @@
+/* Core of implementation of libgccjit.so
+ Copyright (C) 2013-2014 Free Software Foundation, Inc.
+ Contributed by David Malcolm
+ API
+ Copyright (C) 2013-2014 Free Software Foundation, Inc.
+ Contributed by David Malcolm .
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by
+the Free Software Foundation; either vers
recording calls made to the JIT API.
+ Copyright (C) 2013-2014 Free Software Foundation, Inc.
+ Contributed by David Malcolm .
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by
+the Free
This is a list of TODOs for working on the JIT.
gcc/jit/
* TODO.rst: New.
---
gcc/jit/TODO.rst | 119 +++
1 file changed, 119 insertions(+)
create mode 100644 gcc/jit/TODO.rst
diff --git a/gcc/jit/TODO.rst b/gcc/jit/TODO.rst
new file m
These files implement support for builtins, for the
gcc_jit_context_get_builtin_function
API entrypoint.
Only a subset of builtins are currently supported, based on those
that I needed when porting GNU Octave's JIT.
Attempts to use other builtins may lead to an error:
"unimplemented primitive
This header is the public API for the library.
gcc/jit/
* libgccjit.h: New.
---
gcc/jit/libgccjit.h | 977
1 file changed, 977 insertions(+)
create mode 100644 gcc/jit/libgccjit.h
diff --git a/gcc/jit/libgccjit.h b/gcc/jit/libgccjit.h
c/jit/docs/topics/contexts.rst
new file mode 100644
index 000..d8dd4f8
--- /dev/null
+++ b/gcc/jit/docs/topics/contexts.rst
@@ -0,0 +1,315 @@
+.. Copyright (C) 2014 Free Software Foundation, Inc.
+ Originally contributed by David Malcolm
+
+ This is free software: you can redistribute it a
This adds a C++ wrapper API, with syntactic sugar for reducing the
verbosity compared to the C API.
gcc/jit/
* libgccjit++.h: New.
---
gcc/jit/libgccjit++.h | 1574 +
1 file changed, 1574 insertions(+)
create mode 100644 gcc/jit/libgccjit++
aying back recorded API calls.
+ Copyright (C) 2013-2014 Free Software Foundation, Inc.
+ Contributed by David Malcolm .
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by
+the Fre
) 2014 Free Software Foundation, Inc.
+ Originally contributed by David Malcolm
+
+ This is free software: you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your
calls made to the JIT API.
+ Copyright (C) 2013-2014 Free Software Foundation, Inc.
+ Contributed by David Malcolm .
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by
+the Free
aying back recorded API calls.
+ Copyright (C) 2013-2014 Free Software Foundation, Inc.
+ Contributed by David Malcolm .
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by
+the Free Software
An earlier version of this was posted as part of:
"[PATCH 06/10] Heart of the JIT implementation (was: Re: [PATCH 0/5]
Merger of jit branch (v2))"
https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01247.html
I've broken that up into separate patches for ease of review.
This first patch
On Fri, 2014-10-31 at 15:29 -0600, Jeff Law wrote:
> On 10/31/14 11:02, David Malcolm wrote:
> > The "intro" subdirectory of gcc/jit/docs consists of a 4-part tutorial
> > aimed at experienced developers who are new users of the library, taking
> > them from beginni
On Mon, 2014-11-03 at 13:22 -0700, Jeff Law wrote:
> On 10/31/14 11:02, David Malcolm wrote:
> > This header is the public API for the library.
> >
> > gcc/jit/
> > * libgccjit.h: New.
> Given this is inside the JIT subdirectory, I'm not doing a depth revie
On Mon, 2014-11-03 at 14:27 -0700, Jeff Law wrote:
> On 10/31/14 11:02, David Malcolm wrote:
> > This file declares the gcc::jit::recording internal API, so that
> > libgccjit.c can record the calls that are made to the public API, for
> > later playback by the dummy fron
On Mon, 2014-11-03 at 15:03 -0700, Jeff Law wrote:
> On 10/31/14 11:02, David Malcolm wrote:
> > Implementation of the gcc::jit::recording internal API, so that
> > libgccjit.c can record the calls that are made to the public API, for
> > later playback by the dummy fron
On Mon, 2014-11-03 at 14:04 -0700, Jeff Law wrote:
> On 10/31/14 11:02, David Malcolm wrote:
> > These files implement support for builtins, for the
> >gcc_jit_context_get_builtin_function
> > API entrypoint.
> >
> > Only a subset of builtins are currently sup
On Mon, 2014-11-03 at 13:32 -0700, Jeff Law wrote:
> On 10/31/14 11:02, David Malcolm wrote:
> > This file implements the entrypoints of the library's public API.
> >
> > It performs error-checking at this boundary, before calling into the
> > jit-recording
On Tue, 2014-11-04 at 16:45 -0800, Cesar Philippidis wrote:
> Here's an updated version of my nested function patch.
>
> David, I tweaked the gimple class hierarchy a little bit. Here's what
> the updated class diagram looks like:
>
> + gimple_statement_omp
> | |layout: GSS_OMP.
On Tue, 2014-11-04 at 14:39 -0700, Jeff Law wrote:
> On 11/04/14 09:57, David Malcolm wrote:
> >>> +#define IS_ASCII_DIGIT(CHAR) \
> >>> + ((CHAR) >= '0' && (CHAR) <='9')
> >>> +
> >>> +#define IS_ASCII_ALNUM(CH
cc/jit/ChangeLog.jit b/gcc/jit/ChangeLog.jit
index 3d6361c..ce927d6 100644
--- a/gcc/jit/ChangeLog.jit
+++ b/gcc/jit/ChangeLog.jit
@@ -1,5 +1,17 @@
2014-11-05 David Malcolm
+ * libgccjit.c (gcc_jit_context_get_type): Verify that "type"
+ is valid immediately, rather than r
/ChangeLog.jit
@@ -1,5 +1,122 @@
2014-11-05 David Malcolm
+ * docs/topics/expressions.rst (Type-coercion): Casts between
+ pointer types are valid.
+ * libgccjit.c: Document that gcc_jit_context et al are actually
+ subclasses of the gcc::jit::recording classes
On Tue, 2014-11-04 at 14:39 -0700, Jeff Law wrote:
> On 11/04/14 09:57, David Malcolm wrote:
> >>> +#define IS_ASCII_DIGIT(CHAR) \
> >>> + ((CHAR) >= '0' && (CHAR) <='9')
> >>> +
> >>> +#define IS_ASCII_ALNUM(CH
On Tue, 2014-11-04 at 15:21 -0700, Jeff Law wrote:
> On 10/31/14 11:02, David Malcolm wrote:
> > This files implements the gcc::jit::playback internal API, called by
> > the dummy "frontend" to replay the public API calls made to the
> > library. A thin wrappe
Here are some minor tweaks I've made on the JIT branch since v3 of
the review began.
Are the following OK for trunk, assuming the rest of the JIT work
is approved?
David Malcolm (3):
New test cases
Documentation tweak
Add comments to various functions in libgccjit.h
gcc/jit/docs/t
gcc/jit/
* docs/topics/expressions.rst (Type-coercion): Note that
we support casting between pointer types.
---
gcc/jit/docs/topics/expressions.rst | 1 +
1 file changed, 1 insertion(+)
diff --git a/gcc/jit/docs/topics/expressions.rst
b/gcc/jit/docs/topics/expressions.rst
index a
---
gcc/jit/libgccjit.h | 21 +++--
1 file changed, 15 insertions(+), 6 deletions(-)
diff --git a/gcc/jit/libgccjit.h b/gcc/jit/libgccjit.h
index 8e03412..e07002d 100644
--- a/gcc/jit/libgccjit.h
+++ b/gcc/jit/libgccjit.h
@@ -123,11 +123,7 @@ typedef struct gcc_jit_lvalue gcc_jit_
gcc/testsuite:
* jit.dg/test-error-get-type-bad-enum.c: New.
* jit.dg/test-error-new-binary-op-bad-op.c: New.
* jit.dg/test-error-new-function-bad-kind.c: New.
* jit.dg/test-error-new-unary-op-bad-op.c: New.
---
.../jit.dg/test-error-get-type-bad-enum.c | 2
oc.c | 3 ++-
gcc/tree-ssa-strlen.c| 2 +-
4 files changed, 31 insertions(+), 13 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index 33bd5bf..5c3cbd5 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,19 @@
gimple-classes b/gcc/ChangeLog.gimple-classes
index 9998737..a47c471 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,20 @@
2014-10-30 David Malcolm
+ * gimple-fold.c (replace_call_with_call_and_fold): Strengthen
+ param "r
n the branch on x86_64-unknown-linux-gnu (Fedora 20) -
same results relative to an unpatched control bootstrap of trunk's
r216746.
David Malcolm (44):
Use gassign * rather than gimple in various places
Make replace_call_with_call_and_fold work on a gcall *
gimple-low.c: Use gcall * i
2 files changed, 29 insertions(+), 16 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index a47c471..5b408e3 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,3 +1,12 @@
+2014-10-31 David Malcolm
+
+ * gimple-low.c
| 9 ---
gcc/tree-nrv.c | 12 +
gcc/tree-ssa-ccp.c | 4 +--
gcc/tree-ssa-copyrename.c| 6 ++---
gcc/tree-ssa-loop-niter.c| 4 +--
gcc/tree-vect-stmts.c| 7 ++---
14 files changed, 177 insertions(+), 72 deletions(-)
diff --git a/gcc
+-
gcc/tree-ssa-math-opts.c | 31 ++--
gcc/tree-ssa-phiopt.c| 3 +-
gcc/tree-ssa-pre.c | 2 +-
gcc/tree-ssa-reassoc.c | 2 +-
gcc/tree-ssa-strlen.c | 22 +
gcc/tree-switch-conversion.c | 4 +-
gcc/tree-vect-data-refs.c| 8 ++--
gcc/t
166 +++
2 files changed, 123 insertions(+), 76 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index dc1315e..be9aa76 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,38 @@
2014-11-03 D
/ChangeLog.gimple-classes
index a60a771..5902705 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,27 @@
2014-10-31 David Malcolm
+ * tree-ssa-forwprop.c (get_prop_source_stmt): Strengthen return
+ type and local "def_stmt" f
-
gcc/tree-ssa-propagate.c | 4 ++--
7 files changed, 34 insertions(+), 16 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index e2fb3d2..33bd5bf 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,22 @@
2014-10-31 Da
/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index 7055011..7834eb0 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,10 @@
2014-11-03 David Malcolm
+ * tree-eh.c (stmt_could_throw_1_p): Add checked casts.
+ (sink_clobbers): Add checked
@
2014-11-03 David Malcolm
+ * gimplify-me.c (gimple_regimplify_operands): Replace a couple of
+ is_gimple_assign calls with dyn_cast, introducing locals
+ "assign_stmt" and using them in place of "stmt" for typesafety.
+
+2014-11-03 Da
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,19 @@
2014-10-31 David Malcolm
+ * config/i386/i386.c (add_condition_to_bb): Strengthen local
+ "call_cond_stmt" from gimple to gcall *.
+ * gimple-fold.c (gimple_build): Likewise for l
ses b/gcc/ChangeLog.gimple-classes
index ca6b1be..c7ca9fd 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,13 @@
2014-11-03 David Malcolm
+ * tree-ssa-coalesce.c (build_ssa_conflict_graph): Replace
+ is_gimple_assign with dyn_cast, introducing
index 9233d8a..ca6b1be 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-classes
@@ -1,5 +1,18 @@
2014-11-03 David Malcolm
+ * tree-ssa-ccp.c (get_default_value): Replace is_gimple_assign
+ with a dyn_cast, introducing local "assign_stmt",
11 +++
gcc/tree-ssa-copy.c | 26 ++
2 files changed, 25 insertions(+), 12 deletions(-)
diff --git a/gcc/ChangeLog.gimple-classes b/gcc/ChangeLog.gimple-classes
index c7ca9fd..19a8295 100644
--- a/gcc/ChangeLog.gimple-classes
+++ b/gcc/ChangeLog.gimple-c
2201 - 2300 of 5457 matches
Mail list logo