• In astartup.asm I expected ifdef PROFILE_GRAPH / endif around:

    public profile_current_cost_centre

    profile_current_cost_centre label ptr dq 0

    You removed a dq 0 in astartup.asm:

    garbage_collector_name: ifndef PROFILE_GRAPH dq 0 endif db "garbage_collector" db 0

    But in macho64/astartup.s you added a quad 0:

    garbage_collector_name: .if !PROFILE_GRAPH .quad 0 .endif .quad 0 .ascii "garbage_collector" .byte 0

    Is this intended ?

  • profile_current_cost_centre is exported because it is used in GraphCopy. It must be present in the other runtime systems as well to prevent linking errors.

    The change to macho64/astartup.s should have been the same as the one to astartup.asm. I have fixed this now, thanks.

    I also noticed that my latest change to count tail calls and returns was not applied to macho64/aprofilegraph.s. I have pushed this as well now.

  • In functions code_build_u and code_fill_u are 3 tests of callgraph_profiling.
    The last one can be merged with the previous one if you replace:
    		parameter->p=graph_5;
    with
    		parameter[b_size].p=graph_5;
    
    Could you also remove unnecessary changes to the number of tabs in empty lines and
    add an empty line after the declaration of INSTRUCTION_GRAPH graph_5 ?
    
    Not all labels have a label_name, so test if label_name!=NULL before using strcmp in cgaas.c and cgawas.c.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment