aboutsummaryrefslogtreecommitdiff
path: root/gcc/brig/ChangeLog
diff options
context:
space:
mode:
authorHenry Linjamäki <henry.linjamaki@parmance.com>2017-11-16 17:20:45 +0000
committerPekka Jääskeläinen <visit0r@gcc.gnu.org>2017-11-16 17:20:45 +0000
commitdc03239c2d8607a0f5cdb13a220bcf0c7f8ed7cd (patch)
treef2316102f532f913f50ba2931a318058c4bc88e0 /gcc/brig/ChangeLog
parent35a282e0bc285f2b62dd29220a6ef3a3ed87a0b3 (diff)
downloadgcc-dc03239c2d8607a0f5cdb13a220bcf0c7f8ed7cd.zip
gcc-dc03239c2d8607a0f5cdb13a220bcf0c7f8ed7cd.tar.gz
gcc-dc03239c2d8607a0f5cdb13a220bcf0c7f8ed7cd.tar.bz2
[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
Diffstat (limited to 'gcc/brig/ChangeLog')
-rw-r--r--gcc/brig/ChangeLog24
1 files changed, 24 insertions, 0 deletions
diff --git a/gcc/brig/ChangeLog b/gcc/brig/ChangeLog
index 0945aa4..17cc3bc 100644
--- a/gcc/brig/ChangeLog
+++ b/gcc/brig/ChangeLog
@@ -1,3 +1,27 @@
+2017-11-16 Henry Linjamäki <henry.linjamaki@parmance.com>
+
+ Change internal representation of HSA registers. Instead
+ representing HSA's untyped registers as unsigned int the gccbrig
+ analyzes brig code and builds the register variables as a type
+ used in tree expressions at most. This gives better chance to
+ optimize CONVERT_VIEW_EXPRs away.
+ * brigfrontend/brig-code-entry-handler.cc: Add analysis method for
+ register type usage. Handle any-typed register variables.
+ * brigfrontend/brig-code-entry-handler.h: New declarations for the
+ above.
+ * brigfrontend/brig-copy-move-inst-handler.cc: Handle any-typed
+ register variables.
+ * brigfrontend/brig-cvt-inst-handler.cc: Likewise.
+ * brigfrontend/brig-function.cc: Build register variables as a
+ type based on results of analysis phase.
+ * brigfrontend/brig-function.h: Move HSA register count defines to
+ brig-utils.h.
+ * brigfrontend/brig-to-generic.cc: New analysis handler. Analyze
+ HSA register usage.
+ * brigfrontend/brig-to-generic.h: New declarations.
+ * brigfrontend/brig-util.cc: New utility functions.
+ * brigfrontend/brig-util.h: New declarations for the above.
+
2017-11-16 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com>
* gccbrig.texi: Added some documentation.