Hey Everyone, I know that LLVM subscribes to the notion of "progress over backwards compatibility." And in that spirit, maybe someone could help me better understand the motivation behind removing the MallocInst? Is there a design doc anywhere? From a pragmatic sense, the IRBuilder's createMalloc, which was returning a MallocInst, was doing a lot of messy work for us users: http://llvm.org/docs/doxygen/html/Instructions_8cpp-source.html#l00463 . With MallocInst disappearing, is IRBuilder::createMalloc disappearing too? Thanks, ~Jon
On Oct 20, 2009, at 11:12 AM, Jon McLachlan wrote:> Hey Everyone, > > I know that LLVM subscribes to the notion of "progress over > backwards compatibility." And in that spirit, maybe someone could > help me better understand the motivation behind removing the > MallocInst? Is there a design doc anywhere?hi Jon, The foremost problem with mallocinst is that it didn't support 64-bit hosts. This caused 64-bit apps that allocated more than 4G of memory (yes this really does happen) to get silently mis-compiled. We've long been looking to remove mallocinst (it doesn't add any value over a direct call to malloc) as redundant, this gave us a reason to do it. -Chris