This commit splits SPIR-V's serialization and deserialization code into
2 separate targets. The motiviation being that the serializer is used
more often the deserializer and therefore lumping them together
unnecessarily increases binary size for the most common case.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
Awesome! Given we are here already; can we move them to the final place they should be? Specifically,
include/mlir/Target/ SPIRV/ Serialization.h (for containing the `serialize` entry point) Deserialization.h (for containing the `deserialize` entry point) lib/Target/ SPIRV/ (All cpp files here)
Comment Actions
Hi,
Friendly reminder to land this :). I would like to add (de-)serialization support for OpSpecConstantOp and conflicts will be easier to handle if this patch is merged before I start. If you need to wait on this one for a bit more, then no problem I will work on my new patch and handle conflicts later.
Comment Actions
Sorry about the delay! There were issues building with shared library. I fixed them. (You can diff the version here against the landed commit to find out what's gotten changed if curious.) Also need to wire up the BUILD changes for Bazel (https://github.com/google/llvm-bazel) for Google internal uses.