Alon Shaltiel (ashaltie)
2015-Jan-28 09:55 UTC
[LLVMdev] prevent frontend from emitting i64
Hello, Is there a way to make clang create an IR file that doesn’t use 64 bit integers? My C code doesn’t use any 64bit types but still “clang –c –emit-llvm …” emits code that contains i64’s. Thanks, Alon -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150128/35dca4bd/attachment.html>
LLVM contains some optimization pass that will generate instructions operate on i64 or even i128 and more. The upstream backend utilize the legalize stage that can break it into instructions with smaller integer types if the target machine does not support that large integer type. There seems no way to prevent clang generate i64 instruction. Are you developing a new backend? 2015-01-28 17:55 GMT+08:00 Alon Shaltiel (ashaltie) <ashaltie at cisco.com>:> Hello, > > Is there a way to make clang create an IR file that doesn’t use 64 bit > integers? My C code doesn’t use any 64bit types but still “clang –c > –emit-llvm …” emits code that contains i64’s. > > > > Thanks, > > Alon > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150129/1ffa1b5a/attachment.html>