Re: VectorEnginePlugin changes circa march 2026

Eliot Miranda <[email protected]>
Newsgroups gmane.comp.lang.smalltalk.squeak.general
Message-ID <CAC20JE1G20=SZhS2Dkd78gseMd2uy0yV2sBPrA4BH4r4CTOX1A@mail.gmail.com>
(& ignore my request for the OS; I was being blind; Sorry)

But can you run e.g. dumpbin /exports on VectorEnginePlugin.dll?

Here's what i get on an ARMv8 Windows build. Looks like everything is in
place:

Z:\oscogvm\building\win64ARMv8\squeak.cog.spur>dumpbin /exports
build\vm\VectorEnginePlugin.dll
Microsoft (R) COFF/PE Dumper Version 14.40.33812.0
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file build\vm\VectorEnginePlugin.dll

File Type: DLL

  Section contains the following exports for VectorEnginePlugin.dll

    00000000 characteristics
    FFFFFFFF time date stamp
        0.00 version
           1 ordinal base
          81 number of functions
          81 number of names

    ordinal hint RVA      name

          1    0 00001000 dashedStrokeBitsSet = dashedStrokeBitsSet
          2    1 0000F258 dashedStrokeBitsSetMetadata =
dashedStrokeBitsSetMetadata
          3    2 00001158 getModuleName = getModuleName
          4    3 00001164 pluginApiVersion = pluginApiVersion
          5    4 0000119C primAntiAliasingWidthsubPixelDelta =
primAntiAliasingWidthsubPixelDelta
          6    5 0000F25C primAntiAliasingWidthsubPixelDeltaMetadata =
primAntiAliasingWidthsubPixelDeltaMetadata
          7    6 0000128C primArc = primArc
          8    7 0000F260 primArcMetadata = primArcMetadata
          9    8 00001C58 primArcWP = primArcWP
         10    9 0000F264 primArcWPMetadata = primArcWPMetadata
         11    A 00002374 primBlendFillOnly = primBlendFillOnly
         12    B 0000F268 primBlendFillOnlyMetadata =
primBlendFillOnlyMetadata
         13    C 00002A94 primBlendFillOnlyWP = primBlendFillOnlyWP
         14    D 0000F26C primBlendFillOnlyWPMetadata =
primBlendFillOnlyWPMetadata
         15    E 000030A0 primBlendStrokeAndFill = primBlendStrokeAndFill
         16    F 0000F270 primBlendStrokeAndFillMetadata =
primBlendStrokeAndFillMetadata
         17   10 00003AD0 primBlendStrokeAndFillWP =
primBlendStrokeAndFillWP
         18   11 0000F274 primBlendStrokeAndFillWPMetadata =
primBlendStrokeAndFillWPMetadata
         19   12 000042F4 primBlendStrokeOnly = primBlendStrokeOnly
         20   13 0000F278 primBlendStrokeOnlyMetadata =
primBlendStrokeOnlyMetadata
         21   14 0000475C primBlendStrokeOnlyWP = primBlendStrokeOnlyWP
         22   15 0000F27C primBlendStrokeOnlyWPMetadata =
primBlendStrokeOnlyWPMetadata
         23   16 00004BBC primClearClippingSpec = primClearClippingSpec
         24   17 00004BCC primClipLeftclipTopclipRightclipBottom =
primClipLeftclipTopclipRightclipBottom
         25   18 0000F280 primClipLeftclipTopclipRightclipBottomMetadata =
primClipLeftclipTopclipRightclipBottomMetadata
         26   19 00004D10 primCubicBezier = primCubicBezier
         27   1A 0000F284 primCubicBezierMetadata = primCubicBezierMetadata
         28   1B 0000535C primCubicBezierWP = primCubicBezierWP
         29   1C 0000F288 primCubicBezierWPMetadata =
primCubicBezierWPMetadata
         30   1D 00005994 primCurrentMorphId = primCurrentMorphId
         31   1E 0000F28C primCurrentMorphIdMetadata =
primCurrentMorphIdMetadata
         32   1F 00005A24 primDisplayByteString = primDisplayByteString
         33   20 0000F290 primDisplayByteStringMetadata =
primDisplayByteStringMetadata
         34   21 000061F0 primDisplayByteStringWP = primDisplayByteStringWP
         35   22 0000F294 primDisplayByteStringWPMetadata =
primDisplayByteStringWPMetadata
         36   23 00006CE8 primDisplayUtf32 = primDisplayUtf32
         37   24 0000F298 primDisplayUtf32Metadata =
primDisplayUtf32Metadata
         38   25 00007524 primDisplayUtf32WP = primDisplayUtf32WP
         39   26 0000F29C primDisplayUtf32WPMetadata =
primDisplayUtf32WPMetadata
         40   27 00007D60 primDisplayUtf8 = primDisplayUtf8
         41   28 0000F2A0 primDisplayUtf8Metadata = primDisplayUtf8Metadata
         42   29 00008544 primDisplayUtf8WP = primDisplayUtf8WP
         43   2A 0000F2A4 primDisplayUtf8WPMetadata =
primDisplayUtf8WPMetadata
         44   2B 00008D24 primFillRGBA = primFillRGBA
         45   2C 0000F2A8 primFillRGBAMetadata = primFillRGBAMetadata
         46   2D 00008E8C primGeometryTxSet = primGeometryTxSet
         47   2E 0000F2AC primGeometryTxSetMetadata =
primGeometryTxSetMetadata
         48   2F 00009050 primInitializePath = primInitializePath
         49   30 0000909C primLine = primLine
         50   31 0000F2B0 primLineMetadata = primLineMetadata
         51   32 000093C4 primLineWP = primLineWP
         52   33 0000F2B4 primLineWPMetadata = primLineWPMetadata
         53   34 000096EC primNewTrajectoryFragment =
primNewTrajectoryFragment
         54   35 00009728 primPathSequence = primPathSequence
         55   36 0000F2B8 primPathSequenceMetadata =
primPathSequenceMetadata
         56   37 00009D3C primPathSequenceWP = primPathSequenceWP
         57   38 0000F2BC primPathSequenceWPMetadata =
primPathSequenceWPMetadata
         58   39 0000A344 primQuadraticBezier = primQuadraticBezier
         59   3A 0000F2C0 primQuadraticBezierMetadata =
primQuadraticBezierMetadata
         60   3B 0000A4DC primQuadraticBezierWP = primQuadraticBezierWP
         61   3C 0000F2C4 primQuadraticBezierWPMetadata =
primQuadraticBezierWPMetadata
         62   3D 0000A674 primResetContour = primResetContour
         63   3E 0000F2C8 primResetContourMetadata =
primResetContourMetadata
         64   3F 0000A7F0 primSetClippingSpec = primSetClippingSpec
         65   40 0000F2CC primSetClippingSpecMetadata =
primSetClippingSpecMetadata
         66   41 0000A884 primSetTarget = primSetTarget
         67   42 0000F2D0 primSetTargetMetadata = primSetTargetMetadata
         68   43 0000AAE0 primSetTargetWP = primSetTargetWP
         69   44 0000F2D4 primSetTargetWPMetadata = primSetTargetWPMetadata
         70   45 0000AD3C primSpanBottom = primSpanBottom
         71   46 0000AD88 primSpanLeft = primSpanLeft
         72   47 0000ADE8 primSpanRight = primSpanRight
         73   48 0000AE44 primSpanTop = primSpanTop
         74   49 0000AE98 primStrokeRGBA = primStrokeRGBA
         75   4A 0000F2D8 primStrokeRGBAMetadata = primStrokeRGBAMetadata
         76   4B 0000B000 primStrokeWidthHop = primStrokeWidthHop
         77   4C 0000F2DC primStrokeWidthHopMetadata =
primStrokeWidthHopMetadata
         78   4D 0000B154 primTargetAssumedOpaque = primTargetAssumedOpaque
         79   4E 0000F2E0 primTargetAssumedOpaqueMetadata =
primTargetAssumedOpaqueMetadata
         80   4F 0000B1E8 primUpdateContourLastLine =
primUpdateContourLastLine
         81   50 0000B228 setInterpreter = setInterpreter

  Summary

        1000 .data
        1000 .pdata
        2000 .rdata
        1000 .reloc
        C000 .text

On Thu, Aug 13, 2026 at 1:37 PM Eliot Miranda <[email protected]>
wrote:

> Hi Stéphane,
>
> On Thu, Aug 13, 2026 at 2:59 AM Stéphane Rollandin <[email protected]>
> wrote:
>
>> Hello again,
>>
>> I am still in the process of porting my code to Squeak6.1
>>
>> I see that the VectorEnginePlugin.dll in the Windows 64 VM has changed
>> from release https://files.squeak.org/6.1beta/Squeak6.1beta-23713-64bit/
>> to release https://files.squeak.org/6.1beta/Squeak6.1beta-23837-64bit/
>>
>> After this changes, it shrunk from around 278 Ko to 74 Ko, and stopped
>> working for me.
>>
>
> I'm not sure. Can you provide the info in About Squeak for these two, and
> which OS you're running on?
>
> If I look at the size of the generated code for all revisions of the
> VectorEnginePlugin I don't see any obvious changes that would account for
> this.
>
> $ for c in `git log src/plugins/VectorEnginePlugin/VectorEnginePlugin.c |
> grep \^commit | sed 's/^commit //'`; do echo $c; git show -s --format=%cd
> $c;git show $c:src/plugins/VectorEnginePlugin/VectorEnginePlugin.c | wc;
> done
> 759d8f204b9c7f2e4e69a138a55d96209ec2d552
> Thu Mar 5 14:49:45 2026 -0800
>     5637   23356  183347
> d0e7e461e59e51560158d4f319164949472b9627
> Sun Nov 16 12:09:50 2025 -0800
>     5633   23338  183231
> a51d41c162db9b5f4050733dd0e1e46d0136fcd0
> Sun Nov 16 10:32:15 2025 -0800
>     5633   23338  183230
> b5f212dc137c2b135cd7a6b2eea71df87998d5ea
> Thu Oct 23 11:08:07 2025 -0700
>     5633   23338  183230
> 026ca645ea9e169e81a0db08c2e0f87e2651646b
> Sun Aug 31 16:59:38 2025 -0700
>     5628   22968  180990
> 3be65d09f4f119843ee8aa83681ff7c9050cb810
> Sat Aug 30 23:14:07 2025 -0700
>     5628   22968  181002
> aa56b1d75daa9daa8f3cb0026cf368b556ac9a05
> Tue May 20 13:09:20 2025 -0700
>     5628   22971  181008
> fe164819e4a3057e5dad61525334f7e6fdbd85ce
> Thu Apr 24 13:41:50 2025 -0700
>     5628   22969  180992
> 22aec3d8957d837dd297c48e2a2ef8a452f0094b
> Sat Feb 8 12:02:59 2025 -0800
>     5038   20035  162118
>
>
>> For example,
>>
>>         <primitive: 'primStrokeWidth' module: 'VectorEnginePlugin'>
>>
>> now fails.
>>
>
> Hmmm, the current commit contains primStrokeWidthHop, not primStrokeWidth.
> So this changed in April of last year:
>
> fe164819e4a3057e5dad61525334f7e6fdbd85ce
> Thu Apr 24 13:41:50 2025 -0700
> EXPORT(sqInt) primStrokeWidthHop(void);
> primStrokeWidthHop(void)
> {(void*)_m, "primStrokeWidthHop\000\000\000", (void*)primStrokeWidthHop},
> 22aec3d8957d837dd297c48e2a2ef8a452f0094b
> Sat Feb 8 12:02:59 2025 -0800
> EXPORT(sqInt) primStrokeWidth(void);
> primStrokeWidth(void)
> {(void*)_m, "primStrokeWidth\000\000\000", (void*)primStrokeWidth},
>
>
>> Is this expected? What happened exactly?
>>
>
> Looks like it. I would check the Cuis vectorEngine sources and see if they
> have changed,
>
> Stef
>>
>> Squeak-dev mailing list -- [email protected]
>> To unsubscribe send an email to
>> [email protected]
>>
>
> HTH
>
> _,,,^..^,,,_
> best, Eliot
>


-- 
_,,,^..^,,,_
best, Eliot

Squeak-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.