Files
sdk/pkg/_macros/lib/src
Konstantin Shcheglov 60230e016f Macro. Cache typeDeclarationOf(IdentifierImpl) results.
This makes https://dart-review.googlesource.com/c/sdk/+/361160/1
about 10% faster.

Before:
[time: 6871 ms]
(name: <scheduler>, count: 0, elapsed: 0:00:00.000000, elapsedSelf: -0:00:06.742687)
  (name: analyzeFile, count: 104, elapsed: 0:00:06.742687, elapsedSelf: 0:00:01.014164)
    (name: libraryContext, count: 104, elapsed: 0:00:05.728523, elapsedSelf: 0:00:00.195590)(bytesPut: 5378632, cycleCount: 9, libraryCount: 115)
      (name: link, count: 9, elapsed: 0:00:05.316310, elapsedSelf: 0:00:00.278338)
        (name: computeLibraryScopes, count: 9, elapsed: 0:00:00.128982, elapsedSelf: 0:00:00.056258)
          (name: buildMacroApplier, count: 9, elapsed: 0:00:00.072625, elapsedSelf: 0:00:00.072625)
          (name: executeMacroTypesPhase, count: 9, elapsed: 0:00:00.000099, elapsedSelf: 0:00:00.000099)
        (name: executeMacroDeclarationsPhase, count: 9, elapsed: 0:00:00.223973, elapsedSelf: 0:00:00.223973)(constructorsOf: 100, methodsOf: 100)
        (name: executeMacroDefinitionsPhase, count: 9, elapsed: 0:00:04.264144, elapsedSelf: 0:00:00.001345)
          (name: executeDefinitionsPhase, count: 315, elapsed: 0:00:03.622893, elapsedSelf: 0:00:03.622893)(constructorsOf: 300, methodsOf: 300, resolve: 42000, typeDeclarationOf: 41200)
          (name: addMacroResults, count: 200, elapsed: 0:00:00.639906, elapsedSelf: 0:00:00.639906)
        (name: mergeMacroAugmentations, count: 9, elapsed: 0:00:00.420873, elapsedSelf: 0:00:00.420873)
      (name: macroCompileKernel, count: 1, elapsed: 0:00:00.216623, elapsedSelf: 0:00:00.216623)


After:
[time: 6121 ms]
(name: <scheduler>, count: 0, elapsed: 0:00:00.000000, elapsedSelf: -0:00:06.006443)
  (name: analyzeFile, count: 104, elapsed: 0:00:06.006443, elapsedSelf: 0:00:00.879439)
    (name: libraryContext, count: 104, elapsed: 0:00:05.127004, elapsedSelf: 0:00:00.177845)(bytesPut: 5378632, cycleCount: 9, libraryCount: 115)
      (name: link, count: 9, elapsed: 0:00:04.744696, elapsedSelf: 0:00:00.238642)
        (name: computeLibraryScopes, count: 9, elapsed: 0:00:00.134995, elapsedSelf: 0:00:00.054646)
          (name: buildMacroApplier, count: 9, elapsed: 0:00:00.080271, elapsedSelf: 0:00:00.080271)
          (name: executeMacroTypesPhase, count: 9, elapsed: 0:00:00.000078, elapsedSelf: 0:00:00.000078)
        (name: executeMacroDeclarationsPhase, count: 9, elapsed: 0:00:00.228962, elapsedSelf: 0:00:00.228962)(constructorsOf: 100, methodsOf: 100)
        (name: executeMacroDefinitionsPhase, count: 9, elapsed: 0:00:03.739473, elapsedSelf: 0:00:00.001227)
          (name: executeDefinitionsPhase, count: 315, elapsed: 0:00:03.108632, elapsedSelf: 0:00:03.108632)(constructorsOf: 300, methodsOf: 300, resolve: 42000, typeDeclarationOf: 1200)
          (name: addMacroResults, count: 200, elapsed: 0:00:00.629614, elapsedSelf: 0:00:00.629614)
        (name: mergeMacroAugmentations, count: 9, elapsed: 0:00:00.402624, elapsedSelf: 0:00:00.402624)
      (name: macroCompileKernel, count: 1, elapsed: 0:00:00.204463, elapsedSelf: 0:00:00.204463)
Change-Id: I4cd899fe321a7a6da202da0375c60c383c510940
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/361623
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Jake Macdonald <jakemac@google.com>
2024-04-09 02:39:03 +00:00
..