2021-06-01  Release Manager

	* GCC 9.4.0 released.

2020-03-12  Release Manager

	* GCC 9.3.0 released.

2019-08-12  Release Manager

	* GCC 9.2.0 released.

2019-05-03  Release Manager

	* GCC 9.1.0 released.

2019-01-01  Jakub Jelinek  <jakub@redhat.com>

	Update copyright years.

2018-10-17  David Malcolm  <dmalcolm@redhat.com>

	* Make-lang.in (selftest-brig): New.

2018-07-20  Martin Sebor  <msebor@redhat.com>

	PR middle-end/82063
	* brig/brig-lang.c (brig_langhook_handle_option): Change function
	argument to HOST_WIDE_INT.

2018-07-04  Martin Jambor  <mjambor@suse.cz>

	PR hsa/86371
	* Make-lang.in (BRIGINCLUDES): Remove erroneous include path in $HOME.

2018-06-28  Martin Liska  <mliska@suse.cz>

	* brigspec.c: Add missing header file inclusion.

2018-06-08  David Malcolm  <dmalcolm@redhat.com>

	* brigfrontend/brig-to-generic.cc
	(brig_to_generic::write_globals): Use TDF_NONE rather than 0.
	(dump_function): Likewise.

2018-05-18  Richard Sandiford  <richard.sandiford@linaro.org>

	* brigfrontend/brig-function.cc
	(brig_function::get_builtin_for_hsa_opcode): Use BUILT_IN_FMA
	for BRIG_OPCODE_FMA.
	(brig_function::get_tree_code_for_hsa_opcode): Treat BUILT_IN_FMA
	as a call.

2018-05-04  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	* brig/brigfrontend/brig-basic-inst-handler.cc:  Fix handling of NOPs.

2018-05-04  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	Add flag -fassume-phsa that is on by default. If -fno-assume-phsa
	is given, these optimizations are disabled.  With this flag, gccbrig
	can generate GENERIC that assumes we are targeting a phsa-runtime
	based implementation, which allows us to expose the work-item context
	accesses to retrieve WI IDs etc.  which helps optimizers.
	First optimization that takes advantage of this is to get rid of
	the setworkitemid calls whenever we have non-inlined calls that
	use IDs internally.  Other optimizations added in this commit:
	- expand absoluteid to similar level of simplicity as workitemid.
	At the moment absoluteid is the best indexing ID to end up with
	WG vectorization.
	- propagate ID variables closer to their uses. This is mainly
	to avoid known useless casts, which confuse at least scalar
	evolution analysis.
	- use signed long long for storing IDs. Unsigned integers have
	defined wraparound semantics, which confuse at least scalar
	evolution analysis, leading to unvectorizable WI loops.
	- also refactor some BRIG function generation helpers to brig_function.
	- no point in having the wi-loop as a for-loop. It's really
	a do...while and SCEV can analyze it just fine still.
	- add consts to ptrs etc. in BRIG builtin defs.
	Improves optimization opportunities.
	- add qualifiers to generated function parameters.
	Const and restrict on the hidden local/private pointers,
	the arg buffer and the context pointer help some optimizations.
	* brig/brigfrontend/brig-basic-inst-handler.cc: See above.
	* brig/brigfrontend/brig-branch-inst-handler.cc: See above.
	* brig/brigfrontend/brig-cmp-inst-handler.cc: See above.
	* brig/brigfrontend/brig-code-entry-handler.cc: See above.
	* brig/brigfrontend/brig-code-entry-handler.h: See above.
	* brig/brigfrontend/brig-control-handler.cc: See above.
	* brig/brigfrontend/brig-cvt-inst-handler.cc: See above.
	* brig/brigfrontend/brig-function-handler.cc: See above.
	* brig/brigfrontend/brig-function.cc: See above.
	* brig/brigfrontend/brig-function.h: See above.
	* brig/brigfrontend/brig-label-handler.cc: See above.
	* brig/brigfrontend/brig-lane-inst-handler.cc: See above.
	* brig/brigfrontend/brig-mem-inst-handler.cc: See above.
	* brig/brigfrontend/phsa.h: See above.
	* brig/lang.opt: See above.

2018-05-04  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	* brig/brigfrontend/brig-function-handler.cc: Skip multiple forward
	declarations of the same function.

2018-05-04  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	* brig/brig-lang.c: Do not allow optimizations based on known C
	builtins.

2018-05-04  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	* brig/brig-lang.c: Allow controlling strict aliasing from
	cmd line.

2018-05-04  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	* brig/brigfrontend/brig-code-entry-handler.cc: The modulo in
	ID computation should not be needed.

2018-05-04  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	* brig/brig-lang.c: Add support for whole program
	optimizations by marking the kernels externally visible.
	* brig/brigfrontend/brig-branch-inst-handler.cc: See above.
	* brig/brigfrontend/brig-function-handler.cc: See above.
	* brig/brigfrontend/brig-function.cc: See above.
	* brig/brigfrontend/brig-to-generic.cc: See above.
	* brig/brigfrontend/brig-to-generic.h: See above.
	* brig/brigfrontend/brig-variable-handler.h: See above.

2018-01-03  Richard Sandiford  <richard.sandiford@linaro.org>
	    Alan Hayward  <alan.hayward@arm.com>
	    David Sherwood  <david.sherwood@arm.com>

	* brigfrontend/brig-to-generic.cc (get_unsigned_int_type): Handle
	polynomial TYPE_VECTOR_SUBPARTS.
	* brigfrontend/brig-util.h (gccbrig_type_vector_subparts): Likewise.

2018-01-03  Jakub Jelinek  <jakub@redhat.com>

	Update copyright years.

2018-01-03  Richard Sandiford  <richard.sandiford@linaro.org>
	    Alan Hayward  <alan.hayward@arm.com>
	    David Sherwood  <david.sherwood@arm.com>

	* brigfrontend/brig-util.h (gccbrig_type_vector_subparts): New
	function.
	* brigfrontend/brig-basic-inst-handler.cc
	(brig_basic_inst_handler::build_shuffle): Use it instead of
	TYPE_VECTOR_SUBPARTS.
	(brig_basic_inst_handler::build_unpack): Likewise.
	(brig_basic_inst_handler::build_pack): Likewise.
	(brig_basic_inst_handler::build_unpack_lo_or_hi): Likewise.
	(brig_basic_inst_handler::operator ()): Likewise.
	(brig_basic_inst_handler::build_lower_element_broadcast): Likewise.
	* brigfrontend/brig-code-entry-handler.cc
	(brig_code_entry_handler::get_tree_cst_for_hsa_operand): Likewise.
	(brig_code_entry_handler::get_comparison_result_type): Likewise.
	(brig_code_entry_handler::expand_or_call_builtin): Likewise.

2017-12-15  Jakub Jelinek  <jakub@redhat.com>

	* brig-lang.c (brig_attribute_table): Swap affects_type_identity
	and handler fields, adjust comments.

2017-12-08  Jakub Jelinek  <jakub@redhat.com>

	* brig-lang.c (brig_attribute_table): Fix up comment.

2017-11-28  Jakub Jelinek  <jakub@redhat.com>

	* brigfrontend/brig-branch-inst-handler.cc
	(brig_branch_inst_handler::operator): Build SWITCH_EXPR using build2
	instead of build3.

2017-11-17  Henry Linjamäki  <henry.linjamaki@parmance.com>

	* brigfrontend/brig-util.cc: Fix sprintf format string type mismatch
	on 32b machines.

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.

2017-10-31  Henry Linjamäki  <henry.linjamaki@parmance.com>

	* brig-lang.c (brig_langhook_type_for_mode): Fix PR 82771.

2017-10-23  Richard Sandiford  <richard.sandiford@linaro.org>

	* brig-lang.c (brig_langhook_type_for_mode): Use scalar_int_mode
	and scalar_float_mode.

2017-10-09  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	* brigfrontend/brig-to-generic.cc: Support BRIG_KIND_NONE
	directives.  These directives are legal everywhere.  They
	can be used to patch away BRIG entries at the binary level.
	Also add extra error detection for zeroed regions: make sure
	the byteCount field is never zero.
	* brig/brigfrontend/phsa.h: Added a new error prefix for
	errors which are due to corrupted BRIG modules.

2017-10-09  Henry Linjamäki  <henry.linjamaki@parmance.com>

	* brigfrontend/brig-branch-inst-handler.cc: The call code
	still failed a few test cases. Now all PRM cases pass again.

2017-10-03  Henry Linjamäki  <henry.linjamaki@parmance.com>

	* brigfrontend/brig-branch-inst-handler.cc: Fix (more) crash with
	calls with more than 4 args.  It missed a reference which is required
	because vector expansion can move the object to another location.

2017-09-29  Henry Linjamäki  <henry.linjamaki@parmance.com>

	* brigfrontend/brig-branch-inst-handler.cc: Fix crash with
	calls with more than 4 args. Also fix a misexecution issue
	with kernels that have both unexpanded ID functions and
	calls to subfunctions.

2017-09-28  Henry Linjamäki  <henry.linjamaki@parmance.com>

	* brig-lang.c: Added function attributes and their handlers.
	Make BRIGFE 3-level optimize by default.

2017-09-27  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	* brig-lang.c: Improved support for function and module scope
	group segment variables.  PRM specs defines function and module
	scope group segment variables as an experimental feature. However,
	PRM test suite uses and hcc relies on them. In addition, hcc
	assumes certain group variable layout in its dynamic group segment
	allocation code.  We cannot have global group memory offsets if we
	want to both have kernel-specific group segment size and multiple
	kernels calling the same functions that use function scope group memory
	variables.  Now group segment is handled by separate book keeping of
	module scope and function (kernel) offsets. Each function has a "frame"
	in the group segment offset to which is given as an argument.
	* brigfrontend/brig-branch-inst-handler.cc: See above.
	* brigfrontend/brig-code-entry-handler.cc: See above.
	* brigfrontend/brig-fbarrier-handler.cc: See above.
	* brigfrontend/brig-function-handler.cc: See above.
	* brigfrontend/brig-function.cc: See above.
	* brigfrontend/brig-function.h: See above.
	* brigfrontend/brig-to-generic.cc: See above.
	* brigfrontend/brig-to-generic.h: See above.
	* brigfrontend/brig-util.cc: See above.
	* brigfrontend/brig-util.h: See above.
	* brigfrontend/brig-variable-handler.cc: See above.

2017-09-25  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	* brigfrontend/brig-to-generic.cc: Ensure per WI copies of
	private variables are aligned too.

2017-09-17  Thomas Schwinge  <thomas@codesourcery.com>

	* Make-lang.in (GO_TEXI_FILES): Rename to...
	(BRIG_TEXI_FILES): ... this.
	(doc/gccbrig.info, doc/gccbrig.dvi, doc/gccbrig.pdf, brig.info)
	(brig.srcinfo, brig.man, brig.srcman, brig.install-man)
	($(DESTDIR)$(man1dir)/$(GCCBRIG_INSTALL_NAME)$(man1ext)):
	Uncomment/enable targets.
	(gccbrig.pod): New target.
	* gccbrig.texi: New file.

2017-08-04  Henry Linjamäki  <henry.linjamaki@parmance.com>

	Fix PR 81713
	* brigfrontend/brig-basic-inst-handler.cc: replace build_int_cst with
	bitsize_int in building BIT_FIELD_REF.
	* brigfrontend/brig-code-entry-handler.cc: likewise.

2017-07-05  Richard Sandiford  <richard.sandiford@linaro.org>
	    Alan Hayward  <alan.hayward@arm.com>
	    David Sherwood  <david.sherwood@arm.com>

	* brig-c.h (brig_type_for_mode): Remove "enum" before "machine_mode".
	* brig-lang.c (brig_langhook_type_for_mode): Likewise.

2017-07-04  Jakub Jelinek  <jakub@redhat.com>

	* brigfrontend/brig-function.cc: Include profile-count.h.
	* brigfrontend/brig-to-generic.cc: Likewise.

2017-05-18  Thomas Schwinge  <thomas@codesourcery.com>

	* brigfrontend/brig-to-generic.h (class brig_to_generic): Use
	"dump_flags_t" for "m_dump_flags" member.

2017-05-13  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	* brigfrontend/brig-code-entry-handler.cc
	(brig_code_entry_handler::build_address_operand): Fix
	an assertion when doing an 'lda' of a private array
	offset.

2017-05-03  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	* brigfrontend/brig-code-entry-handler.cc
	(brig_code_entry_handler::build_address_operand): Fix a bug
	with reg+offset addressing on 32b segments. In large mode,
	the offset is treated as 32bits unless it's global, readonly or
	kernarg address space.

2016-02-01  Pekka Jääskeläinen  <pekka.jaaskelainen@parmance.com>

	* brigfrontend/brig-code-entry-handler.cc: fix address
	expressions which refer only to offset 0, but nothing else.
	* brigfrontend/brig-lane-inst-handler.cc: fix
	activelanepermute_b64 HSAIL instruction.
	* brigfrontend/brig-to-generic.cc: remove useless c_str()
	call. Add missing va_end (). Fix PR79250.

2017-01-30  Jakub Jelinek  <jakub@redhat.com>

	* brigfrontend/brig-code-entry-handler.cc
	(brig_code_entry_handler::get_tree_cst_for_hsa_operand): For %lu
	cast size_t arguments to unsigned long.

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.

2017-01-24  Pekka Jääskeläinen  <pekka@parmance.com>
	    Martin Jambor  <mjambor@suse.cz>

	* Make-lang.in: New file.
	* brig-builtins.h: Likewise.
	* brig-c.h: Likewise.
	* brig-lang.c: Likewise.
	* brigspec.c: Likewise.
	* config-lang.in: Likewise.
	* lang-specs.h: Likewise.
	* lang.opt: Likewise.
	* brigfrontend/brig-arg-block-handler.cc: Likewise.
	* brigfrontend/brig-atomic-inst-handler.cc: Likewise.
	* brigfrontend/brig-basic-inst-handler.cc: Likewise.
	* brigfrontend/brig-branch-inst-handler.cc: Likewise.
	* brigfrontend/brig-cmp-inst-handler.cc: Likewise.
	* brigfrontend/brig-code-entry-handler.cc: Likewise.
	* brigfrontend/brig-code-entry-handler.h: Likewise.
	* brigfrontend/brig-comment-handler.cc: Likewise.
	* brigfrontend/brig-control-handler.cc: Likewise.
	* brigfrontend/brig-copy-move-inst-handler.cc: Likewise.
	* brigfrontend/brig-cvt-inst-handler.cc: Likewise.
	* brigfrontend/brig-fbarrier-handler.cc: Likewise.
	* brigfrontend/brig-function-handler.cc: Likewise.
	* brigfrontend/brig-function.cc: Likewise.
	* brigfrontend/brig-function.h: Likewise.
	* brigfrontend/brig-inst-mod-handler.cc: Likewise.
	* brigfrontend/brig-label-handler.cc: Likewise.
	* brigfrontend/brig-lane-inst-handler.cc: Likewise.
	* brigfrontend/brig-machine.c: Likewise.
	* brigfrontend/brig-machine.h: Likewise.
	* brigfrontend/brig-mem-inst-handler.cc: Likewise.
	* brigfrontend/brig-module-handler.cc: Likewise.
	* brigfrontend/brig-queue-inst-handler.cc: Likewise.
	* brigfrontend/brig-seg-inst-handler.cc: Likewise.
	* brigfrontend/brig-signal-inst-handler.cc: Likewise.
	* brigfrontend/brig-to-generic.cc: Likewise.
	* brigfrontend/brig-to-generic.h: Likewise.
	* brigfrontend/brig-util.cc: Likewise.
	* brigfrontend/brig-util.h: Likewise.
	* brigfrontend/brig-variable-handler.cc: Likewise.
	* brigfrontend/phsa.h: Likewise.
