![]() ![]() Private MetadataĬontains pathes to the shader source ( DEBI tag) and. Patch types: // - triangle: 1 // - quad: 2 let content: UInt8 = controlPointCount << 2 | patchType Public MetadataĬontains information about function constants, tessellation patches, return types, etc. ![]() Patch type and number of control points per-patch (for post-tessellation vertex function)įunctions with ] or ] attributesĮxtern functions complied with -fcikernel option Metal type of the render_target_array_index (for layered rendering) Offset of the source code archive of the function in embeded source code sectionīitcode and language versions (air.major, air.minor, language.major, language.minor) Offsets of the information about this function in public metadata section, private metadata section and bitcode section The number of tag groups equals to the number of functions. Offset and size of the private metadata sectionĮach tag group holds some information about a Metal function Offset and size of the public metadata section Version of the metallib file (major, minor) functions □ Metal Library Archive Binary Layout Header Byte Range Import MetalLibraryArchive let archive = try Archive( data: Data( contentsOf: metallibURL)) You can also use MetalLibraryArchive as a library: ![]() Use the "Disassembler" menu in the app to locate the llvm-dis executable file. Note llvm-dis is not included, you can get a copy of the binary at "Explorer" is a GUI app which can open, unpack and disassemble (with the help of llvm-dis) metallib files. Source code of the function if the metallib is configured to include source code.Īn executable target called "Explorer" is included in the package.Bitcode of the function which can be converted into human-readable LLVM assembly language using llvm-dis.Metal Shading Language version of the function.Function type - vertex, fragment, kernel, extern, etc.The extracted information of a Metal function includes: You can use MetalLibraryArchive to get the library type, target platform, Metal functions, etc., from a metallib file. MetalLibraryArchive is a product of reverse-engineering Apple's metallib file format. ![]()
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |