Hi y'all,
Progress. I managed to fix the remaining GF fields, including QRCode and the various Aztec fields. Verified with the RS Java code. Loading the latest ProCrypto-1-1-1 and ProCryptoTests-1-1-1 will load the latest RSFEC.
Installer ss project: 'Cryptography'; install: 'ProCrypto-1-1-1'; install: 'ProCryptoTests-1-1-1'; install: 'CryptographyRSPlugin'.
Currently all methods are pluganized except for { #encode: #runEuclideanAlgorithm:..., #dividePoly... & @decode:twoS: }. I am getting segfaults on those primitives when called. Investigating...
- 41541 tallies, 53540 msec.
((116473 - 53540) / 116473) asFloat * 100 54% SpeedUp
**Leaves**
Unpluganized 24.7% {13224ms} RSFECDecoderWithPlugin>>decode:twoS: 3.0% {1587ms} RSFECDecoderWithPlugin>>runEuclideanAlgorithmPoly:poly:rDegrees:
Pluganized 16.9% {9045ms} RSFECGenericGFPoly class>>newField:coefficients: 6.2% {3311ms} RSFECDecoderWithPlugin>>primFindErrorLocationsDegree:coefficients:fieldSize:expTable:logTable: 4.2% {2245ms} RSFECGenericGFPolyWithPlugin>>addOrSubtractPoly: 2.5% {1317ms} RSFECDecoderWithPlugin>>findErrorMagnitudes:errorLocations: 1.7% {887ms} RSFECGenericGFWithPlugin>>log: 1.1% {583ms} RSFECGenericGFPolyWithPlugin>>degree
Other 8.2% {4414ms} LargePositiveInteger(Integer)>>bitShift: 5.8% {3115ms} SecureHashAlgorithm>>finalHash 5.2% {2775ms} ByteArray class(Behavior)>>new: 5.1% {2705ms} LargePositiveInteger>>+ 3.1% {1639ms} SecureHashAlgorithm>>hashInteger:seed: 2.4% {1260ms} SecureRandom>>nextRandom160 1.6% {833ms} SmallInteger(Magnitude)>>between:and: 1.5% {786ms} ByteArray>>unsignedLongAt:put:bigEndian:
-- --- Kindly, Robert
vm-dev@lists.squeakfoundation.org