[PATCH] BRIG frontend: request for a global review
Pekka Jääskeläinen
pekka@parmance.com
Thu Jan 12 14:55:00 GMT 2017
Hi,
A gentle ping...
On Wed, Dec 14, 2016 at 7:15 PM, Pekka Jääskeläinen <pekka@parmance.com> wrote:
> Hi,
>
> I'm calling for a global review for the BRIG frontend for inclusion in upstream.
> The copyright transfer has been taken care of.
>
> The patch set has been approved by Martin Jambor, the upcoming co-maintainer of
> the BRIG frontend, who asked me to send an updated patch set for a
> global reviewer
> to look at.
>
> Please find the patches attached to this email. An introduction and
> a diffstat is below.
>
> Best regards,
> Pekka
>
>
> --------
>
> This patch set adds a BRIG (HSAIL) frontend. It can be used as a core
> for an HSAIL finalizer implementation for processors with gcc backends.
>
> It is a bit unusual frontend as the consumed format is a binary
> representation. The textual HSAIL can be compiled to it with a separate
> assembler tool.
>
> The frontend has been mostly tested with the HSA 1.0 PRM conformance suite
> which it now passes. The accompanied GENERIC-scanning test suite is supposed
> to be only a smoke test.
>
> libhsail-rt implements HSAIL specific builtins and includes a simple runtime
> that implements SPMD execution via setcontext()/getcontext() or loops to
> execute multiple work-item work groups without SPMD/SIMD-default hardware.
>
> We've split it to 4 patches:
>
> 001 - the configuration file changes and misc.
> 002 - the frontend itself
> 003 - libhsail-rt
> 004 - the smoke test suite
>
> The diffstat is as follows:
>
> .gitignore | 2 +-
> Makefile.def | 3 +
> Makefile.in | 489 +
> configure | 1 +
> configure.ac | 1 +
> gcc/brig-builtins.def | 659 +
> gcc/brig/Make-lang.in | 247 +
> gcc/brig/brig-builtins.h | 99 +
> gcc/brig/brig-c.h | 66 +
> gcc/brig/brig-lang.c | 770 +
> gcc/brig/brigfrontend/brig-arg-block-handler.cc | 66 +
> gcc/brig/brigfrontend/brig-atomic-inst-handler.cc | 265 +
> gcc/brig/brigfrontend/brig-basic-inst-handler.cc | 865 +
> gcc/brig/brigfrontend/brig-branch-inst-handler.cc | 221 +
> gcc/brig/brigfrontend/brig-cmp-inst-handler.cc | 198 +
> gcc/brig/brigfrontend/brig-code-entry-handler.cc | 1719 ++
> gcc/brig/brigfrontend/brig-code-entry-handler.h | 425 +
> gcc/brig/brigfrontend/brig-comment-handler.cc | 39 +
> gcc/brig/brigfrontend/brig-control-handler.cc | 108 +
> .../brigfrontend/brig-copy-move-inst-handler.cc | 73 +
> gcc/brig/brigfrontend/brig-cvt-inst-handler.cc | 260 +
> gcc/brig/brigfrontend/brig-fbarrier-handler.cc | 44 +
> gcc/brig/brigfrontend/brig-function-handler.cc | 373 +
> gcc/brig/brigfrontend/brig-function.cc | 723 +
> gcc/brig/brigfrontend/brig-function.h | 213 +
> gcc/brig/brigfrontend/brig-inst-mod-handler.cc | 58 +
> gcc/brig/brigfrontend/brig-label-handler.cc | 37 +
> gcc/brig/brigfrontend/brig-lane-inst-handler.cc | 84 +
> gcc/brig/brigfrontend/brig-machine.c | 44 +
> gcc/brig/brigfrontend/brig-machine.h | 33 +
> gcc/brig/brigfrontend/brig-mem-inst-handler.cc | 180 +
> gcc/brig/brigfrontend/brig-module-handler.cc | 41 +
> gcc/brig/brigfrontend/brig-queue-inst-handler.cc | 93 +
> gcc/brig/brigfrontend/brig-seg-inst-handler.cc | 146 +
> gcc/brig/brigfrontend/brig-signal-inst-handler.cc | 42 +
> gcc/brig/brigfrontend/brig-to-generic.cc | 811 +
> gcc/brig/brigfrontend/brig-to-generic.h | 226 +
> gcc/brig/brigfrontend/brig-util.cc | 447 +
> gcc/brig/brigfrontend/brig-util.h | 53 +
> gcc/brig/brigfrontend/brig-variable-handler.cc | 264 +
> gcc/brig/brigfrontend/phsa.h | 69 +
> gcc/brig/brigspec.c | 135 +
> gcc/brig/config-lang.in | 41 +
> gcc/brig/lang-specs.h | 28 +
> gcc/brig/lang.opt | 41 +
> gcc/builtin-types.def | 80 +-
> gcc/builtins.def | 41 +
> gcc/config.in | 6 +
> gcc/configure | 6 +
> gcc/configure.ac | 5 +
> gcc/doc/frontends.texi | 2 +-
> gcc/doc/invoke.texi | 8 +
> gcc/doc/standards.texi | 8 +
> gcc/testsuite/brig.dg/README | 10 +
> gcc/testsuite/brig.dg/dg.exp | 27 +
> gcc/testsuite/brig.dg/test/gimple/alloca.hsail | 37 +
> gcc/testsuite/brig.dg/test/gimple/atomics.hsail | 33 +
> gcc/testsuite/brig.dg/test/gimple/branches.hsail | 58 +
> gcc/testsuite/brig.dg/test/gimple/fbarrier.hsail | 74 +
> .../brig.dg/test/gimple/function_calls.hsail | 59 +
> gcc/testsuite/brig.dg/test/gimple/kernarg.hsail | 25 +
> gcc/testsuite/brig.dg/test/gimple/mem.hsail | 39 +
> gcc/testsuite/brig.dg/test/gimple/mulhi.hsail | 33 +
> gcc/testsuite/brig.dg/test/gimple/packed.hsail | 78 +
> .../brig.dg/test/gimple/smoke_test.hsail | 91 +
> gcc/testsuite/brig.dg/test/gimple/variables.hsail | 124 +
> gcc/testsuite/brig.dg/test/gimple/vector.hsail | 57 +
> gcc/testsuite/lib/brig-dg.exp | 29 +
> gcc/testsuite/lib/brig.exp | 40 +
> include/hsa-interface.h | 630 +
> libhsail-rt/Makefile.am | 124 +
> libhsail-rt/Makefile.in | 740 +
> libhsail-rt/README | 4 +
> libhsail-rt/aclocal.m4 | 978 +
> libhsail-rt/config.h.in | 217 +
> libhsail-rt/configure | 17016 ++++++++++++++++++
> libhsail-rt/configure.ac | 151 +
> libhsail-rt/include/internal/fibers.h | 95 +
> .../include/internal/phsa-queue-interface.h | 60 +
> libhsail-rt/include/internal/phsa-rt.h | 94 +
> libhsail-rt/include/internal/workitems.h | 107 +
> libhsail-rt/m4/libtool.m4 | 7997 ++++++++
> libhsail-rt/m4/ltoptions.m4 | 384 +
> libhsail-rt/m4/ltsugar.m4 | 123 +
> libhsail-rt/m4/ltversion.m4 | 23 +
> libhsail-rt/m4/lt~obsolete.m4 | 98 +
> libhsail-rt/rt/arithmetic.c | 475 +
> libhsail-rt/rt/atomics.c | 115 +
> libhsail-rt/rt/bitstring.c | 190 +
> libhsail-rt/rt/fbarrier.c | 87 +
> libhsail-rt/rt/fibers.c | 212 +
> libhsail-rt/rt/fp16.c | 135 +
> libhsail-rt/rt/misc.c | 89 +
> libhsail-rt/rt/multimedia.c | 135 +
> libhsail-rt/rt/queue.c | 71 +
> libhsail-rt/rt/sat_arithmetic.c | 299 +
> libhsail-rt/rt/segment.c | 57 +
> libhsail-rt/rt/workitems.c | 952 +
> libhsail-rt/target-config.h.in | 68 +
> 99 files changed, 43495 insertions(+), 3 deletions(-)
More information about the Gcc-patches
mailing list