]>
Commit | Line | Data |
---|---|---|
1e25c5a9 PJ |
1 | 2018-05-04 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> |
2 | ||
3 | * brig/brigfrontend/brig-function-handler.cc: Skip multiple forward | |
4 | declarations of the same function. | |
5 | ||
60a3d46c PJ |
6 | 2018-05-04 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> |
7 | ||
8 | * brig/brig-lang.c: Do not allow optimizations based on known C | |
9 | builtins. | |
10 | ||
77c42d45 PJ |
11 | 2018-05-04 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> |
12 | ||
13 | * brig/brig-lang.c: Allow controlling strict aliasing from | |
14 | cmd line. | |
15 | ||
f986735a PJ |
16 | 2018-05-04 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> |
17 | ||
18 | * brig/brigfrontend/brig-code-entry-handler.cc: The modulo in | |
19 | ID computation should not be needed. | |
20 | ||
637f3cde PJ |
21 | 2018-05-04 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> |
22 | ||
23 | * brig/brig-lang.c: Add support for whole program | |
24 | optimizations by marking the kernels externally visible. | |
25 | * brig/brigfrontend/brig-branch-inst-handler.cc: See above. | |
26 | * brig/brigfrontend/brig-function-handler.cc: See above. | |
27 | * brig/brigfrontend/brig-function.cc: See above. | |
28 | * brig/brigfrontend/brig-to-generic.cc: See above. | |
29 | * brig/brigfrontend/brig-to-generic.h: See above. | |
30 | * brig/brigfrontend/brig-variable-handler.h: See above. | |
31 | ||
928686b1 RS |
32 | 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org> |
33 | Alan Hayward <alan.hayward@arm.com> | |
34 | David Sherwood <david.sherwood@arm.com> | |
35 | ||
36 | * brigfrontend/brig-to-generic.cc (get_unsigned_int_type): Handle | |
37 | polynomial TYPE_VECTOR_SUBPARTS. | |
38 | * brigfrontend/brig-util.h (gccbrig_type_vector_subparts): Likewise. | |
39 | ||
85ec4feb JJ |
40 | 2018-01-03 Jakub Jelinek <jakub@redhat.com> |
41 | ||
42 | Update copyright years. | |
43 | ||
e112bba2 RS |
44 | 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org> |
45 | Alan Hayward <alan.hayward@arm.com> | |
46 | David Sherwood <david.sherwood@arm.com> | |
47 | ||
48 | * brigfrontend/brig-util.h (gccbrig_type_vector_subparts): New | |
49 | function. | |
50 | * brigfrontend/brig-basic-inst-handler.cc | |
51 | (brig_basic_inst_handler::build_shuffle): Use it instead of | |
52 | TYPE_VECTOR_SUBPARTS. | |
53 | (brig_basic_inst_handler::build_unpack): Likewise. | |
54 | (brig_basic_inst_handler::build_pack): Likewise. | |
55 | (brig_basic_inst_handler::build_unpack_lo_or_hi): Likewise. | |
56 | (brig_basic_inst_handler::operator ()): Likewise. | |
57 | (brig_basic_inst_handler::build_lower_element_broadcast): Likewise. | |
58 | * brigfrontend/brig-code-entry-handler.cc | |
59 | (brig_code_entry_handler::get_tree_cst_for_hsa_operand): Likewise. | |
60 | (brig_code_entry_handler::get_comparison_result_type): Likewise. | |
61 | (brig_code_entry_handler::expand_or_call_builtin): Likewise. | |
62 | ||
4849deb1 JJ |
63 | 2017-12-15 Jakub Jelinek <jakub@redhat.com> |
64 | ||
65 | * brig-lang.c (brig_attribute_table): Swap affects_type_identity | |
66 | and handler fields, adjust comments. | |
67 | ||
0123db8e JJ |
68 | 2017-12-08 Jakub Jelinek <jakub@redhat.com> |
69 | ||
70 | * brig-lang.c (brig_attribute_table): Fix up comment. | |
71 | ||
9e851845 JJ |
72 | 2017-11-28 Jakub Jelinek <jakub@redhat.com> |
73 | ||
74 | * brigfrontend/brig-branch-inst-handler.cc | |
75 | (brig_branch_inst_handler::operator): Build SWITCH_EXPR using build2 | |
76 | instead of build3. | |
77 | ||
610f66a3 HL |
78 | 2017-11-17 Henry Linjamäki <henry.linjamaki@parmance.com> |
79 | ||
80 | * brigfrontend/brig-util.cc: Fix sprintf format string type mismatch | |
81 | on 32b machines. | |
82 | ||
dc03239c HL |
83 | 2017-11-16 Henry Linjamäki <henry.linjamaki@parmance.com> |
84 | ||
85 | Change internal representation of HSA registers. Instead | |
86 | representing HSA's untyped registers as unsigned int the gccbrig | |
87 | analyzes brig code and builds the register variables as a type | |
88 | used in tree expressions at most. This gives better chance to | |
89 | optimize CONVERT_VIEW_EXPRs away. | |
90 | * brigfrontend/brig-code-entry-handler.cc: Add analysis method for | |
91 | register type usage. Handle any-typed register variables. | |
92 | * brigfrontend/brig-code-entry-handler.h: New declarations for the | |
93 | above. | |
94 | * brigfrontend/brig-copy-move-inst-handler.cc: Handle any-typed | |
95 | register variables. | |
96 | * brigfrontend/brig-cvt-inst-handler.cc: Likewise. | |
97 | * brigfrontend/brig-function.cc: Build register variables as a | |
98 | type based on results of analysis phase. | |
99 | * brigfrontend/brig-function.h: Move HSA register count defines to | |
100 | brig-utils.h. | |
101 | * brigfrontend/brig-to-generic.cc: New analysis handler. Analyze | |
102 | HSA register usage. | |
103 | * brigfrontend/brig-to-generic.h: New declarations. | |
104 | * brigfrontend/brig-util.cc: New utility functions. | |
105 | * brigfrontend/brig-util.h: New declarations for the above. | |
106 | ||
6748a40f PJ |
107 | 2017-11-16 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> |
108 | ||
109 | * gccbrig.texi: Added some documentation. | |
110 | ||
f6a35e89 HL |
111 | 2017-10-31 Henry Linjamäki <henry.linjamaki@parmance.com> |
112 | ||
113 | * brig-lang.c (brig_langhook_type_for_mode): Fix PR 82771. | |
114 | ||
4603941e RS |
115 | 2017-10-23 Richard Sandiford <richard.sandiford@linaro.org> |
116 | ||
117 | * brig-lang.c (brig_langhook_type_for_mode): Use scalar_int_mode | |
118 | and scalar_float_mode. | |
119 | ||
14108eda PJ |
120 | 2017-10-09 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> |
121 | ||
122 | * brigfrontend/brig-to-generic.cc: Support BRIG_KIND_NONE | |
123 | directives. These directives are legal everywhere. They | |
124 | can be used to patch away BRIG entries at the binary level. | |
125 | Also add extra error detection for zeroed regions: make sure | |
126 | the byteCount field is never zero. | |
127 | * brig/brigfrontend/phsa.h: Added a new error prefix for | |
128 | errors which are due to corrupted BRIG modules. | |
129 | ||
130 | 2017-10-09 Henry Linjamäki <henry.linjamaki@parmance.com> | |
131 | ||
132 | * brigfrontend/brig-branch-inst-handler.cc: The call code | |
133 | still failed a few test cases. Now all PRM cases pass again. | |
134 | ||
9c53f040 HL |
135 | 2017-10-03 Henry Linjamäki <henry.linjamaki@parmance.com> |
136 | ||
137 | * brigfrontend/brig-branch-inst-handler.cc: Fix (more) crash with | |
138 | calls with more than 4 args. It missed a reference which is required | |
139 | because vector expansion can move the object to another location. | |
140 | ||
e1e299f3 HL |
141 | 2017-09-29 Henry Linjamäki <henry.linjamaki@parmance.com> |
142 | ||
143 | * brigfrontend/brig-branch-inst-handler.cc: Fix crash with | |
144 | calls with more than 4 args. Also fix a misexecution issue | |
145 | with kernels that have both unexpanded ID functions and | |
146 | calls to subfunctions. | |
147 | ||
f276c46c HL |
148 | 2017-09-28 Henry Linjamäki <henry.linjamaki@parmance.com> |
149 | ||
150 | * brig-lang.c: Added function attributes and their handlers. | |
151 | Make BRIGFE 3-level optimize by default. | |
152 | ||
d4b7f2ee PJ |
153 | 2017-09-27 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> |
154 | ||
155 | * brig-lang.c: Improved support for function and module scope | |
156 | group segment variables. PRM specs defines function and module | |
157 | scope group segment variables as an experimental feature. However, | |
158 | PRM test suite uses and hcc relies on them. In addition, hcc | |
159 | assumes certain group variable layout in its dynamic group segment | |
160 | allocation code. We cannot have global group memory offsets if we | |
161 | want to both have kernel-specific group segment size and multiple | |
162 | kernels calling the same functions that use function scope group memory | |
163 | variables. Now group segment is handled by separate book keeping of | |
164 | module scope and function (kernel) offsets. Each function has a "frame" | |
165 | in the group segment offset to which is given as an argument. | |
166 | * brigfrontend/brig-branch-inst-handler.cc: See above. | |
167 | * brigfrontend/brig-code-entry-handler.cc: See above. | |
168 | * brigfrontend/brig-fbarrier-handler.cc: See above. | |
169 | * brigfrontend/brig-function-handler.cc: See above. | |
170 | * brigfrontend/brig-function.cc: See above. | |
171 | * brigfrontend/brig-function.h: See above. | |
172 | * brigfrontend/brig-to-generic.cc: See above. | |
173 | * brigfrontend/brig-to-generic.h: See above. | |
174 | * brigfrontend/brig-util.cc: See above. | |
175 | * brigfrontend/brig-util.h: See above. | |
176 | * brigfrontend/brig-variable-handler.cc: See above. | |
177 | ||
178 | 2017-09-25 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> | |
c02bffe3 PJ |
179 | |
180 | * brigfrontend/brig-to-generic.cc: Ensure per WI copies of | |
181 | private variables are aligned too. | |
182 | ||
7ac3ed13 TS |
183 | 2017-09-17 Thomas Schwinge <thomas@codesourcery.com> |
184 | ||
185 | * Make-lang.in (GO_TEXI_FILES): Rename to... | |
186 | (BRIG_TEXI_FILES): ... this. | |
187 | (doc/gccbrig.info, doc/gccbrig.dvi, doc/gccbrig.pdf, brig.info) | |
188 | (brig.srcinfo, brig.man, brig.srcman, brig.install-man) | |
189 | ($(DESTDIR)$(man1dir)/$(GCCBRIG_INSTALL_NAME)$(man1ext)): | |
190 | Uncomment/enable targets. | |
191 | (gccbrig.pod): New target. | |
192 | * gccbrig.texi: New file. | |
193 | ||
8c058905 HL |
194 | 2017-08-04 Henry Linjamäki <henry.linjamaki@parmance.com> |
195 | ||
196 | Fix PR 81713 | |
197 | * brigfrontend/brig-basic-inst-handler.cc: replace build_int_cst with | |
198 | bitsize_int in building BIT_FIELD_REF. | |
199 | * brigfrontend/brig-code-entry-handler.cc: likewise. | |
200 | ||
b8506a8a RS |
201 | 2017-07-05 Richard Sandiford <richard.sandiford@linaro.org> |
202 | Alan Hayward <alan.hayward@arm.com> | |
203 | David Sherwood <david.sherwood@arm.com> | |
204 | ||
205 | * brig-c.h (brig_type_for_mode): Remove "enum" before "machine_mode". | |
206 | * brig-lang.c (brig_langhook_type_for_mode): Likewise. | |
207 | ||
f0622a50 JJ |
208 | 2017-07-04 Jakub Jelinek <jakub@redhat.com> |
209 | ||
210 | * brigfrontend/brig-function.cc: Include profile-count.h. | |
211 | * brigfrontend/brig-to-generic.cc: Likewise. | |
212 | ||
c7ddc044 TS |
213 | 2017-05-18 Thomas Schwinge <thomas@codesourcery.com> |
214 | ||
215 | * brigfrontend/brig-to-generic.h (class brig_to_generic): Use | |
216 | "dump_flags_t" for "m_dump_flags" member. | |
217 | ||
c7488b4f PJ |
218 | 2017-05-13 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> |
219 | ||
220 | * brigfrontend/brig-code-entry-handler.cc | |
221 | (brig_code_entry_handler::build_address_operand): Fix | |
222 | an assertion when doing an 'lda' of a private array | |
223 | offset. | |
224 | ||
225 | 2017-05-03 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> | |
c6e334cd PJ |
226 | |
227 | * brigfrontend/brig-code-entry-handler.cc | |
228 | (brig_code_entry_handler::build_address_operand): Fix a bug | |
229 | with reg+offset addressing on 32b segments. In large mode, | |
230 | the offset is treated as 32bits unless it's global, readonly or | |
231 | kernarg address space. | |
232 | ||
a0deb992 PJ |
233 | 2016-02-01 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> |
234 | ||
235 | * brigfrontend/brig-code-entry-handler.cc: fix address | |
236 | expressions which refer only to offset 0, but nothing else. | |
237 | * brigfrontend/brig-lane-inst-handler.cc: fix | |
238 | activelanepermute_b64 HSAIL instruction. | |
239 | * brigfrontend/brig-to-generic.cc: remove useless c_str() | |
240 | call. Add missing va_end (). Fix PR79250. | |
241 | ||
cc0608e7 JJ |
242 | 2017-01-30 Jakub Jelinek <jakub@redhat.com> |
243 | ||
244 | * brigfrontend/brig-code-entry-handler.cc | |
245 | (brig_code_entry_handler::get_tree_cst_for_hsa_operand): For %lu | |
246 | cast size_t arguments to unsigned long. | |
247 | ||
f6a24a94 MJ |
248 | 2017-01-27 Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> |
249 | ||
250 | * config-lang.in: Removed stale target-libbrig reference. | |
251 | ||
e6d55103 JJ |
252 | 2017-01-26 Jakub Jelinek <jakub@redhat.com> |
253 | ||
254 | Update copyright years. | |
255 | ||
256 | 2017-01-24 Pekka Jääskeläinen <pekka@parmance.com> | |
5fd1486c PJ |
257 | Martin Jambor <mjambor@suse.cz> |
258 | ||
259 | * Make-lang.in: New file. | |
260 | * brig-builtins.h: Likewise. | |
261 | * brig-c.h: Likewise. | |
262 | * brig-lang.c: Likewise. | |
263 | * brigspec.c: Likewise. | |
264 | * config-lang.in: Likewise. | |
265 | * lang-specs.h: Likewise. | |
266 | * lang.opt: Likewise. | |
267 | * brigfrontend/brig-arg-block-handler.cc: Likewise. | |
268 | * brigfrontend/brig-atomic-inst-handler.cc: Likewise. | |
269 | * brigfrontend/brig-basic-inst-handler.cc: Likewise. | |
270 | * brigfrontend/brig-branch-inst-handler.cc: Likewise. | |
271 | * brigfrontend/brig-cmp-inst-handler.cc: Likewise. | |
272 | * brigfrontend/brig-code-entry-handler.cc: Likewise. | |
273 | * brigfrontend/brig-code-entry-handler.h: Likewise. | |
274 | * brigfrontend/brig-comment-handler.cc: Likewise. | |
275 | * brigfrontend/brig-control-handler.cc: Likewise. | |
276 | * brigfrontend/brig-copy-move-inst-handler.cc: Likewise. | |
277 | * brigfrontend/brig-cvt-inst-handler.cc: Likewise. | |
278 | * brigfrontend/brig-fbarrier-handler.cc: Likewise. | |
279 | * brigfrontend/brig-function-handler.cc: Likewise. | |
280 | * brigfrontend/brig-function.cc: Likewise. | |
281 | * brigfrontend/brig-function.h: Likewise. | |
282 | * brigfrontend/brig-inst-mod-handler.cc: Likewise. | |
283 | * brigfrontend/brig-label-handler.cc: Likewise. | |
284 | * brigfrontend/brig-lane-inst-handler.cc: Likewise. | |
285 | * brigfrontend/brig-machine.c: Likewise. | |
286 | * brigfrontend/brig-machine.h: Likewise. | |
287 | * brigfrontend/brig-mem-inst-handler.cc: Likewise. | |
288 | * brigfrontend/brig-module-handler.cc: Likewise. | |
289 | * brigfrontend/brig-queue-inst-handler.cc: Likewise. | |
290 | * brigfrontend/brig-seg-inst-handler.cc: Likewise. | |
291 | * brigfrontend/brig-signal-inst-handler.cc: Likewise. | |
292 | * brigfrontend/brig-to-generic.cc: Likewise. | |
293 | * brigfrontend/brig-to-generic.h: Likewise. | |
294 | * brigfrontend/brig-util.cc: Likewise. | |
295 | * brigfrontend/brig-util.h: Likewise. | |
296 | * brigfrontend/brig-variable-handler.cc: Likewise. | |
297 | * brigfrontend/phsa.h: Likewise. |