1 2020-05-09 Eric Botcazou <ebotcazou@adacore.com>
3 * gcc-interface/*.[ch]: Update copyright year.
5 2020-05-09 Eric Botcazou <ebotcazou@adacore.com>
7 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Access>: Assert that
8 the prefix is not a type.
10 2020-05-09 Eric Botcazou <ebotcazou@adacore.com>
12 * gcc-interface/ada-tree.h (TYPE_PACKED_ARRAY_TYPE_P): Rename into...
13 (TYPE_BIT_PACKED_ARRAY_TYPE_P): ...this.
14 (TYPE_IS_PACKED_ARRAY_TYPE_P): Rename into...
15 (BIT_PACKED_ARRAY_TYPE_P): ...this.
16 (TYPE_IMPL_PACKED_ARRAY_P): Adjust to above renaming.
17 * gcc-interface/gigi.h (maybe_pad_type): Remove IS_USER_TYPE parameter.
18 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Adjust call
20 <E_Ordinary_Fixed_Point_Type>: Remove const qualifiers for tree.
21 <E_Signed_Integer_Subtype>: Remove redundant test and redundant call
22 to associate_original_type_to_packed_array. Turn test into assertion.
23 Call associate_original_type_to_packed_array and modify gnu_entity_name
24 accordingly. Explicitly set the parallel type for GNAT encodings.
25 Call create_type_decl in the misaligned case before maybe_pad_type.
26 <E_Array_Type>: Do not use the name of the implementation type for a
27 packed array when not using GNAT encodings.
28 <E_Array_Subtype>: Move around setting flags. Use the result of the
29 call to associate_original_type_to_packed_array for gnu_entity_name.
30 <E_Record_Subtype>: Create XVS type and XVZ variable only if debug
31 info is requested for the type.
32 Call create_type_decl if a padded type was created for a type entity.
33 (gnat_to_gnu_component_type): Use local variable and adjust calls to
35 (gnat_to_gnu_subprog_type): Adjust call to maybe_pad_type.
36 (gnat_to_gnu_field): Likewise.
37 (validate_size): Adjust to renaming of macro.
38 (set_rm_size): Likewise.
39 (associate_original_type_to_packed_array): Adjust return type and
40 return the name of the original type if GNAT encodings are not used.
41 * gcc-interface/misc.c (gnat_get_debug_typ): Remove obsolete stuff.
42 (gnat_get_fixed_point_type_info): Remove const qualifiers for tree.
43 (gnat_get_array_descr_info): Likewise and set variables lazily.
44 Remove call to maybe_debug_type. Simplify a few computations.
45 (enumerate_modes): Remove const qualifier for tree.
46 * gcc-interface/utils.c (make_type_from_size): Adjust to renaming.
47 (maybe_pad_type): Remove IS_USER_TYPE parameter and adjust. Remove
48 specific code for implementation types for packed arrays.
49 (compute_deferred_decl_context): Remove const qualifier for tree.
50 (convert): Adjust call to maybe_pad_type.
51 (unchecked_convert): Likewise.
52 * gcc-interface/utils2.c (is_simple_additive_expressio): Likewise.
54 2020-05-09 Eric Botcazou <ebotcazou@adacore.com>
56 * gcc-interface/utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Use
57 build_nonshared_array_type to build the common type and declare it.
59 2020-05-09 Eric Botcazou <ebotcazou@adacore.com>
61 * gcc-interface/misc.c (gnat_init_gcc_eh): Do not override the user
62 for -fnon-call-exceptions in default mode.
64 2020-05-09 Eric Botcazou <ebotcazou@adacore.com>
66 * gcc-interface/trans.c (lvalue_required_p) <N_Selected_Component>:
68 <N_Allocator>: Move to...
69 (lvalue_for_aggregate_p): ...here. New function.
70 (Identifier_to_gnu): For an identifier with aggregate type, also
71 call lvalue_for_aggregate_p if lvalue_required_p returned false
72 before substituting the identifier with the constant.
74 2020-05-09 Eric Botcazou <ebotcazou@adacore.com>
76 * gcc-interface/trans.c (gnat_to_gnu): Do not wrap boolean values if
77 they appear in any kind of attribute references.
79 2020-05-09 Eric Botcazou <ebotcazou@adacore.com>
81 * gcc-interface/trans.c (gnat_to_gnu) <N_Assignment_Statement>: Deal
82 with qualified "others" aggregates in the memset case.
84 2020-05-09 Eric Botcazou <ebotcazou@adacore.com>
86 * gcc-interface/decl.c (gnat_to_gnu_param): Also back-annotate the
87 mechanism in the case of an Out parameter only passed by copy-out.
89 2020-05-09 Eric Botcazou <ebotcazou@adacore.com>
91 * gcc-interface/gigi.h (change_qualified_type): Move around.
92 (maybe_vector_array): Likewise.
93 (maybe_padded_object): New static line function.
94 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Component_Size>:
96 <Attr_Null_Parameter>: Remove obsolete code.
97 (Call_to_gn): Likewise. Use maybe_padded_object to remove padding.
98 (gnat_to_gnu): Likewise.
99 <N_String_Literal>: Do not add a useless null character at the end.
100 <N_Indexed_Component>: Likewise and remove obsolete code.
101 (add_decl_expr): Likewise.
102 (maybe_implicit_deref): Likewise.
103 * gcc-interface/utils.c (maybe_unconstrained_array): Likewise.
104 * gcc-interface/utils2.c (gnat_invariant_expr): Likewise.
106 2020-05-09 Eric Botcazou <ebotcazou@adacore.com>
108 * gcc-interface/utils2.c: Include builtins.h.
109 (known_alignment) <ADDR_EXPR>: Use DECL_ALIGN for DECL_P operands
110 and get_object_alignment for the rest.
112 2020-05-08 Eric Botcazou <ebotcazou@adacore.com>
114 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Force at
115 least the unit size for an aliased object of a constrained nominal
116 subtype whose size is variable.
118 2020-05-08 Eric Botcazou <ebotcazou@adacore.com>
120 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Deal
121 with artificial maximally-sized types designed by access types.
122 * gcc-interface/utils.c (packable_type_hash): New structure.
123 (packable_type_hasher): Likewise.
124 (packable_type_hash_table): New hash table.
125 (init_gnat_utils): Initialize it.
126 (destroy_gnat_utils): Destroy it.
127 (packable_type_hasher::equal): New method.
128 (hash_packable_type): New static function.
129 (canonicalize_packable_type): Likewise.
130 (make_packable_type): Make sure not to use too small a type for the
131 size of the new fields. Canonicalize the type if it is named.
133 2020-05-08 Eric Botcazou <ebotcazou@adacore.com>
135 * gcc-interface/trans.c (Raise_Error_to_gnu): Always compute a lower
136 bound and an upper bound for use by the -gnateE switch for range and
137 comparison operators.
139 2020-05-08 Eric Botcazou <ebotcazou@adacore.com>
141 * gcc-interface/decl.c (gnat_to_gnu_param): Do not make a variant of
142 the type in LTO mode.
144 2020-05-04 Mikael Pettersson <mikpelinux@gmail.com>
147 * mingw32.h: Prevent windows.h from including emmintrin.h on Cygwin64.
148 * s-oscons-tmplt.c (Serial_Port_Descriptor): Use System.Win32.HANDLE
151 2020-03-11 Richard Wai <richard@annexi-strayline.com>
153 * gcc-interface/decl.c (gnat_to_gnu_entity): Also test Is_Public on
154 the Alias of the entitiy, if it is present, in the main assertion.
156 2020-02-06 Alexandre Oliva <oliva@adacore.com>
158 * raise-gcc.c (personality_body) [__ARM_EABI_UNWINDER__]:
159 Initialize barrier_cache.sp when ending phase1.
161 2020-01-04 Eric Botcazou <ebotcazou@adacore.com>
163 * gnatvsn.ads: Bump copyright year.
165 2020-01-01 Jakub Jelinek <jakub@redhat.com>
167 Update copyright years.
169 * gnat_ugn.texi: Bump @copying's copyright year.
170 * gnat_rm.texi: Likewise.
172 Copyright (C) 2020 Free Software Foundation, Inc.
174 Copying and distribution of this file, with or without modification,
175 are permitted in any medium without royalty provided the copyright
176 notice and this notice are preserved.