Hi, A gentle ping...
On Wed, Dec 14, 2016 at 7:15 PM, Pekka Jääskeläinen <pe...@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(-)