gcc/libhsail-rt
Pekka Jääskeläinen d4b7f2ee4b [BRIGFE] Improved support for function and module scope group
segment variables.
    
PRM specs defines function and module scope group segment variables
as an experimental feature. However, PRM test suite uses and
hcc relies on them. In addition, hcc assumes certain group variable
layout in its dynamic group segment allocation code.
    
We cannot have global group memory offsets if we want to
both have kernel-specific group segment size and multiple kernels
calling the same functions that use function scope group memory
variables.
    
Now group segment is handled by separate book keeping of module
scope and function (kernel) offsets. Each function has a "frame"
in the group segment offset to which is given as an argument.

From-SVN: r253233
2017-09-27 15:40:24 +00:00
..
include/internal
rt
aclocal.m4
ChangeLog
configure
configure.ac
configure.tgt
Makefile.am
Makefile.in
README
target-config.h.in

This library implements the agent-side runtime functionality required
to run HSA finalized programs produced by the BRIG frontend.

The library contains both the code required to run kernels on the agent
and also functions implementing more complex HSAIL instructions.

rt/workitems.c contains the runtime entry function that manages multiple
work-item execution using fibers or simple for-loops (in case of work groups
without barriers).  Otherwise, the rest of the source files mostly contain
functions that typically map directly to HSAIL instructions.