[BRIGFE] Reduce the number of type conversions due to
authorHenry Linjamäki <henry.linjamaki@parmance.com>
Thu, 16 Nov 2017 17:20:45 +0000 (17:20 +0000)
committerPekka Jääskeläinen <visit0r@gcc.gnu.org>
Thu, 16 Nov 2017 17:20:45 +0000 (17:20 +0000)
commitdc03239c2d8607a0f5cdb13a220bcf0c7f8ed7cd
treef2316102f532f913f50ba2931a318058c4bc88e0
parent35a282e0bc285f2b62dd29220a6ef3a3ed87a0b3
[BRIGFE] Reduce the number of type conversions due to
the untyped HSAIL regs.

Instead of always representing the HSAIL's untyped registers as
unsigned int, the gccbrig now pre-analyzes the BRIG code and
builds the register variables as a type used the most when storing
or reading data to/from each register. This reduces the total
conversions which cannot be always optimized away.

From-SVN: r254837
17 files changed:
gcc/brig/ChangeLog
gcc/brig/brigfrontend/brig-basic-inst-handler.cc
gcc/brig/brigfrontend/brig-code-entry-handler.cc
gcc/brig/brigfrontend/brig-code-entry-handler.h
gcc/brig/brigfrontend/brig-copy-move-inst-handler.cc
gcc/brig/brigfrontend/brig-cvt-inst-handler.cc
gcc/brig/brigfrontend/brig-function.cc
gcc/brig/brigfrontend/brig-function.h
gcc/brig/brigfrontend/brig-mem-inst-handler.cc
gcc/brig/brigfrontend/brig-to-generic.cc
gcc/brig/brigfrontend/brig-to-generic.h
gcc/brig/brigfrontend/brig-util.cc
gcc/brig/brigfrontend/brig-util.h
gcc/testsuite/ChangeLog
gcc/testsuite/brig.dg/test/gimple/internal-casts.hsail [new file with mode: 0644]
gcc/testsuite/brig.dg/test/gimple/packed.hsail
gcc/testsuite/brig.dg/test/gimple/vector.hsail