[gambit-list] Dependeny graphs for reachable bindings: Gambit 4.9.3 vs 4.9.4

Marc Feeley feeley at iro.umontreal.ca
Tue Jan 4 11:37:45 EST 2022


Indeed v4.9.4 adds dotted lines in the dependency graph.  The meaning of the lines is:

- solid line from A to B: procedure A contains a call to procedure B
- dotted line from A to B: procedure A contains a read or write of variable B

Sometimes there will be both a solid and dotted line from A to B.  This happens often when speculative inlining is done (to respect R5RS semantics).  For example:

(define (f x) (sin x))

will be compiled as:

(define f
  (lambda (x)
    (if (and ('#<procedure #2 ##eq?> sin '#<procedure #3 sin>)
             ('#<procedure #4 ##flonum?> x))
        ('#<procedure #5 ##flsin> x)
        (sin x))))

Procedure f contains a call to sin and a variable reference of sin, so there will be a solid and dotted line between f and sin in the dependency graph:



Moreover, sin is in black to indicate that the file does not contain a definition of sin.  It can help identify undefined procedures/variables, or procedures that should be imported from other modules.

Marc



> On Jan 4, 2022, at 10:15 AM, Sven Hartrumpf <hartrumpf at gmx.net> wrote:
> 
> Investigating the original .dg files showed that the format was extended
> so that my (not too clever) postprocessor missed some pieces of information.
> For example, some dependency arcs are now annotated with "[style = dotted]".
> 
> After fixing this in my postprocessor, the reachability analyses are identical
> when using Gambit 4.9.3 and 4.9.4.
> 
> Ciao
> Sven
> 
> _______________________________________________
> Gambit-list mailing list
> Gambit-list at iro.umontreal.ca
> https://mailman.iro.umontreal.ca/cgi-bin/mailman/listinfo/gambit-list
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.iro.umontreal.ca/pipermail/gambit-list/attachments/20220104/82d98154/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PastedGraphic-1.png
Type: image/png
Size: 18559 bytes
Desc: not available
URL: <http://mailman.iro.umontreal.ca/pipermail/gambit-list/attachments/20220104/82d98154/attachment-0001.png>


More information about the Gambit-list mailing list