|
| 1 | +2024-04-08 Uros Bizjak < [email protected]> |
| 2 | + |
| 3 | + PR rtl-optimization/112560 |
| 4 | + * combine.cc (try_combine): Replace cc_use_loc with the entire |
| 5 | + new RTX only in case cc_use_loc satisfies COMPARISON_P predicate. |
| 6 | + Otherwise scan the entire cc_use_loc RTX for CC reg to be updated |
| 7 | + with a new mode. |
| 8 | + * config/i386/i386.md (@pushf<mode>2): Allow all CC modes for |
| 9 | + operand 1. |
| 10 | + |
| 11 | +2024-04-08 Thomas Schwinge < [email protected]> |
| 12 | + |
| 13 | + * config/gcn/gcn.opt (--param=gcn-preferred-vectorization-factor): |
| 14 | + New. |
| 15 | + * config/gcn/gcn.cc (gcn_vectorize_preferred_simd_mode) Use it. |
| 16 | + * doc/invoke.texi (Optimize Options): Document it. |
| 17 | + |
| 18 | +2024-04-08 Thomas Schwinge < [email protected]> |
| 19 | + |
| 20 | + * doc/sourcebuild.texi (Effective-Target Keywords): Document |
| 21 | + 'asm_goto_with_outputs'. Add comment to 'lra'. |
| 22 | + |
| 23 | +2024-04-08 Martin Jambor < [email protected]> |
| 24 | + |
| 25 | + PR ipa/113359 |
| 26 | + * ipa-icf-gimple.h (func_checker): New members |
| 27 | + safe_for_total_scalarization_p, m_total_scalarization_limit_known_p |
| 28 | + and m_total_scalarization_limit. |
| 29 | + (func_checker::func_checker): Initialize new member variables. |
| 30 | + * ipa-icf-gimple.cc: Include tree-sra.h. |
| 31 | + (func_checker::func_checker): Initialize new member variables. |
| 32 | + (func_checker::safe_for_total_scalarization_p): New function. |
| 33 | + (func_checker::compare_operand): Use the new function. |
| 34 | + * tree-sra.h (sra_get_max_scalarization_size): Declare. |
| 35 | + (sra_total_scalarization_would_copy_same_data_p): Likewise. |
| 36 | + * tree-sra.cc (prepare_iteration_over_array_elts): New function. |
| 37 | + (class sra_padding_collecting): New. |
| 38 | + (sra_padding_collecting::record_padding): Likewise. |
| 39 | + (scalarizable_type_p): Rename to totally_scalarizable_type_p. Add |
| 40 | + ability to record padding when requested. |
| 41 | + (totally_scalarize_subtree): Split out gathering information necessary |
| 42 | + to iterate over array elements to prepare_iteration_over_array_elts. |
| 43 | + Fix errornous early exit. |
| 44 | + (analyze_all_variable_accesses): Adjust the call to |
| 45 | + totally_scalarizable_type_p. Move determining of total scalariation |
| 46 | + size limit... |
| 47 | + (sra_get_max_scalarization_size): ...here. |
| 48 | + (check_ts_and_push_padding_to_vec): New function. |
| 49 | + (sra_total_scalarization_would_copy_same_data_p): Likewise. |
| 50 | + |
| 51 | +2024-04-08 Martin Jambor < [email protected]> |
| 52 | + |
| 53 | + PR ipa/113907 |
| 54 | + * ipa-prop.h (class ipa_vr): Declare new overload of a member function |
| 55 | + equal_p. |
| 56 | + (ipa_jump_functions_equivalent_p): Declare. |
| 57 | + * ipa-prop.cc (ipa_vr::equal_p): New function. |
| 58 | + (ipa_agg_pass_through_jf_equivalent_p): Likewise. |
| 59 | + (ipa_agg_jump_functions_equivalent_p): Likewise. |
| 60 | + (ipa_jump_functions_equivalent_p): Likewise. |
| 61 | + * ipa-cp.h (values_equal_for_ipcp_p): Declare. |
| 62 | + * ipa-cp.cc (values_equal_for_ipcp_p): Make function public. |
| 63 | + * ipa-icf-gimple.cc: Include alloc-pool.h, symbol-summary.h, sreal.h, |
| 64 | + ipa-cp.h and ipa-prop.h. |
| 65 | + (func_checker::compare_gimple_call): Comapre jump functions. |
| 66 | + |
| 67 | +2024-04-08 Richard Sandiford < [email protected]> |
| 68 | + |
| 69 | + PR target/114607 |
| 70 | + * config/aarch64/aarch64-sve-builtins-base.cc |
| 71 | + (svusdot_impl::expand): Fix botched attempt to swap the operands |
| 72 | + for svsudot. |
| 73 | + |
| 74 | +2024-04-08 Tatsuyuki Ishi < [email protected]> |
| 75 | + |
| 76 | + * config/riscv/riscv.opt: Add -mtls-dialect to configure TLS flavor. |
| 77 | + * config.gcc: Add --with-tls configuration option to change the |
| 78 | + default TLS flavor. |
| 79 | + * config/riscv/riscv.h: Add TARGET_TLSDESC determined from |
| 80 | + -mtls-dialect and with_tls defaults. |
| 81 | + * config/riscv/riscv-opts.h: Define enum riscv_tls_type for the |
| 82 | + two TLS flavors. |
| 83 | + * config/riscv/riscv-protos.h: Define SYMBOL_TLSDESC symbol type. |
| 84 | + * config/riscv/riscv.md: Add instruction sequence for TLSDESC. |
| 85 | + * config/riscv/riscv.cc (riscv_symbol_insns): Add instruction |
| 86 | + sequence length data for TLSDESC. |
| 87 | + (riscv_legitimize_tls_address): Add lowering of TLSDESC. |
| 88 | + * doc/install.texi: Document --with-tls for RISC-V. |
| 89 | + * doc/invoke.texi: Document -mtls-dialect for RISC-V. |
| 90 | + |
| 91 | +2024-04-08 Jakub Jelinek < [email protected]> |
| 92 | + |
| 93 | + PR target/114605 |
| 94 | + * config/s390/s390.cc (s390_const_int_pool_entry_p): Punt |
| 95 | + if mem doesn't have MODE_INT mode, or pool constant doesn't |
| 96 | + have MODE_INT mode, or if pool constant mode is smaller than |
| 97 | + mem mode. If mem mode is different from pool constant mode, |
| 98 | + try to simplify subreg. If that doesn't work, punt, if it |
| 99 | + does, use the simplified constant instead of the constant pool |
| 100 | + constant. |
| 101 | + * config/s390/s390.md (movdi from const pool peephole): If |
| 102 | + either low or high 32-bit part is zero, just emit move insn |
| 103 | + instead of move + ior. |
| 104 | + |
1 | 105 | 2024-04-08 Richard Biener < [email protected]>
|
2 | 106 |
|
3 | 107 | PR tree-optimization/114624
|
|
0 commit comments