|
| 1 | +2025-08-04 Hans-Peter Nilsson < [email protected]> |
| 2 | + |
| 3 | + * defaults.h (MAX_FIXED_MODE_SIZE): Default to 2 * BITS_PER_WORD |
| 4 | + for larger-than-32-bitters. |
| 5 | + * doc/tm.texi.in (MAX_FIXED_MODE_SIZE): Adjust accordingly. Tweak |
| 6 | + wording. |
| 7 | + * doc/tm.texi: Regenerate. |
| 8 | + |
| 9 | +2025-08-04 David Malcolm < [email protected]> |
| 10 | + |
| 11 | + * dump-context.h: Convert "enum optinfo_item_kind" into |
| 12 | + "enum class kind" within class optinfo_item. |
| 13 | + * dumpfile.cc: Likewise. Use "auto" in a few places. |
| 14 | + Convert "enum optinfo_kind" to "enum class kind" within |
| 15 | + class optinfo. |
| 16 | + * opt-problem.cc: Likewise. |
| 17 | + * optinfo-emit-json.cc: Likewise. |
| 18 | + * optinfo.cc: Likewise. |
| 19 | + * optinfo.h: Likewise. |
| 20 | + |
| 21 | +2025-08-04 David Malcolm < [email protected]> |
| 22 | + |
| 23 | + PR diagnostics/116253 |
| 24 | + * diagnostics/context.cc (context::set_nesting_level): New. |
| 25 | + * diagnostics/context.h (context::set_nesting_level): New decl. |
| 26 | + * doc/libgdiagnostics/topics/compatibility.rst |
| 27 | + (LIBGDIAGNOSTICS_ABI_5): New. |
| 28 | + * doc/libgdiagnostics/topics/physical-locations.rst |
| 29 | + (diagnostic_manager_set_debug_physical_locations): New. |
| 30 | + * libgdiagnostics++.h (manager::set_debug_physical_locations): |
| 31 | + New. |
| 32 | + * libgdiagnostics-private.h |
| 33 | + (private_diagnostic_set_nesting_level): New decl. |
| 34 | + * libgdiagnostics.cc (diagnostic_manager::diagnostic_manager): |
| 35 | + Initialize m_debug_physical_locations. |
| 36 | + (diagnostic_manager::new_location_from_file_and_line): Add debug |
| 37 | + printing. |
| 38 | + (diagnostic_manager::new_location_from_file_line_column): |
| 39 | + Likewise. |
| 40 | + (diagnostic_manager::new_location_from_range): Likewise. |
| 41 | + (diagnostic_manager::set_debug_physical_locations): New. |
| 42 | + (diagnostic_manager::ensure_linemap_for_file_and_line): Avoid |
| 43 | + redundant calls to linemap_add. |
| 44 | + (diagnostic_manager::new_location): Add debug printing. |
| 45 | + (diagnostic_manager::m_debug_physical_locations): New field. |
| 46 | + (diagnostic::diagnostic): Initialize m_nesting_level. |
| 47 | + (diagnostic::get_nesting_level): New accessor. |
| 48 | + (diagnostic::set_nesting_level): New. |
| 49 | + (diagnostic::m_nesting_level): New field. |
| 50 | + (diagnostic_manager::emit_va): Set and reset the nesting level |
| 51 | + of the context from that of the diagnostic. |
| 52 | + (diagnostic_manager_set_debug_physical_locations): New. |
| 53 | + (private_diagnostic_set_nesting_level): New. |
| 54 | + * libgdiagnostics.h |
| 55 | + (diagnostic_manager_set_debug_physical_locations): New decl. |
| 56 | + * libgdiagnostics.map (LIBGDIAGNOSTICS_ABI_5): New. |
| 57 | + * libsarifreplay.cc (sarif_replayer::handle_result_obj): Support |
| 58 | + the "nestingLevel" property. |
| 59 | + * libsarifreplay.h (replay_options::m_debug_physical_locations): |
| 60 | + New field. |
| 61 | + * sarif-replay.cc: Add -fdebug-physical-locations. |
| 62 | + |
| 63 | +2025-08-04 David Malcolm < [email protected]> |
| 64 | + |
| 65 | + PR diagnostics/116792 |
| 66 | + * diagnostics/html-sink.cc |
| 67 | + (html_builder::make_element_for_diagnostic): Don't add the |
| 68 | + metadata element if it's empty. |
| 69 | + (html_builder::make_element_for_metadata): Return null rather than |
| 70 | + an empty element. |
| 71 | + |
| 72 | +2025-08-04 David Malcolm < [email protected]> |
| 73 | + |
| 74 | + * diagnostics/context.h: Move struct counters to its own header |
| 75 | + and include it. |
| 76 | + * diagnostics/counters.h: New file, from the above. |
| 77 | + |
| 78 | +2025-08-04 David Malcolm < [email protected]> |
| 79 | + |
| 80 | + * diagnostics/context.h: Split struct source_printing_options out |
| 81 | + into "diagnostics/source-printing-options.h" and include it. |
| 82 | + * diagnostics/source-printing-options.h: New file, from the above. |
| 83 | + |
| 84 | +2025-08-04 David Malcolm < [email protected]> |
| 85 | + |
| 86 | + * diagnostics/context.cc: Update for renaming of option_manager to |
| 87 | + option_id_manager and of context::m_option_mgr to |
| 88 | + context::m_option_id_mgr. |
| 89 | + * diagnostics/context.h: Likewise, moving class declaration to a |
| 90 | + new diagnostics/option-id-manager.h. |
| 91 | + * diagnostics/lazy-paths.cc: Likewise. |
| 92 | + * diagnostics/option-id-manager.h: New file, from material in |
| 93 | + diagnostics/context.h. |
| 94 | + * lto-wrapper.cc: Update for renaming of option_manager to |
| 95 | + option_id_manager. |
| 96 | + * opts-common.cc: Likewise. |
| 97 | + * opts-diagnostic.h: Likewise. |
| 98 | + * opts.cc: Likewise. |
| 99 | + * toplev.cc: Likewise. |
| 100 | + |
| 101 | +2025-08-04 David Malcolm < [email protected]> |
| 102 | + |
| 103 | + * diagnostics/buffering.h: Update comment to refer to output sinks |
| 104 | + rather than output formats. |
| 105 | + |
| 106 | +2025-08-04 David Malcolm < [email protected]> |
| 107 | + |
| 108 | + * gimple-warn-recursion.cc (pass_warn_recursion::execute): Add |
| 109 | + missing auto_diagnostic_group. |
| 110 | + |
| 111 | +2025-08-04 Konstantinos Eleftheriou < [email protected]> |
| 112 | + |
| 113 | + PR rtl-optimization/121303 |
| 114 | + * avoid-store-forwarding.cc (is_store_forwarding): Add check |
| 115 | + for `off_val` in `is_store_forwarding`. |
| 116 | + |
| 117 | +2025-08-04 Richard Biener < [email protected]> |
| 118 | + |
| 119 | + * tree-vect-slp.cc (vect_analyze_slp): When analyzing a loop |
| 120 | + and slp instance discovery fails, immediately fail the whole |
| 121 | + process. |
| 122 | + |
| 123 | +2025-08-04 Richard Sandiford < [email protected]> |
| 124 | + |
| 125 | + * config/aarch64/aarch64-sve-builtins.cc |
| 126 | + (function_expander::expand): Assert that the return value |
| 127 | + has an appropriate mode. |
| 128 | + |
| 129 | +2025-08-04 Richard Sandiford < [email protected]> |
| 130 | + |
| 131 | + * config/aarch64/aarch64-protos.h |
| 132 | + (aarch64_convert_sve_data_to_pred): Remove the mode argument. |
| 133 | + * config/aarch64/aarch64.cc |
| 134 | + (aarch64_sve_emit_int_cmp): Allow PRED_MODE to be VNx16BI or |
| 135 | + the natural predicate mode for the data mode. |
| 136 | + (aarch64_convert_sve_data_to_pred): Remove the mode argument |
| 137 | + and instead always create a VNx16BI result. |
| 138 | + (aarch64_expand_sve_const_pred): Update call accordingly. |
| 139 | + * config/aarch64/aarch64-sve-builtins-base.cc |
| 140 | + (svdupq_impl::expand): Likewise, ensuring that the result |
| 141 | + has mode VNx16BI. |
| 142 | + |
| 143 | +2025-08-04 Richard Sandiford < [email protected]> |
| 144 | + |
| 145 | + * config/aarch64/aarch64-protos.h |
| 146 | + (aarch64_emit_sve_pred_vec_duplicate): Declare. |
| 147 | + * config/aarch64/aarch64.cc |
| 148 | + (aarch64_emit_sve_pred_vec_duplicate): New function. |
| 149 | + * config/aarch64/aarch64-sve.md (vec_duplicate<PRED_ALL:mode>): Use it. |
| 150 | + * config/aarch64/aarch64-sve-builtins-base.cc |
| 151 | + (svdup_impl::expand): Handle boolean values specially. Check for |
| 152 | + constants and fall back on aarch64_emit_sve_pred_vec_duplicate |
| 153 | + for the variable case, ensuring that the result has mode VNx16BI. |
| 154 | + |
| 155 | +2025-08-04 Richard Sandiford < [email protected]> |
| 156 | + |
| 157 | + * config/aarch64/iterators.md (PNEXT_ONLY): New int iterator. |
| 158 | + * config/aarch64/aarch64-sve.md |
| 159 | + (@aarch64_sve_<sve_pred_op><mode>): Restrict SVE_PITER pattern |
| 160 | + to VNx16BI_ONLY. |
| 161 | + (@aarch64_sve_<sve_pred_op><mode>): New PNEXT_ONLY pattern for |
| 162 | + PRED_HSD. |
| 163 | + (*aarch64_sve_<sve_pred_op><mode>): Likewise. |
| 164 | + (*aarch64_sve_<sve_pred_op><mode>_cc): Likewise. |
| 165 | + |
| 166 | +2025-08-04 Richard Sandiford < [email protected]> |
| 167 | + |
| 168 | + * config/aarch64/aarch64-sve2.md (@aarch64_pred_<sve_int_op><mode>): |
| 169 | + Split SVE2_MATCH pattern into a VNx16QI_ONLY define_ins and a |
| 170 | + VNx8HI_ONLY define_expand. Use a VNx16BI destination for the latter. |
| 171 | + (*aarch64_pred_<sve_int_op><mode>): New SVE2_MATCH pattern for |
| 172 | + VNx8HI_ONLY. |
| 173 | + (*aarch64_pred_<sve_int_op><mode>_cc): Likewise. |
| 174 | + |
| 175 | +2025-08-04 Richard Sandiford < [email protected]> |
| 176 | + |
| 177 | + * config/aarch64/aarch64-sve.md (@aarch64_pred_fac<cmp_op><mode>): |
| 178 | + Replace with... |
| 179 | + (@aarch64_pred_fac<cmp_op><mode>_acle): ...this new expander. |
| 180 | + (*aarch64_pred_fac<cmp_op><mode>_strict_acle): New pattern. |
| 181 | + * config/aarch64/aarch64-sve-builtins-base.cc |
| 182 | + (svac_impl::expand): Update accordingly. |
| 183 | + |
| 184 | +2025-08-04 Richard Sandiford < [email protected]> |
| 185 | + |
| 186 | + * config/aarch64/aarch64-sve.md (@aarch64_pred_fcm<cmp_op><mode>_acle) |
| 187 | + (*aarch64_pred_fcm<cmp_op><mode>_acle, @aarch64_pred_fcmuo<mode>_acle) |
| 188 | + (*aarch64_pred_fcmuo<mode>_acle): New patterns. |
| 189 | + * config/aarch64/aarch64-sve-builtins-base.cc |
| 190 | + (svcmp_impl::expand, svcmpuo_impl::expand): Use them. |
| 191 | + |
| 192 | +2025-08-04 Richard Sandiford < [email protected]> |
| 193 | + |
| 194 | + * config/aarch64/aarch64-sve.md (@aarch64_pred_cmp<cmp_op><mode>_wide): |
| 195 | + Split into VNx16QI_ONLY and SVE_FULL_HSI patterns. Use VNx16BI |
| 196 | + results for both. |
| 197 | + (*aarch64_pred_cmp<cmp_op><mode>_wide): New pattern. |
| 198 | + (*aarch64_pred_cmp<cmp_op><mode>_wide_cc): Likewise. |
| 199 | + |
| 200 | +2025-08-04 Richard Sandiford < [email protected]> |
| 201 | + |
| 202 | + * config/aarch64/aarch64-sve.md |
| 203 | + (*aarch64_pred_cmp<cmp_op><mode>_wide_cc): Turn into a |
| 204 | + define_insn_and_rewrite and rewrite the governing predicate |
| 205 | + of the comparison so that it is identical to the PTEST's. |
| 206 | + (*aarch64_pred_cmp<cmp_op><mode>_wide_ptest): Likewise. |
| 207 | + |
| 208 | +2025-08-04 Richard Sandiford < [email protected]> |
| 209 | + |
| 210 | + * config/aarch64/aarch64-sve.md (@aarch64_pred_cmp<cmp_op><mode>_wide) |
| 211 | + (*aarch64_pred_cmp<cmp_op><mode>_wide_cc): Use <VPRED> instead of |
| 212 | + VNx16BI for the governing predicate. |
| 213 | + (*aarch64_pred_cmp<cmp_op><mode>_wide_ptest): Likewise. |
| 214 | + |
| 215 | +2025-08-04 Richard Sandiford < [email protected]> |
| 216 | + |
| 217 | + * config/aarch64/aarch64-sve.md (@aarch64_pred_cmp<cmp_op><mode>_acle) |
| 218 | + (*aarch64_pred_cmp<cmp_op><mode>_acle, *cmp<cmp_op><mode>_acle_cc) |
| 219 | + (*cmp<cmp_op><mode>_acle_and): New patterns that yield VNx16BI |
| 220 | + results for all element types. |
| 221 | + * config/aarch64/aarch64-sve-builtins-base.cc |
| 222 | + (svcmp_impl::expand): Use them. |
| 223 | + (svcmp_wide_impl::expand): Likewise when implementing an svcmp_wide |
| 224 | + against an in-range constant. |
| 225 | + |
| 226 | +2025-08-04 Richard Sandiford < [email protected]> |
| 227 | + |
| 228 | + * config/aarch64/aarch64-sve.md (@aarch64_sve_punpk<perm_hilo>_acle) |
| 229 | + (*aarch64_sve_punpk<perm_hilo>_acle): New patterns. |
| 230 | + * config/aarch64/aarch64-sve-builtins-base.cc |
| 231 | + (svunpk_impl::expand): Use them for boolean svunpk*. |
| 232 | + |
| 233 | +2025-08-04 Richard Sandiford < [email protected]> |
| 234 | + |
| 235 | + PR target/121294 |
| 236 | + * config/aarch64/aarch64.md (UNSPEC_REV_PRED): New unspec. |
| 237 | + * config/aarch64/aarch64-sve.md (@aarch64_sve_rev<mode>_acle) |
| 238 | + (*aarch64_sve_rev<mode>_acle): New patterns. |
| 239 | + * config/aarch64/aarch64-sve-builtins-base.cc |
| 240 | + (svrev_impl::expand): Use the new patterns for boolean svrev. |
| 241 | + |
| 242 | +2025-08-04 Richard Sandiford < [email protected]> |
| 243 | + |
| 244 | + PR target/121294 |
| 245 | + * config/aarch64/iterators.md (UNSPEC_TRN1_CONV): Delete. |
| 246 | + (UNSPEC_PERMUTE_PRED): New unspec. |
| 247 | + * config/aarch64/aarch64-sve.md (@aarch64_sve_trn1_conv<mode>): |
| 248 | + Replace with... |
| 249 | + (@aarch64_sve_<perm_insn><mode>_acle) |
| 250 | + (*aarch64_sve_<perm_insn><mode>_acle): ...these new patterns. |
| 251 | + * config/aarch64/aarch64.cc (aarch64_expand_sve_const_pred_trn): |
| 252 | + Update accordingly. |
| 253 | + * config/aarch64/aarch64-sve-builtins-functions.h |
| 254 | + (binary_permute::expand): Use the new _acle patterns for |
| 255 | + predicate operations. |
| 256 | + |
| 257 | +2025-08-04 Richard Sandiford < [email protected]> |
| 258 | + |
| 259 | + PR testsuite/121118 |
| 260 | + * config/aarch64/iterators.md (VNx16BI_ONLY): New mode iterator. |
| 261 | + * config/aarch64/predicates.md (aarch64_ptrue_all_operand): New |
| 262 | + predicate. |
| 263 | + * config/aarch64/aarch64-sve.md |
| 264 | + (@aarch64_sve_while_<while_optab_cmp><GPI:mode><VNx16BI_ONLY:mode>_acle) |
| 265 | + (@aarch64_sve_while_<while_optab_cmp><GPI:mode><PRED_HSD:mode>_acle) |
| 266 | + (*aarch64_sve_while_<while_optab_cmp><GPI:mode><PRED_HSD:mode>_acle) |
| 267 | + (*while_<while_optab_cmp><GPI:mode><PRED_HSD:mode>_acle_cc): New |
| 268 | + patterns. |
| 269 | + * config/aarch64/aarch64-sve-builtins-functions.h |
| 270 | + (while_comparison::expand): Use the new _acle patterns that |
| 271 | + always return a VNx16BI. |
| 272 | + * config/aarch64/aarch64-sve-builtins-sve2.cc |
| 273 | + (svwhilerw_svwhilewr_impl::expand): Likewise. |
| 274 | + * config/aarch64/aarch64.cc |
| 275 | + (aarch64_sve_move_pred_via_while): Likewise. |
| 276 | + |
| 277 | +2025-08-04 Richard Sandiford < [email protected]> |
| 278 | + |
| 279 | + PR target/121293 |
| 280 | + * config/aarch64/aarch64-sve-builtins-base.cc (svdupq_lane::expand): |
| 281 | + Use aarch64_sve_reinterpret instead of subregs. Explicitly |
| 282 | + reinterpret the result back to the required mode, rather than |
| 283 | + leaving the caller to take a subreg. |
| 284 | + |
| 285 | +2025-08-04 Richard Biener < [email protected]> |
| 286 | + |
| 287 | + PR tree-optimization/121362 |
| 288 | + * tree-ssa-sccvn.cc (vn_reference_lookup_3): Generalize |
| 289 | + aggregate copy handling. |
| 290 | + |
| 291 | +2025-08-04 Filip Kastl < [email protected]> |
| 292 | + |
| 293 | + * doc/invoke.texi: Add remark about -options being documented |
| 294 | + under -fdump-tree. Remove remark about -graph working only for |
| 295 | + RTL. |
| 296 | + |
| 297 | +2025-08-04 H.J. Lu < [email protected]> |
| 298 | + |
| 299 | + PR target/120941 |
| 300 | + * config/i386/i386-features.cc (x86_cse_kind): Moved before |
| 301 | + ix86_place_single_vector_set. |
| 302 | + (redundant_load): Likewise. |
| 303 | + (ix86_place_single_vector_set): Replace the last argument to the |
| 304 | + pointer to redundant_load. For X86_CSE_VEC_DUP, don't place the |
| 305 | + vector set outside of the loop to avoid extra spills. |
| 306 | + (remove_redundant_vector_load): Pass load to |
| 307 | + ix86_place_single_vector_set. |
| 308 | + |
1 | 309 | 2025-08-03 Georg-Johann Lay < [email protected]>
|
2 | 310 |
|
3 | 311 | * config/avr/avr.md (define_insn_and_split) [reload_completed]:
|
|
0 commit comments