Skip to content
Snippets Groups Projects
  • Richard Henderson's avatar
    f2d3d07e
    Allow the front-end to create calls with a static chain · f2d3d07e
    Richard Henderson authored
    And, at the same time, allow indirect calls to have a static chain.
    We'll always eliminate the static chain if we can prove it's unused.
    
            * calls.c (prepare_call_address): Allow decl or type for first arg.
            (expand_call): Pass type to prepare_call_address if no decl.
            * gimple-fold.c (gimple_fold_call): Eliminate the static chain if
            the function doesn't use it; fold it otherwise.
            * gimplify.c (gimplify_call_expr): Gimplify the static chain.
            * tree-cfg.c (verify_gimple_call): Allow a static chain on indirect
            function calls.
    
    From-SVN: r217770
    f2d3d07e
    History
    Allow the front-end to create calls with a static chain
    Richard Henderson authored
    And, at the same time, allow indirect calls to have a static chain.
    We'll always eliminate the static chain if we can prove it's unused.
    
            * calls.c (prepare_call_address): Allow decl or type for first arg.
            (expand_call): Pass type to prepare_call_address if no decl.
            * gimple-fold.c (gimple_fold_call): Eliminate the static chain if
            the function doesn't use it; fold it otherwise.
            * gimplify.c (gimplify_call_expr): Gimplify the static chain.
            * tree-cfg.c (verify_gimple_call): Allow a static chain on indirect
            function calls.
    
    From-SVN: r217770