2025-08-08  Release Manager

	* GCC 15.2.0 released.

2025-04-25  Release Manager

	* GCC 15.1.0 released.

2025-03-29  Iain Sandoe  <iain@sandoe.co.uk>

	* libgccjit.exports: Add symbols for ABI 28 to 34.

2025-03-13  Matthias Klose  <doko@ubuntu.com>

	* Make-lang.in (LIBGCCJIT_VERSION_NUM): Move to ../Makefile.in.

2025-02-13  David Malcolm  <dmalcolm@redhat.com>

	PR other/116613
	* dummy-frontend.cc
	(jit_diagnostic_listener::on_report_diagnostic): Add
	"final override".

2025-02-07  Richard Biener  <rguenther@suse.de>

	PR jit/118780
	* jit-playback.cc: Define INCLUDE_DLFCN_H.
	* jit-result.cc: Likewise.

2025-01-24  David Malcolm  <dmalcolm@redhat.com>

	PR jit/117886
	* jit-recording.cc (reproducer::get_identifier_as_rvalue): Handle
	null memento.
	(reproducer::get_identifier_as_lvalue): Likewise.
	(reproducer::get_identifier_as_type): Likewise.
	(recording::ctor::write_reproducer): Use get_identifier_as_rvalue
	rather than get_identifier when writing out gcc_jit_rvalue *
	expressions.

2025-01-22  David Malcolm  <dmalcolm@redhat.com>

	* dummy-frontend.cc (tree_type_to_jit_type): For POINTER_TYPE,
	bail out if the inner call to tree_type_to_jit_type fails.
	Don't abort on unknown types.
	(jit_langhook_pushdecl): Replace gcc_unreachable with return of
	NULL_TREE.

2024-11-22  Andrew Pinski  <quic_apinski@quicinc.com>

	PR bootstrap/117737
	* dummy-frontend.cc (INCLUDE_MEMORY): Remove.
	* jit-playback.cc (INCLUDE_MEMORY): Remove.
	* jit-recording.cc (INCLUDE_MEMORY): Remove.

2024-11-20  Antoni Boucher  <bouanto@zoho.com>

	* docs/topics/compatibility.rst (LIBGCCJIT_ABI_34): New ABI tag.
	* docs/topics/contexts.rst: Document gcc_jit_context_set_output_ident.
	* jit-playback.cc (set_output_ident): New method.
	* jit-playback.h (set_output_ident): New method.
	* jit-recording.cc (recording::context::set_output_ident,
	recording::output_ident::output_ident,
	recording::output_ident::~output_ident,
	recording::output_ident::replay_into,
	recording::output_ident::make_debug_string,
	recording::output_ident::write_reproducer): New methods.
	* jit-recording.h (class output_ident): New class.
	* libgccjit.cc (gcc_jit_context_set_output_ident): New function.
	* libgccjit.h (gcc_jit_context_set_output_ident): New function.
	* libgccjit.map: New function.

2024-01-18  Antoni Boucher  <bouanto@zoho.com>

	* docs/topics/compatibility.rst (LIBGCCJIT_ABI_33): New ABI tag.
	* docs/topics/functions.rst: Document gcc_jit_function_new_temp.
	* jit-playback.cc (new_local): Add support for temporary
	variables.
	* jit-recording.cc (recording::function::new_temp): New method.
	(recording::local::write_reproducer): Support temporary
	variables.
	* jit-recording.h (new_temp): New method.
	* libgccjit.cc (gcc_jit_function_new_temp): New function.
	* libgccjit.h (gcc_jit_function_new_temp): New function.
	* libgccjit.map: New function.

2024-11-20  Antoni Boucher  <bouanto@zoho.com>

	PR jit/108762
	* docs/topics/compatibility.rst (LIBGCCJIT_ABI_32): New ABI tag.
	* docs/topics/functions.rst: Add documentation for the function
	gcc_jit_context_get_target_builtin_function.
	* dummy-frontend.cc: Include headers target.h, jit-recording.h,
	print-tree.h, unordered_map and string, new variables (target_builtins,
	target_function_types, and target_builtins_ctxt), new function
	(tree_type_to_jit_type).
	* jit-builtins.cc: Specify that the function types are not from
	target builtins.
	* jit-playback.cc: New argument is_target_builtin to new_function.
	* jit-playback.h: New argument is_target_builtin to
	new_function.
	* jit-recording.cc: New argument is_target_builtin to
	new_function_type, function_type constructor and function
	constructor, new function
	(get_target_builtin_function).
	* jit-recording.h: Include headers string and unordered_map, new
	variable target_function_types, new argument is_target_builtin
	to new_function_type, function_type and function, new functions
	(get_target_builtin_function, copy).
	* libgccjit.cc: New function
	(gcc_jit_context_get_target_builtin_function).
	* libgccjit.h: New function
	(gcc_jit_context_get_target_builtin_function).
	* libgccjit.map: New functions
	(gcc_jit_context_get_target_builtin_function).

2024-11-20  Antoni Boucher  <bouanto@zoho.com>

	* jit-common.h: Add forward declaration of memento_of_get_aligned.
	* jit-recording.h (type::is_same_type_as): Compare integer
	types.
	(dyn_cast_aligned_type): New method.
	(type::is_aligned, memento_of_get_aligned::is_same_type_as,
	memento_of_get_aligned::is_aligned): new methods.

2024-11-20  Antoni Boucher  <bouanto@zoho.com>

	* docs/topics/contexts.rst: Add documentation for new option.
	* jit-recording.cc (recording::context::get_str_option): New
	method.
	* jit-recording.h (get_str_option): New method.
	* libgccjit.cc (gcc_jit_context_new_function): Allow special
	characters in function names.
	* libgccjit.h (enum gcc_jit_str_option): New option.

2024-11-20  Antoni Boucher  <bouanto@zoho.com>

	PR jit/112602
	* docs/topics/compatibility.rst (LIBGCCJIT_ABI_31): New ABI tag.
	* docs/topics/expressions.rst: Document
	gcc_jit_context_new_rvalue_vector_perm and
	gcc_jit_context_new_vector_access.
	* jit-playback.cc (playback::context::new_rvalue_vector_perm,
	common_mark_addressable_vec,
	gnu_vector_type_p,
	lvalue_p,
	convert_vector_to_array_for_subscript,
	new_vector_access): new functions.
	* jit-playback.h (new_rvalue_vector_perm, new_vector_access):
	New functions.
	* jit-recording.cc (recording::context::new_rvalue_vector_perm,
	recording::context::new_vector_access,
	memento_of_new_rvalue_vector_perm,
	recording::memento_of_new_rvalue_vector_perm::replay_into,
	recording::memento_of_new_rvalue_vector_perm::visit_children,
	recording::memento_of_new_rvalue_vector_perm::make_debug_string,
	recording::memento_of_new_rvalue_vector_perm::write_reproducer,
	recording::vector_access::replay_into,
	recording::vector_access::visit_children,
	recording::vector_access::make_debug_string,
	recording::vector_access::write_reproducer): New methods.
	* jit-recording.h (class memento_of_new_rvalue_vector_perm,
	class vector_access): New classes.
	* libgccjit.cc (gcc_jit_context_new_vector_access,
	gcc_jit_context_new_rvalue_vector_perm): New functions.
	* libgccjit.h (gcc_jit_context_new_rvalue_vector_perm,
	gcc_jit_context_new_vector_access): New functions.
	* libgccjit.map: New functions.

2024-11-20  Antoni Boucher  <bouanto@zoho.com>

	PR jit/113343
	* jit-playback.cc (new_rvalue_from_const): Fix to have the
	correct value when cross-compiling.

2024-11-20  Antoni Boucher  <bouanto@zoho.com>

	* libgccjit.cc (RETURN_IF_FAIL_PRINTF3): New macro.
	(gcc_jit_block_add_assignment_op): Add numeric checks.

2024-11-20  Antoni Boucher  <bouanto@zoho.com>

	* dummy-frontend.cc (jit_langhook_init): Send flag_signed_char
	argument to build_common_tree_nodes.

2024-11-04  Antoni Boucher  <bouanto@zoho.com>

	* docs/topics/compatibility.rst (LIBGCCJIT_ABI_30): New ABI tag.
	* docs/topics/expressions.rst: Document gcc_jit_context_convert_vector.
	* jit-playback.cc (convert_vector): New method.
	* jit-playback.h: New method.
	* jit-recording.cc (recording::context::new_convert_vector,
	recording::convert_vector::replay_into,
	recording::convert_vector::visit_children,
	recording::convert_vector::make_debug_string,
	recording::convert_vector::write_reproducer): New methods.
	* jit-recording.h (class convert_vector): New class.
	(context::new_convert_vector): New method.
	* libgccjit.cc (gcc_jit_context_convert_vector): New function.
	* libgccjit.h (gcc_jit_context_convert_vector): New function.
	* libgccjit.map: New function.

2024-11-04  Antoni Boucher  <bouanto@zoho.com>

	* docs/topics/compatibility.rst (LIBGCCJIT_ABI_29): New ABI tag.
	* docs/topics/expressions.rst: Document gcc_jit_global_set_readonly.
	* jit-playback.cc (global_new_decl, new_global,
	new_global_initialized): New parameter readonly.
	* jit-playback.h (global_new_decl, new_global,
	new_global_initialized): New parameter readonly.
	* jit-recording.cc (recording::global::replay_into): Use
	m_readonly.
	(recording::global::write_reproducer): Dump reproducer for
	gcc_jit_global_set_readonly.
	* jit-recording.h (get_readonly, set_readonly): New methods.
	(m_readonly): New attribute.
	* libgccjit.cc (gcc_jit_global_set_readonly): New function.
	(gcc_jit_block_add_assignment): Check that we don't assign to a
	readonly variable.
	* libgccjit.h (gcc_jit_global_set_readonly): New function.
	(LIBGCCJIT_HAVE_gcc_jit_global_set_readonly): New define.
	* libgccjit.map: New function.

2024-11-04  Antoni Boucher  <bouanto@zoho.com>

	* jit-builtins.cc (ensure_optimization_builtins_exist): Add
	missing builtins.

2024-10-29  David Malcolm  <dmalcolm@redhat.com>

	PR other/116613
	* dummy-frontend.cc: Include "make-unique.h".
	(class jit_diagnostic_listener): New.
	(jit_begin_diagnostic): Update comment.
	(jit_end_diagnostic): Drop call to add_diagnostic.
	(jit_langhook_init): Set the output format to a new
	jit_diagnostic_listener.
	* jit-playback.cc (playback::context::add_diagnostic): Add "text"
	param and use that rather than trying to get the text from a
	pretty_printer.
	* jit-playback.h (playback::context::add_diagnostic): Add "text"
	param.

2024-10-25  Jakub Jelinek  <jakub@redhat.com>

	* docs/examples/tut04-toyvm/toyvm.cc: Remove trailing whitespace.

2024-10-24  David Malcolm  <dmalcolm@redhat.com>
	    Gaius Mulley  <gaiusmod2@gmail.com>

	PR other/116613
	* dummy-frontend.cc: Add #define INCLUDE_MEMORY.
	* jit-playback.cc: Likewise.
	* jit-recording.cc: Likewise.

2024-09-20  David Malcolm  <dmalcolm@redhat.com>

	PR other/116613
	* dummy-frontend.cc: Include "diagnostic-format-text.h".
	(jit_begin_diagnostic): Convert first param from
	diagnostic_context * to diagnostic_text_output_format &
	(jit_end_diagnostic): Likewise.  Update accordingly.
	(jit_langhook_init): Update for renamings.

2024-09-18  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>

	* libgccjit.h: Include <sys/types.h>

2024-09-09  David Malcolm  <dmalcolm@redhat.com>

	PR other/116613
	* jit-playback.cc (add_diagnostic): Rename diagnostic_context's
	"printer" field to "m_printer".

2024-09-02  Richard Sandiford  <richard.sandiford@arm.com>

	* jit-playback.cc (playback::block::add_extended_asm):  Rename
	ASM_INPUT_P to ASM_BASIC_P.

2024-07-24  David Malcolm  <dmalcolm@redhat.com>

	* jit-playback.cc (jit::playback_context::compile) Add a trailing
	null to argvec.

2024-07-05  Antoni Boucher  <bouanto@zoho.com>

	* jit-common.h: Add array_type class.
	* jit-recording.h (type::dyn_cast_array_type,
	memento_of_get_aligned::dyn_cast_array_type,
	array_type::dyn_cast_array_type, array_type::is_same_type_as):
	New methods.

2024-07-05  Antoni Boucher  <bouanto@zoho.com>

	PR jit/112574
	* docs/topics/types.rst: Document GCC_JIT_TYPE_BFLOAT16.
	* jit-common.h: Update NUM_GCC_JIT_TYPES.
	* jit-playback.cc (get_tree_node_for_type): Support bfloat16.
	* jit-recording.cc (recording::memento_of_get_type::get_size,
	recording::memento_of_get_type::dereference,
	recording::memento_of_get_type::is_int,
	recording::memento_of_get_type::is_signed,
	recording::memento_of_get_type::is_float,
	recording::memento_of_get_type::is_bool): Support bfloat16.
	* libgccjit.h (enum gcc_jit_types): Add GCC_JIT_TYPE_BFLOAT16.

2024-06-29  Iain Sandoe  <iain@sandoe.co.uk>

	* jit-recording.cc
	(recording::memento_of_typeinfo::make_debug_string): Default the value
	of ident.
	(recording::memento_of_typeinfo::write_reproducer): Default the value
	of type.

2024-06-27  Antoni Boucher  <bouanto@zoho.com>

	* docs/topics/compatibility.rst (LIBGCCJIT_ABI_28): New ABI tag.
	* docs/topics/expressions.rst: Document gcc_jit_context_new_alignof.
	* jit-playback.cc (new_alignof): New method.
	* jit-playback.h: New method.
	* jit-recording.cc (recording::context::new_alignof): New
	method.
	(recording::memento_of_sizeof::replay_into,
	recording::memento_of_typeinfo::replay_into,
	recording::memento_of_sizeof::make_debug_string,
	recording::memento_of_typeinfo::make_debug_string,
	recording::memento_of_sizeof::write_reproducer,
	recording::memento_of_typeinfo::write_reproducer): Rename.
	* jit-recording.h (enum type_info_type): New enum.
	(class memento_of_sizeof class memento_of_typeinfo): Rename.
	* libgccjit.cc (gcc_jit_context_new_alignof): New function.
	* libgccjit.h (gcc_jit_context_new_alignof): New function.
	* libgccjit.map: New function.

2024-06-25  Kewen Lin  <linkw@linux.ibm.com>

	* jit-recording.cc (recording::memento_of_get_type::get_size): Update
	macros {FLOAT,DOUBLE,LONG_DOUBLE}_TYPE_SIZE by calling
	targetm.c.mode_for_floating_type with
	TI_{FLOAT,DOUBLE,LONG_DOUBLE}_TYPE.

2024-06-12  David Malcolm  <dmalcolm@redhat.com>

	* jit-recording.cc (recording::function::dump_to_dot): Update for
	fields of pretty_printer becoming private.

2024-06-11  Andrew Pinski  <quic_apinski@quicinc.com>

	PR jit/115442
	* jit-recording.cc: Define INCLUDE_SSTREAM before including
	system.h and don't directly incldue sstream.

2024-04-09  Jakub Jelinek  <jakub@redhat.com>

	* docs/topics/expressions.rst (Constructor expressions): Fix
	duplicated words; have have -> have.

2024-04-02  Iain Sandoe  <iain@sandoe.co.uk>

	* Make-lang.in: Implement exports list, and use a shared
	libgcc.
	* libgccjit.exports: New file.

2024-03-29  Guillaume Gomez  <guillaume1.gomez@gmail.com>

	* libgccjit.cc (gcc_jit_type_get_size): Add pointer support

2024-02-10  Jakub Jelinek  <jakub@redhat.com>

	* jit-playback.cc (new_bitcast): Use HOST_WIDE_INT_PRINT_DEC instead
	of "%ld" and casts to long.

2024-02-02  Antoni Boucher  <bouanto@zoho.com>

	* docs/topics/compatibility.rst (LIBGCCJIT_ABI_27): New ABI tag.
	* docs/topics/expressions.rst: Document gcc_jit_context_new_sizeof.
	* jit-playback.cc (new_sizeof): New method.
	* jit-playback.h (new_sizeof): New method.
	* jit-recording.cc (recording::context::new_sizeof,
	recording::memento_of_sizeof::replay_into,
	recording::memento_of_sizeof::make_debug_string,
	recording::memento_of_sizeof::write_reproducer): New methods.
	* jit-recording.h (class memento_of_sizeof): New class.
	* libgccjit.cc (gcc_jit_context_new_sizeof): New function.
	* libgccjit.h (gcc_jit_context_new_sizeof): New function.
	* libgccjit.map: New function.

2024-01-19  Antoni Boucher  <bouanto@zoho.com>

	* jit-builtins.cc (ensure_optimization_builtins_exist): Add
	popcount builtins.

2024-01-19  Antoni Boucher  <bouanto@zoho.com>

	* jit-recording.h (is_numeric_vector, vector_type::new_int): New
	functions.
	* libgccjit.cc (gcc_jit_context_new_unary_op,
	gcc_jit_context_new_binary_op): add checks for
	is_numeric_vector.

2024-01-12  Guillaume Gomez  <guillaume1.gomez@gmail.com>
	    Antoni Boucher  <bouanto@zoho.com>

	* docs/topics/compatibility.rst: Add documentation for LIBGCCJIT_ABI_26.
	* docs/topics/functions.rst: Add documentation for new functions.
	* docs/topics/expressions.rst: Add documentation for new functions.

2024-01-12  Guillaume Gomez  <guillaume1.gomez@gmail.com>
	    Antoni Boucher  <bouanto@zoho.com>

	* dummy-frontend.cc (handle_alias_attribute): New function.
	(handle_always_inline_attribute): New function.
	(handle_cold_attribute): New function.
	(handle_fnspec_attribute): New function.
	(handle_format_arg_attribute): New function.
	(handle_format_attribute): New function.
	(handle_noinline_attribute): New function.
	(handle_target_attribute): New function.
	(handle_used_attribute): New function.
	(handle_visibility_attribute): New function.
	(handle_weak_attribute): New function.
	(handle_alias_ifunc_attribute): New function.
	* jit-playback.cc (fn_attribute_to_string): New function.
	(variable_attribute_to_string): New function.
	(global_new_decl): Add attributes support.
	(set_variable_attribute): New function.
	(new_global): Add attributes support.
	(new_global_initialized): Add attributes support.
	(new_local): Add attributes support.
	* jit-playback.h (fn_attribute_to_string): New function.
	(set_variable_attribute): New function.
	* jit-recording.cc (recording::lvalue::add_attribute): New function.
	(recording::function::function): New function.
	(recording::function::write_to_dump): Add attributes support.
	(recording::function::add_attribute): New function.
	(recording::function::add_string_attribute): New function.
	(recording::function::add_integer_array_attribute): New function.
	(recording::global::replay_into): Add attributes support.
	(recording::local::replay_into): Add attributes support.
	* jit-recording.h: Add attributes support.
	* libgccjit.cc (gcc_jit_function_add_attribute): New function.
	(gcc_jit_function_add_string_attribute): New function.
	(gcc_jit_function_add_integer_array_attribute): New function.
	(gcc_jit_lvalue_add_attribute): New function.
	* libgccjit.h (enum gcc_jit_fn_attribute): New enum.
	(gcc_jit_function_add_attribute): New function.
	(gcc_jit_function_add_string_attribute): New function.
	(gcc_jit_function_add_integer_array_attribute): New function.
	(enum gcc_jit_variable_attribute): New function.
	(gcc_jit_lvalue_add_string_attribute): New function.
	* libgccjit.map: Declare new functions.

2023-12-06  David Malcolm  <dmalcolm@redhat.com>

	* dummy-frontend.cc (jit_begin_diagnostic): Make diagnostic_info
	param const.
	(jit_end_diagnostic): Likewise.  Pass to add_diagnostic by
	reference.
	* jit-playback.cc (jit::playback::context::add_diagnostic):
	Convert diagnostic_info to const reference.
	* jit-playback.h (jit::playback::context::add_diagnostic):
	Likewise.

2023-12-05  Richard Sandiford  <richard.sandiford@arm.com>

	* dummy-frontend.cc (jit_gnu_attribute_table): Add extra braces
	to work around PR 16333 in older compilers.
	(jit_format_attribute_table): Likewise.

2023-12-02  Richard Sandiford  <richard.sandiford@arm.com>

	* dummy-frontend.cc (jit_format_attribute_table): Change type to
	scoped_attribute_specs, using...
	(jit_format_attributes): ...this as the underlying array.
	(jit_attribute_table): Change to an array of scoped_attribute_specs
	pointers, using...
	(jit_gnu_attributes, jit_gnu_attribute_table): ...these new globals
	for the original array.  Include the format attributes.
	(LANG_HOOKS_COMMON_ATTRIBUTE_TABLE): Delete.
	(LANG_HOOKS_FORMAT_ATTRIBUTE_TABLE): Delete.
	(LANG_HOOKS_ATTRIBUTE_TABLE): Define.

2023-11-09  Guillaume Gomez  <guillaume1.gomez@gmail.com>

	* libgccjit++.h:

2023-11-04  David Malcolm  <dmalcolm@redhat.com>

	* jit-playback.cc: Update for changes to diagnostic_context.
	* jit-playback.h: Likewise.

2023-10-25  Vibhav Pant  <vibhavp@gmail.com>

	* jit-recording.cc (recording::global::write_to_dump): Fix
	dump of string literal initializers.

2023-10-22  Iain Sandoe  <iain@sandoe.co.uk>

	* Make-lang.in: Handle Darwin rpaths.

2023-10-02  David Malcolm  <dmalcolm@redhat.com>

	* dummy-frontend.cc (jit_langhook_init): Update for change to
	diagnostic_context callbacks.

2023-08-31  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>

	* jit-playback.cc: Change spelling to macOS.

2023-08-29  Guillaume Gomez  <guillaume1.gomez@gmail.com>

	* docs/topics/compatibility.rst: Add documentation for LIBGCCJIT_ABI_25.
	* docs/topics/types.rst: Add documentation for gcc_jit_type_get_restrict.

2023-08-29  Guillaume Gomez  <guillaume1.gomez@gmail.com>

	* jit-playback.cc: Remove trailing whitespace characters.
	* jit-playback.h: Add get_restrict method.
	* jit-recording.cc: Add get_restrict methods.
	* jit-recording.h: Add get_restrict methods.
	* libgccjit++.h: Add get_restrict methods.
	* libgccjit.cc: Add gcc_jit_type_get_restrict.
	* libgccjit.h: Declare gcc_jit_type_get_restrict.
	* libgccjit.map: Declare gcc_jit_type_get_restrict.

2023-02-16  Patrick Palka  <ppalka@redhat.com>

	* jit-dejagnu.h: Mechanically drop static from static inline
	functions via s/^static inline/inline/g.
	* jit-recording.h: Likewise.

2023-01-07  LIU Hao  <lh_mouse@126.com>

	PR middle-end/108300
	* jit-w32.h: Define `WIN32_LEAN_AND_MEAN` before <windows.h>.

2022-12-21  Martin Liska  <mliska@suse.cz>

	* jit-playback.h: Use unused attribute.

2022-12-14  Antoni Boucher  <bouanto@zoho.com>
	    Guillaume Gomez  <guillaume1.gomez@gmail.com>

	PR jit/108078
	* jit-recording.h: Add vector_type::is_same_type_as method

2022-12-07  Antoni Boucher  <bouanto@zoho.com>
	    Guillaume Gomez  <guillaume1.gomez@gmail.com>

	PR jit/107770
	* jit-playback.cc: Fix vector float comparison
	* jit-playback.h: Update comparison function signature
	* jit-recording.cc: Update call for "new_comparison" function
	* jit-recording.h: Fix vector float comparison

2022-11-20  Jeff Law  <jlaw@ventanamicro.com>

	PR other/104044
	* jit-playback.cc (playback::lvale::mark_addressable): Remove
	extraeous semicolon

2022-11-19  Jonathan Wakely  <jwakely@redhat.com>
	    LIU Hao  <lh_mouse@126.com>

	* jit-playback.cc (playback::context::scoped_lock): Define RAII
	lock type.
	(playback::context::compile): Use scoped_lock to acquire mutex
	for the active playback context.
	(jit_mutex): Change to std::mutex.
	(playback::context::acquire_mutex): Rename to ...
	(playback::context::lock): ... this.
	(playback::context::release_mutex): Rename to ...
	(playback::context::unlock): ... this.
	* jit-playback.h (playback::context): Rename members and declare
	scoped_lock.
	* jit-recording.cc (INCLUDE_PTHREAD_H): Remove unused define.
	* libgccjit.cc (version_mutex): Change to std::mutex.
	(struct jit_version_info): Use std::lock_guard to acquire and
	release mutex.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-09  Martin Liska  <mliska@suse.cz>

	* Make-lang.in:
	* docs/cp/index.rst: Moved to...
	* doc/cp/index.rst: ...here.
	* docs/cp/intro/index.rst: Moved to...
	* doc/cp/intro/index.rst: ...here.
	* docs/cp/intro/tutorial01.rst: Moved to...
	* doc/cp/intro/tutorial01.rst: ...here.
	* docs/cp/intro/tutorial02.rst: Moved to...
	* doc/cp/intro/tutorial02.rst: ...here.
	* docs/cp/intro/tutorial03.rst: Moved to...
	* doc/cp/intro/tutorial03.rst: ...here.
	* docs/cp/intro/tutorial04.rst: Moved to...
	* doc/cp/intro/tutorial04.rst: ...here.
	* docs/cp/topics/asm.rst: Moved to...
	* doc/cp/topics/asm.rst: ...here.
	* docs/cp/topics/compilation.rst: Moved to...
	* doc/cp/topics/compilation.rst: ...here.
	* docs/cp/topics/contexts.rst: Moved to...
	* doc/cp/topics/contexts.rst: ...here.
	* docs/cp/topics/expressions.rst: Moved to...
	* doc/cp/topics/expressions.rst: ...here.
	* docs/cp/topics/functions.rst: Moved to...
	* doc/cp/topics/functions.rst: ...here.
	* docs/cp/topics/index.rst: Moved to...
	* doc/cp/topics/index.rst: ...here.
	* docs/cp/topics/locations.rst: Moved to...
	* doc/cp/topics/locations.rst: ...here.
	* docs/cp/topics/objects.rst: Moved to...
	* doc/cp/topics/objects.rst: ...here.
	* docs/cp/topics/types.rst: Moved to...
	* doc/cp/topics/types.rst: ...here.
	* docs/examples/emit-alphabet.bf: Moved to...
	* doc/examples/emit-alphabet.bf: ...here.
	* docs/examples/tut01-hello-world.c: Moved to...
	* doc/examples/tut01-hello-world.c: ...here.
	* docs/examples/tut01-hello-world.cc: Moved to...
	* doc/examples/tut01-hello-world.cc: ...here.
	* docs/examples/tut02-square.c: Moved to...
	* doc/examples/tut02-square.c: ...here.
	* docs/examples/tut02-square.cc: Moved to...
	* doc/examples/tut02-square.cc: ...here.
	* docs/examples/tut03-sum-of-squares.c: Moved to...
	* doc/examples/tut03-sum-of-squares.c: ...here.
	* docs/examples/tut03-sum-of-squares.cc: Moved to...
	* doc/examples/tut03-sum-of-squares.cc: ...here.
	* docs/examples/tut04-toyvm/Makefile: Moved to...
	* doc/examples/tut04-toyvm/Makefile: ...here.
	* docs/examples/tut04-toyvm/factorial.toy: Moved to...
	* doc/examples/tut04-toyvm/factorial.toy: ...here.
	* docs/examples/tut04-toyvm/fibonacci.toy: Moved to...
	* doc/examples/tut04-toyvm/fibonacci.toy: ...here.
	* docs/examples/tut04-toyvm/toyvm.c: Moved to...
	* doc/examples/tut04-toyvm/toyvm.c: ...here.
	* docs/examples/tut04-toyvm/toyvm.cc: Moved to...
	* doc/examples/tut04-toyvm/toyvm.cc: ...here.
	* docs/examples/tut05-bf.c: Moved to...
	* doc/examples/tut05-bf.c: ...here.
	* docs/index.rst: Moved to...
	* doc/index.rst: ...here.
	* docs/internals/index.rst: Moved to...
	* doc/internals/index.rst: ...here.
	* docs/internals/test-hello-world.exe.log.txt: Moved to...
	* doc/internals/test-hello-world.exe.log.txt: ...here.
	* docs/_build/texinfo/libgccjit-figures/factorial.png: Moved to...
	* doc/intro/factorial.png: ...here.
	* docs/intro/index.rst: Moved to...
	* doc/intro/index.rst: ...here.
	* docs/_build/texinfo/libgccjit-figures/sum-of-squares.png: Moved to...
	* doc/intro/sum-of-squares.png: ...here.
	* docs/intro/tutorial01.rst: Moved to...
	* doc/intro/tutorial01.rst: ...here.
	* docs/intro/tutorial02.rst: Moved to...
	* doc/intro/tutorial02.rst: ...here.
	* docs/intro/tutorial03.rst: Moved to...
	* doc/intro/tutorial03.rst: ...here.
	* docs/intro/tutorial04.rst: Moved to...
	* doc/intro/tutorial04.rst: ...here.
	* docs/intro/tutorial05.rst: Moved to...
	* doc/intro/tutorial05.rst: ...here.
	* docs/topics/asm.rst: Moved to...
	* doc/topics/asm.rst: ...here.
	* docs/topics/compatibility.rst: Moved to...
	* doc/topics/compatibility.rst: ...here.
	* docs/topics/compilation.rst: Moved to...
	* doc/topics/compilation.rst: ...here.
	* docs/topics/contexts.rst: Moved to...
	* doc/topics/contexts.rst: ...here.
	* docs/topics/expressions.rst: Moved to...
	* doc/topics/expressions.rst: ...here.
	* docs/topics/function-pointers.rst: Moved to...
	* doc/topics/function-pointers.rst: ...here.
	* docs/topics/functions.rst: Moved to...
	* doc/topics/functions.rst: ...here.
	* docs/topics/index.rst: Moved to...
	* doc/topics/index.rst: ...here.
	* docs/topics/locations.rst: Moved to...
	* doc/topics/locations.rst: ...here.
	* docs/topics/objects.rst: Moved to...
	* doc/topics/objects.rst: ...here.
	* docs/topics/performance.rst: Moved to...
	* doc/topics/performance.rst: ...here.
	* docs/topics/types.rst: Moved to...
	* doc/topics/types.rst: ...here.
	* docs/Makefile: Removed.
	* docs/_build/texinfo/Makefile: Removed.
	* docs/_build/texinfo/libgccjit-figures/factorial1.png: Removed.
	* docs/_build/texinfo/libgccjit-figures/sum-of-squares1.png: Removed.
	* docs/_build/texinfo/libgccjit.texi: Removed.
	* docs/conf.py: Removed.
	* docs/intro/factorial.png: Removed.
	* docs/intro/sum-of-squares.png: Removed.
	* doc/conf.py: New file.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-14  Martin Liska  <mliska@suse.cz>

	* Make-lang.in: Support --with-sphinx-build.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/internals/index.rst: Fix cross manual refs.
	* doc/topics/contexts.rst: Likewise.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-14  Martin Liska  <mliska@suse.cz>

	* Make-lang.in:
	Support installation if sphinx-build is missing.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/cp/index.rst: Remove trailing .rst in toctree.
	* doc/cp/intro/index.rst: Likewise.
	* doc/cp/topics/index.rst: Likewise.
	* doc/index.rst: Likewise.
	* doc/intro/index.rst: Likewise.
	* doc/topics/index.rst: Likewise.
	* doc/indices-and-tables.rst: New file.

2022-11-11  Martin Liska  <mliska@suse.cz>

	* doc/cp/index.rst: Remove trailing .rst in toctree.
	* doc/cp/intro/index.rst: Likewise.
	* doc/cp/topics/index.rst: Likewise.
	* doc/index.rst: Likewise.
	* doc/intro/index.rst: Likewise.
	* doc/topics/index.rst: Likewise.
	* doc/indices-and-tables.rst: New file.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* Make-lang.in:
	Support installation if sphinx-build is missing.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/internals/index.rst: Fix cross manual refs.
	* doc/topics/contexts.rst: Likewise.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* Make-lang.in: Support --with-sphinx-build.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* Make-lang.in:
	* docs/cp/index.rst: Moved to...
	* doc/cp/index.rst: ...here.
	* docs/cp/intro/index.rst: Moved to...
	* doc/cp/intro/index.rst: ...here.
	* docs/cp/intro/tutorial01.rst: Moved to...
	* doc/cp/intro/tutorial01.rst: ...here.
	* docs/cp/intro/tutorial02.rst: Moved to...
	* doc/cp/intro/tutorial02.rst: ...here.
	* docs/cp/intro/tutorial03.rst: Moved to...
	* doc/cp/intro/tutorial03.rst: ...here.
	* docs/cp/intro/tutorial04.rst: Moved to...
	* doc/cp/intro/tutorial04.rst: ...here.
	* docs/cp/topics/asm.rst: Moved to...
	* doc/cp/topics/asm.rst: ...here.
	* docs/cp/topics/compilation.rst: Moved to...
	* doc/cp/topics/compilation.rst: ...here.
	* docs/cp/topics/contexts.rst: Moved to...
	* doc/cp/topics/contexts.rst: ...here.
	* docs/cp/topics/expressions.rst: Moved to...
	* doc/cp/topics/expressions.rst: ...here.
	* docs/cp/topics/functions.rst: Moved to...
	* doc/cp/topics/functions.rst: ...here.
	* docs/cp/topics/index.rst: Moved to...
	* doc/cp/topics/index.rst: ...here.
	* docs/cp/topics/locations.rst: Moved to...
	* doc/cp/topics/locations.rst: ...here.
	* docs/cp/topics/objects.rst: Moved to...
	* doc/cp/topics/objects.rst: ...here.
	* docs/cp/topics/types.rst: Moved to...
	* doc/cp/topics/types.rst: ...here.
	* docs/examples/emit-alphabet.bf: Moved to...
	* doc/examples/emit-alphabet.bf: ...here.
	* docs/examples/tut01-hello-world.c: Moved to...
	* doc/examples/tut01-hello-world.c: ...here.
	* docs/examples/tut01-hello-world.cc: Moved to...
	* doc/examples/tut01-hello-world.cc: ...here.
	* docs/examples/tut02-square.c: Moved to...
	* doc/examples/tut02-square.c: ...here.
	* docs/examples/tut02-square.cc: Moved to...
	* doc/examples/tut02-square.cc: ...here.
	* docs/examples/tut03-sum-of-squares.c: Moved to...
	* doc/examples/tut03-sum-of-squares.c: ...here.
	* docs/examples/tut03-sum-of-squares.cc: Moved to...
	* doc/examples/tut03-sum-of-squares.cc: ...here.
	* docs/examples/tut04-toyvm/Makefile: Moved to...
	* doc/examples/tut04-toyvm/Makefile: ...here.
	* docs/examples/tut04-toyvm/factorial.toy: Moved to...
	* doc/examples/tut04-toyvm/factorial.toy: ...here.
	* docs/examples/tut04-toyvm/fibonacci.toy: Moved to...
	* doc/examples/tut04-toyvm/fibonacci.toy: ...here.
	* docs/examples/tut04-toyvm/toyvm.c: Moved to...
	* doc/examples/tut04-toyvm/toyvm.c: ...here.
	* docs/examples/tut04-toyvm/toyvm.cc: Moved to...
	* doc/examples/tut04-toyvm/toyvm.cc: ...here.
	* docs/examples/tut05-bf.c: Moved to...
	* doc/examples/tut05-bf.c: ...here.
	* docs/index.rst: Moved to...
	* doc/index.rst: ...here.
	* docs/internals/index.rst: Moved to...
	* doc/internals/index.rst: ...here.
	* docs/internals/test-hello-world.exe.log.txt: Moved to...
	* doc/internals/test-hello-world.exe.log.txt: ...here.
	* docs/_build/texinfo/libgccjit-figures/factorial.png: Moved to...
	* doc/intro/factorial.png: ...here.
	* docs/intro/index.rst: Moved to...
	* doc/intro/index.rst: ...here.
	* docs/_build/texinfo/libgccjit-figures/sum-of-squares.png: Moved to...
	* doc/intro/sum-of-squares.png: ...here.
	* docs/intro/tutorial01.rst: Moved to...
	* doc/intro/tutorial01.rst: ...here.
	* docs/intro/tutorial02.rst: Moved to...
	* doc/intro/tutorial02.rst: ...here.
	* docs/intro/tutorial03.rst: Moved to...
	* doc/intro/tutorial03.rst: ...here.
	* docs/intro/tutorial04.rst: Moved to...
	* doc/intro/tutorial04.rst: ...here.
	* docs/intro/tutorial05.rst: Moved to...
	* doc/intro/tutorial05.rst: ...here.
	* docs/topics/asm.rst: Moved to...
	* doc/topics/asm.rst: ...here.
	* docs/topics/compatibility.rst: Moved to...
	* doc/topics/compatibility.rst: ...here.
	* docs/topics/compilation.rst: Moved to...
	* doc/topics/compilation.rst: ...here.
	* docs/topics/contexts.rst: Moved to...
	* doc/topics/contexts.rst: ...here.
	* docs/topics/expressions.rst: Moved to...
	* doc/topics/expressions.rst: ...here.
	* docs/topics/function-pointers.rst: Moved to...
	* doc/topics/function-pointers.rst: ...here.
	* docs/topics/functions.rst: Moved to...
	* doc/topics/functions.rst: ...here.
	* docs/topics/index.rst: Moved to...
	* doc/topics/index.rst: ...here.
	* docs/topics/locations.rst: Moved to...
	* doc/topics/locations.rst: ...here.
	* docs/topics/objects.rst: Moved to...
	* doc/topics/objects.rst: ...here.
	* docs/topics/performance.rst: Moved to...
	* doc/topics/performance.rst: ...here.
	* docs/topics/types.rst: Moved to...
	* doc/topics/types.rst: ...here.
	* docs/Makefile: Removed.
	* docs/_build/texinfo/Makefile: Removed.
	* docs/_build/texinfo/libgccjit-figures/factorial1.png: Removed.
	* docs/_build/texinfo/libgccjit-figures/sum-of-squares1.png: Removed.
	* docs/_build/texinfo/libgccjit.texi: Removed.
	* docs/conf.py: Removed.
	* docs/intro/factorial.png: Removed.
	* docs/intro/sum-of-squares.png: Removed.
	* doc/conf.py: New file.

2022-09-15  Richard Biener  <rguenther@suse.de>

	* dummy-frontend.cc (jit_langhook_init): Do not initialize
	void_list_node.

2022-08-09  Vibhav Pant  <vibhavp@gmail.com>

	* libgccjit.h (LIBGCCJIT_HAVE_gcc_jit_context_new_bitcast): Move
	definition out of comment.

2022-07-28  David Malcolm  <dmalcolm@redhat.com>

	* docs/internals/index.rst: Remove reference to ".c" extensions
	of source files.

2022-07-28  Martin Liška  <mliska@suse.cz>

	* docs/cp/intro/tutorial02.rst:
	Shorten the assembly example so that there is not slider.
	* docs/cp/intro/tutorial04.rst: Likewise.
	* docs/intro/tutorial02.rst: Likewise.
	* docs/intro/tutorial04.rst: Likewise.
	* docs/topics/contexts.rst: Likewise.

2022-07-28  marxin  <mliska@suse.cz>

	* docs/index.rst: Remove reference to module index
	as we don't emit any.

2022-07-28  marxin  <mliska@suse.cz>

	* docs/cp/intro/tutorial02.rst: Use :expr:`type *` for pointers to a type
	* docs/cp/topics/asm.rst: Likewise.
	* docs/cp/topics/contexts.rst: Likewise.
	* docs/cp/topics/expressions.rst: Likewise.
	* docs/cp/topics/functions.rst: Likewise.
	* docs/cp/topics/objects.rst: Likewise.
	* docs/intro/tutorial02.rst: Likewise.
	* docs/intro/tutorial03.rst: Likewise.
	* docs/intro/tutorial04.rst: Likewise.
	* docs/intro/tutorial05.rst: Likewise.
	* docs/topics/compilation.rst: Likewise.
	* docs/topics/contexts.rst: Likewise.
	* docs/topics/objects.rst: Likewise.

2022-07-28  marxin  <mliska@suse.cz>

	* docs/cp/intro/tutorial04.rst: Use list-table.
	* docs/intro/tutorial04.rst: Likewise.
	* docs/intro/tutorial05.rst: Likewise.
	* docs/topics/compilation.rst: Likewise.
	* docs/topics/expressions.rst: Likewise.
	* docs/topics/types.rst: Likewise.

2022-07-28  marxin  <mliska@suse.cz>

	* docs/cp/topics/expressions.rst: Compact so that the generated
	output is also more compact.

2022-07-28  marxin  <mliska@suse.cz>

	* docs/cp/intro/tutorial02.rst: Use proper reference.
	* docs/cp/topics/contexts.rst: Likewise.
	* docs/cp/topics/functions.rst: Put `class` directive before a
	function as it is not allowed declaring a class in a fn.
	* docs/cp/topics/types.rst: Add template keyword.
	* docs/examples/tut04-toyvm/toyvm.c (toyvm_function_compile):
	Add removed comment used for code snippet ending detection.
	* docs/intro/tutorial04.rst: Fix to match the real comment.

2022-07-28  marxin  <mliska@suse.cz>

	* docs/cp/topics/expressions.rst: Use :expr: for basic types.
	* docs/topics/compilation.rst: Likewise.
	* docs/topics/expressions.rst: Likewise.
	* docs/topics/function-pointers.rst: Likewise.

2022-07-28  marxin  <mliska@suse.cz>

	* docs/conf.py: Add needs_sphinx = '3.0' where c:type was added.
	* docs/index.rst: Remove note about it.
	* docs/topics/compilation.rst: Use enum directive and reference.
	* docs/topics/contexts.rst: Likewise.
	* docs/topics/expressions.rst: Likewise.
	* docs/topics/functions.rst: Likewise.

2022-07-14  Jonathan Wakely  <jwakely@redhat.com>

	* jit-recording.h (recording::memento): Define copy constructor
	and copy assignment operator as deleted.
	(recording::string): Likewise.
	(recording::string::c_str): Add const qualifier.

2022-06-29  Antoni Boucher  <bouanto@zoho.com>

	PR jit/105812
	* jit-playback.cc: Use the correct return type when folding in
	as_truth_value.

2022-06-29  Sergei Trofimovich  <siarheit@google.com>

	PR c++/106102
	* jit-playback.cc: Include <pthread.h> via "system.h" to avoid calloc()
	poisoning.
	* jit-recording.cc: Ditto.
	* libgccjit.cc: Ditto.

2022-06-10  Antoni Boucher  <bouanto@zoho.com>

	PR jit/105829
	* libgccjit.cc: Add support for floating-point types in
	gcc_jit_type_get_size.

2022-06-08  Yang Yujie  <yangyujie@loongson.cn>

	* Make-lang.in: only link objects from $(EXTRA_GCC_OBJS)
	that's not in $(EXTRA_OBJS) into libgccjit.

2022-05-23  David Malcolm  <dmalcolm@redhat.com>

	* jit-recording.h: Add "final" and "override" to all vfunc
	implementations that were missing them, as appropriate.

2022-05-20  David Malcolm  <dmalcolm@redhat.com>

	* jit-playback.h: Replace uses of "FINAL" and "OVERRIDE" with
	"final" and "override".
