Bacek++ fixed TT #1994 so that .INTERPINFO_ACTIVE_PMCS works again (thanks!); while playing with it I noticed that creating the first instance of a PMC type such as Integer or Float results in the creation of 38 extra PMCs somewhere. (Creating the second and subsequent instances doesn't seem to result in this extra allocation.)
pmichaud@orange:~/parrot$ cat activepmc-2.pir .sub 'main' .include 'interpinfo.pasm' sweep 1 collect $I0 = interpinfo .INTERPINFO_ACTIVE_PMCS say $I0 .local pmc a, b a = new ['Integer'] $I0 = interpinfo .INTERPINFO_ACTIVE_PMCS say $I0 b = new ['Integer'] $I0 = interpinfo .INTERPINFO_ACTIVE_PMCS say $I0 .end pmichaud@orange:~/parrot$ ./parrot activepmc-2.pir 1173 1212 1213 pmichaud@orange:~/parrot$ I'm sure that some of the PMCs are being created to support the PMCProxy instances.... but *38*? That number seems surprisingly high, so I thought I'd bring it up to the list and see if anyone has any ideas about why and where so many extra PMCs are being created. The 38 extra PMCs seems to be per-type; for example, if after creating the two Integers above I then create a new Float object, another 38 PMCs get created somewhere. Thanks, Pm _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev