<div dir="ltr"><div>Hi All,<br></div><div><br></div><div>Following up on <a href="https://lists.llvm.org/pipermail/llvm-dev/2020-July/143512.html">https://lists.llvm.org/pipermail/llvm-dev/2020-July/143512.html</a>, and <a href="https://reviews.llvm.org/D85408">https://reviews.llvm.org/D85408</a>, we would like to consider a design which allows external tools to read the structured contents of the .bb_addr_map section with library calls into an LLVM library. At the same time, we need to have tools/obj2yaml tests in place for bb_addr_map. So it sounds like the perfect place to do it. However, the current structure does not expose the obj2yaml functionalities under lib/ObjectYAML.</div><div><br></div><div>In general, there seems to be an inconsistency regarding how obj2yaml and yaml2obj tools are structured. The latter has a nice wrapper which calls environment-dependent functions under lib/ObjectYAML, but the former has environment-dependent source files under tools/obj2yaml (elf2yaml.cc, coff2yaml.cc, etc).</div><div><br></div><div>I wanted to reach out to ask if there is any alternative or get an idea about the amount of refactoring work that is required to make the structure friendlier.</div><div><br></div><div>bests,</div></div>