[brigfe] Small fixes

2017-01-27  Pekka Jaaskelainen  <pekka.jaaskelainen@parmance.com>

	* configure.ac: Moved the white list of enabling BRIG FE to
	libhsail-rt/configure.tgt.  
	* configure: Regenerated.
	* MAINTAINERS: Updated maintainers for BRIG FE and libhsail-rt.

gcc/
	* builtin-types.def: Use unsigned_char_type_node for BT_UINT8.  Use
	uint16_type_node for BT_UINT16.

gcc/brig/
	* config-lang.in: Removed stale target-libbrig reference.

libhsail-rt/
	* configure.tgt: Moved the white list of supported targets here
	from configure.ac.  Added i[3456789]86-*-linux* as a supported env
	for the BRIG FE.
	* README: Added a proper description of what libhsail-rt is.

From-SVN: r244978
This commit is contained in:
Martin Jambor 2017-01-27 15:35:07 +01:00
parent 71103b6104
commit f6a24a94a6
13 changed files with 118 additions and 36 deletions

View File

@ -1,4 +1,11 @@
2017-01-24 Pekka Jääskeläinen <pekka@parmance.com>
2017-01-27 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com>
* configure.ac: Moved the white list of enabling BRIG FE to
libhsail-rt/configure.tgt.
* configure: Regenerated.
* MAINTAINERS: Updated maintainers for BRIG FE and libhsail-rt.
2017-01-24 Pekka Jääskeläinen <pekka@parmance.com>
Martin Jambor <mjambor@suse.cz>
* Makefile.def (target_modules): Added libhsail-rt.

View File

@ -143,6 +143,8 @@ C front end/ISO C99 Joseph Myers <joseph@codesourcery.com>
C front end/ISO C99 Richard Henderson <rth@redhat.com>
Ada front end Arnaud Charlet <charlet@adacore.com>
Ada front end Eric Botcazou <ebotcazou@libertysurf.fr>
BRIG (HSAIL) front end Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com>
BRIG (HSAIL) front end Martin Jambor <mjambor@suse.cz>
c++ Jason Merrill <jason@redhat.com>
c++ Nathan Sidwell <nathan@acm.org>
go Ian Lance Taylor <ian@airs.com>
@ -170,6 +172,8 @@ libobjc Andrew Pinski <pinskia@gmail.com>
libquadmath Tobias Burnus <burnus@net-b.de>
libquadmath Jakub Jelinek <jakub@redhat.com>
libvtv Caroline Tice <cmtice@google.com>
libhsail-rt Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com>
libhsail-rt Martin Jambor <mjambor@suse.cz>
line map Dodji Seketeli <dodji@redhat.com>
soft-fp Joseph Myers <joseph@codesourcery.com>
scheduler (+ haifa) Jim Wilson <wilson@tuliptree.org>

33
configure vendored
View File

@ -3304,6 +3304,26 @@ $as_echo "yes" >&6; }
fi
fi
# Disable libhsail-rt on unsupported systems.
if test -d ${srcdir}/libhsail-rt; then
if test x$enable_libhsail_rt = x; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libhsail-rt support" >&5
$as_echo_n "checking for libhsail-rt support... " >&6; }
if (srcdir=${srcdir}/libhsail-rt; \
. ${srcdir}/configure.tgt; \
test -n "$UNSUPPORTED")
then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
unsupported_languages="$unsupported_languages brig"
# This implicitly disables also target-libhsail-rt as it won't
# get added to the build without BRIG FE.
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
fi
fi
fi
# Disable libquadmath for some systems.
@ -3483,19 +3503,6 @@ if test x$enable_libgo = x; then
esac
fi
# Disable the BRIG frontend and libhsail-rt on untested or known
# broken systems. Currently it has been tested only on x86_64 Linux
# of the upstream gcc targets. More targets shall be added after testing.
case "${target}" in
x86_64-*-linux*)
;;
*)
unsupported_languages="$unsupported_languages brig"
# This implicitly disables also target-libhsail-rt as it won't
# get added to the build without BRIG FE.
;;
esac
# Default libgloss CPU subdirectory.
libgloss_dir="$target_cpu"

View File

@ -634,6 +634,23 @@ if test -d ${srcdir}/libmpx; then
fi
fi
# Disable libhsail-rt on unsupported systems.
if test -d ${srcdir}/libhsail-rt; then
if test x$enable_libhsail_rt = x; then
AC_MSG_CHECKING([for libhsail-rt support])
if (srcdir=${srcdir}/libhsail-rt; \
. ${srcdir}/configure.tgt; \
test -n "$UNSUPPORTED")
then
AC_MSG_RESULT([no])
unsupported_languages="$unsupported_languages brig"
# This implicitly disables also target-libhsail-rt as it won't
# get added to the build without BRIG FE.
else
AC_MSG_RESULT([yes])
fi
fi
fi
# Disable libquadmath for some systems.
@ -813,19 +830,6 @@ if test x$enable_libgo = x; then
esac
fi
# Disable the BRIG frontend and libhsail-rt on untested or known
# broken systems. Currently it has been tested only on x86_64 Linux
# of the upstream gcc targets. More targets shall be added after testing.
case "${target}" in
x86_64-*-linux*)
;;
*)
unsupported_languages="$unsupported_languages brig"
# This implicitly disables also target-libhsail-rt as it won't
# get added to the build without BRIG FE.
;;
esac
# Default libgloss CPU subdirectory.
libgloss_dir="$target_cpu"

View File

@ -1,3 +1,8 @@
2017-01-27 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com>
* builtin-types.def: Use unsigned_char_type_node for BT_UINT8. Use
uint16_type_node for BT_UINT16.
2017-01-27 David Malcolm <dmalcolm@redhat.com>
* doc/sourcebuild.texi (Testsuites): Add "GIMPLE Tests" and

View File

@ -1,3 +1,7 @@
2017-01-27 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com>
* config-lang.in: Removed stale target-libbrig reference.
2017-01-26 Jakub Jelinek <jakub@redhat.com>
Update copyright years.

View File

@ -28,7 +28,7 @@ language="brig"
compilers="brig1\$(exeext)"
target_libs="target-libbrig target-libhsail-rt"
target_libs="target-libhsail-rt"
# The BRIG frontend is written in C++, so we need to build the C++
# compiler during stage 1. Note: when cross-compiling / not bootstrapping,

View File

@ -69,8 +69,8 @@ DEF_PRIMITIVE_TYPE (BT_INTMAX, intmax_type_node)
DEF_PRIMITIVE_TYPE (BT_UINTMAX, uintmax_type_node)
DEF_PRIMITIVE_TYPE (BT_INT8, signed_char_type_node)
DEF_PRIMITIVE_TYPE (BT_INT16, short_integer_type_node)
DEF_PRIMITIVE_TYPE (BT_UINT8, char_type_node)
DEF_PRIMITIVE_TYPE (BT_UINT16, short_unsigned_type_node)
DEF_PRIMITIVE_TYPE (BT_UINT8, unsigned_char_type_node)
DEF_PRIMITIVE_TYPE (BT_UINT16, uint16_type_node)
DEF_PRIMITIVE_TYPE (BT_UINT32, uint32_type_node)
DEF_PRIMITIVE_TYPE (BT_UINT64, uint64_type_node)
DEF_PRIMITIVE_TYPE (BT_WORD, (*lang_hooks.types.type_for_mode) (word_mode, 1))

View File

@ -273,7 +273,7 @@
PR tree-optimization/79159
* g++.dg/tree-ssa/pr79159.C: New test.
2017-01-24 Pekka Jääskeläinen <pekka@parmance.com>
2017-01-24 Pekka Jääskeläinen <pekka@parmance.com>
Martin Jambor <mjambor@suse.cz>
* lib/brig-dg.exp: New file.

View File

@ -1,4 +1,4 @@
2017-01-24 Pekka Jääskeläinen <pekka@parmance.com>
2017-01-24 Pekka Jääskeläinen <pekka@parmance.com>
Martin Jambor <mjambor@suse.cz>
* hsa.h: Moved here from libgomp/plugin/hsa.h.

View File

@ -1,3 +1,10 @@
2017-01-27 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com>
* configure.tgt: Moved the white list of supported targets here
from configure.ac. Added i[3456789]86-*-linux* as a supported env
for the BRIG FE.
* README: Added a proper description of what libhsail-rt is.
2017-01-26 Jakub Jelinek <jakub@redhat.com>
Update copyright years.

View File

@ -1,4 +1,10 @@
Run autoconf2.64 && automake-1.11 to regenerate the buildfiles.
You might need to manually tweak the minor automake version number
in configure.ac and aclocal.m4 (search for 1.11.6) in case your
local 1.11 minor version doesn't match.
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.

38
libhsail-rt/configure.tgt Normal file
View File

@ -0,0 +1,38 @@
# -*- shell-script -*-
# Copyright (C) 2012-2017 Free Software Foundation, Inc.
# Contributed by Pekka Jaaskelainen <pekka.jaaskelainen@parmance.com>
# for General Processor Tech.
#
# This file is part of the libhsail-rt.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files
# (the "Software"), to deal in the Software without restriction, including
# without limitation the rights to use, copy, modify, merge, publish,
# distribute, sublicense, and/or sell copies of the Software, and to
# permit persons to whom the Software is furnished to do so, subject to
# the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
# USE OR OTHER DEALINGS IN THE SOFTWARE.
# Disable the BRIG frontend and libhsail-rt on untested or known
# broken systems. Currently it has been tested only on x86_64 Linux
# of the upstream gcc targets. More targets shall be added after testing.
case "${target}" in
i[[3456789]]86-*linux*)
;;
x86_64-*-linux*)
;;
*)
UNSUPPORTED=1
;;
esac