[all-commits] [llvm/llvm-project] b15845: [ctxprof] dump profiles using yaml (for testing) ...

Mircea Trofin via All-commits all-commits at lists.llvm.org
Wed Jan 15 16:50:20 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b15845c0059b06f406e33f278127d7eb41ff5ab6
      https://github.com/llvm/llvm-project/commit/b15845c0059b06f406e33f278127d7eb41ff5ab6
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-01-15 (Wed, 15 Jan 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/ProfileData/PGOCtxProfReader.h
    M llvm/include/llvm/ProfileData/PGOCtxProfWriter.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/ProfileData/PGOCtxProfReader.cpp
    M llvm/lib/ProfileData/PGOCtxProfWriter.cpp
    M llvm/test/Analysis/CtxProfAnalysis/full-cycle.ll
    M llvm/test/Analysis/CtxProfAnalysis/inline.ll
    R llvm/test/Analysis/CtxProfAnalysis/json_equals.py
    M llvm/test/Analysis/CtxProfAnalysis/load.ll
    M llvm/unittests/Transforms/Utils/CallPromotionUtilsTest.cpp

  Log Message:
  -----------
  [ctxprof] dump profiles using yaml (for testing)  (#123108)

This is a follow-up from PR #122545, which enabled converting yaml to contextual profiles.

This change uses the lower level yaml APIs because:
- the mapping APIs `llvm::yaml` offers don't work with `const` values, because they (the APIs) want to enable both serialization and deserialization
- building a helper data structure would be an alternative, but it'd be either memory-consuming or overly-complex design, given the recursive nature of the contextual profiles.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list