Hi,

This is the 10th version of the patch.
Which is rebased on the latest trunk.

Compare with the 9th version, all the difference are in patch #2, including
a small C FE change in the routine "digest_init". all others are middle-end
changes.

please review the changes for the patch #2:

updates per Richard's comments:

1. In the C FE routine "digest_init" of c-typeck.cc,
   when "require_constant" is TRUE, fold the call to .ACCESS_WITH_SIZE
   to its first argument.

   At the same time, delete the special handling of call to .ACCESS_WITH_SIZE
   in the middle end routines "initializer_constant_valid_p_1" and
   "output_constant" in varasm.cc

2. Add ECF_PURE to the new internal-function .ACCESS_WITH_SIZE in 
internal-fn.def.
   As a result, delete all special handling of calls to .ACCESS_WITH_SIZE in
   the files "tree-ssa-alias.cc" and "tree-ssa-dce.cc" and the routine
   "proces_call_operands" of the file "tree.cc" 

3. Delete the unnecessary lines from the routine "expand_DEFERRED_INIT" 
   per Richard's suggestion.

Approval status:
   Patch #1, #3, #4, #5 are all approved;
   Patch #2, All C FE changes, except the change for the routine "digest_init"
    in c-typeck.cc, are approved.

Review needed:

   Patch #2: Middle end change;
             the change for the routine "digest_init" in C FE. 
        
The 9th version is here:
https://gcc.gnu.org/pipermail/gcc-patches/2024-April/649389.html
https://gcc.gnu.org/pipermail/gcc-patches/2024-April/649390.html
https://gcc.gnu.org/pipermail/gcc-patches/2024-April/649391.html
https://gcc.gnu.org/pipermail/gcc-patches/2024-April/649392.html
https://gcc.gnu.org/pipermail/gcc-patches/2024-April/649393.html

It based on the following original proposal:

https://gcc.gnu.org/pipermail/gcc-patches/2023-November/635884.html
Represent the missing dependence for the "counted_by" attribute and its 
consumers

Bootstrapped and regression tested on both X86 and Aarch64, no issue.

Okay for trunk?

thanks.

Qing

Reply via email to