https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97172

--- Comment #31 from Richard Biener <rguenth at gcc dot gnu.org> ---
Looks like DECL_ARGUMENTS of the function refers to SSA names.

(gdb) p function->function_decl.arguments 
$1 = <parm_decl 0x7ffff66b1080>
(gdb) p debug_tree ($1)
 <parm_decl 0x7ffff66b1080 D.1943
    type <pointer_type 0x7ffff658ec78
        type <integer_type 0x7ffff65833f0 char public QI
            size <integer_cst 0x7ffff656adc8 constant 8>
            unit-size <integer_cst 0x7ffff656ade0 constant 1>
            align:8 warn_if_not_align:0 symtab:0 alias-set 0 canonical-type
0x7ffff65833f0 precision:8 min <integer_cst 0x7ffff656ae10 -128> max
<integer_cst 0x7ffff656ae40 127>
            pointer_to_this <pointer_type 0x7ffff658ec78>>
        unsigned DI
        size <integer_cst 0x7ffff656acd8 constant 64>
        unit-size <integer_cst 0x7ffff656acf0 constant 8>
        align:64 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0x7ffff658ec78 reference_to_this <reference_type 0x7ffff669a540>>
    unsigned decl_0 DI t.i:4:5 size <integer_cst 0x7ffff656acd8 64> unit-size
<integer_cst 0x7ffff656acf0 8>
    align:64 warn_if_not_align:0 context <function_decl 0x7ffff66b4000 foo>
    attributes <tree_list 0x7ffff669c8c0
        purpose <identifier_node 0x7ffff66a0780 arg spec>
        value <tree_list 0x7ffff669c870
            value <string_cst 0x7ffff667cf60 constant "[$]\000">
            chain <tree_list 0x7ffff669c848
                value <plus_expr 0x7ffff669c7d0 type <integer_type
0x7ffff65835e8 int>

                    arg:0 <ssa_name 0x7ffff65755e8 type <error_mark
0x7ffff656acc0>
                        nothrow
                        def_stmt 
                        version:1 in-free-list>
                    arg:1 <integer_cst 0x7ffff6588090 constant 1>
                    t.i:4:20 start: t.i:4:10 finish: t.i:4:22>>>> arg-type
<pointer_type 0x7ffff658ec78>>

the "arg spec" attribute refers to a released SSA name.

Reply via email to