This should fix https://bugs.llvm.org//show_bug.cgi?id=34189
This change makes it so that if writing a K_GNU style archive, you need to output a > 32-bit offset it should output in K_GNU64 style instead.
|  Differential  D36812  
Add support for writing 64-bit symbol tables for archives when offsets become too large for 32-bit Authored by jakehehrlich on Aug 16 2017, 5:39 PM. 
Details 
 This should fix https://bugs.llvm.org//show_bug.cgi?id=34189 This change makes it so that if writing a K_GNU style archive, you need to output a > 32-bit offset it should output in K_GNU64 style instead. 
Diff Detail 
 Event TimelineComment Actions You have a bunch of changes here to support individual members >=4G, but I'm not sure there is any need for that. 
 
 
 Comment Actions 
 
 option 1) seems the least invasive to me personally. Comment Actions I agree with Rafael's comment. K_MIPS64 is now K_GNU64 and printNBits now uses Kind to determine the size. Comment Actions 
 Comment Actions With r314844 in place it should now be much easier to check if a 64 bit symbol table is needed or not. Comment Actions I updated this to use the new changes that rafael made. Much clearner. Thanks Rafael! Comment Actions This change adds --print-armap to the test. After https://reviews.llvm.org/D39379 lands this test will work. If the wrong index is used for "main" then the correct file is unlikely to show up making so this test should check that "main" is being looked up in the correct place. | ||||||||||||||||||||||