[COMMITTED 0/3] Allow front end use of the static chain

Richard Henderson rth@redhat.com
Wed Nov 19 14:59:00 GMT 2014


This is the middle-end and C front end parts of the gccgo related
patch set first posted here.

  https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01009.html

I've re-tested these patches in isolation and have committed them
to mainline.  I'm currently submitting the Go portions for the
upstream review, and hope to have to libffi merge complete soon.

I think it's important that the change to Go using the static chain
happen before gcc5, as it represents an ABI change.  Our next opportunity
to fix the bulk of the non-x86 targets would be gcc6 in a year's time.


r~


Richard Henderson (3):
  Make TARGET_STATIC_CHAIN allow a function type
  Allow the front-end to create calls with a static chain
  Allow the static chain to be set from C

 gcc/ChangeLog                | 27 ++++++++++++++++++++++++++
 gcc/c-family/c-common.c      |  2 ++
 gcc/c-family/c-common.h      |  2 +-
 gcc/c/c-parser.c             | 40 ++++++++++++++++++++++++++++++++++++++
 gcc/calls.c                  | 14 ++++++++------
 gcc/config/i386/i386.c       | 19 ++++++++++++------
 gcc/config/moxie/moxie.c     |  5 +----
 gcc/config/xtensa/xtensa.c   |  2 +-
 gcc/doc/extend.texi          | 13 +++++++++++++
 gcc/doc/tm.texi              |  2 +-
 gcc/gimple-fold.c            | 21 ++++++++++++++++++++
 gcc/gimplify.c               | 17 +++++++++++++++-
 gcc/target.def               |  6 +++---
 gcc/targhooks.c              |  5 +----
 gcc/testsuite/ChangeLog      |  5 +++++
 gcc/testsuite/gcc.dg/cwsc0.c | 16 +++++++++++++++
 gcc/testsuite/gcc.dg/cwsc1.c | 46 ++++++++++++++++++++++++++++++++++++++++++++
 gcc/tree-cfg.c               | 22 +++++++--------------
 18 files changed, 222 insertions(+), 42 deletions(-)
 create mode 100644 gcc/testsuite/gcc.dg/cwsc0.c
 create mode 100644 gcc/testsuite/gcc.dg/cwsc1.c

-- 
1.9.3



More information about the Gcc-patches mailing list