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