20void ScalarEnumerationTraits<object::ImageKind>::enumeration(
22#define ECase(X) IO.enumCase(Value, #X, object::X)
31 IO.enumFallback<Hex16>(
Value);
34void ScalarEnumerationTraits<object::OffloadKind>::enumeration(
36#define ECase(X) IO.enumCase(Value, #X, object::X)
43 IO.enumFallback<Hex16>(
Value);
48 assert(!IO.getContext() &&
"The IO context is initialized already");
50 IO.mapTag(
"!Offload",
true);
51 IO.mapOptional(
"Version", O.Version);
52 IO.mapOptional(
"Size", O.Size);
53 IO.mapOptional(
"EntryOffset", O.EntryOffset);
54 IO.mapOptional(
"EntrySize", O.EntrySize);
55 IO.mapRequired(
"Members", O.Members);
56 IO.setContext(
nullptr);
61 assert(IO.getContext() &&
"The IO context is not initialized");
62 IO.mapRequired(
"Key", SE.
Key);
63 IO.mapRequired(
"Value", SE.
Value);
68 assert(IO.getContext() &&
"The IO context is not initialized");
69 IO.mapOptional(
"ImageKind", M.ImageKind);
70 IO.mapOptional(
"OffloadKind", M.OffloadKind);
71 IO.mapOptional(
"Flags", M.Flags);
72 IO.mapOptional(
"String", M.StringEntries);
73 IO.mapOptional(
"Content", M.Content);
This file declares classes for handling the YAML representation of offloading binaries.
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
LLVM Value Representation.
OffloadKind
The producer of the associated offloading image.
ImageKind
The type of contents the offloading image contains.
This is an optimization pass for GlobalISel generic memory operations.