Hello all I have a very simple handwritten .ll file that can be translated to native assembly on x86_64 when I use i128. But if I use i256 I get an error. see the file and the first line of the error below. Any help is appreciated! I played a little bit with target datalayout but it didn't help. Best Ehsan Input File: target datalayout "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" target triple = "x86_64-unknown-linux-gnu" define i32 @main(i32 %argc, i8** nocapture %argv) nounwind { entry: %0 = tail call i256 (...)* @get_num() nounwind ;comment here ret i32 0 } declare i256 @get_num(...) --------------------------------------------- First line of error: Call result #2 has unhandled type i64UNREACHABLE executed at CallingConvLower.cpp:148! -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100525/5ba9a2bf/attachment.html>
On May 25, 2010, at 5:16 PM, Ehsan Amiri wrote:> Hello all > > I have a very simple handwritten .ll file that can be translated to native assembly on x86_64 when I use i128. But if I use i256 I get an error. see the file and the first line of the error below. Any help is appreciated! I played a little bit with target datalayout but it didn't help.This works for me on mainline. Are you using an old version of llvm? -Chris> > Best > Ehsan > > Input File: > > target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" > target triple = "x86_64-unknown-linux-gnu" > > define i32 @main(i32 %argc, i8** nocapture %argv) nounwind { > entry: > > %0 = tail call i256 (...)* @get_num() nounwind ;comment here > ret i32 0 > } > > declare i256 @get_num(...) > > --------------------------------------------- > > First line of error: > > Call result #2 has unhandled type i64UNREACHABLE executed at CallingConvLower.cpp:148! > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Yes I use 2.6 as my OS seems to be too old for 2.7. Are there any restrictions on integer types for x86_64? On Tue, May 25, 2010 at 5:25 PM, Chris Lattner <clattner at apple.com> wrote:> > On May 25, 2010, at 5:16 PM, Ehsan Amiri wrote: > > > Hello all > > > > I have a very simple handwritten .ll file that can be translated to > native assembly on x86_64 when I use i128. But if I use i256 I get an error. > see the file and the first line of the error below. Any help is appreciated! > I played a little bit with target datalayout but it didn't help. > > This works for me on mainline. Are you using an old version of llvm? > > -Chris > > > > > > Best > > Ehsan > > > > Input File: > > > > target datalayout > "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128" > > target triple = "x86_64-unknown-linux-gnu" > > > > define i32 @main(i32 %argc, i8** nocapture %argv) nounwind { > > entry: > > > > %0 = tail call i256 (...)* @get_num() nounwind ;comment here > > ret i32 0 > > } > > > > declare i256 @get_num(...) > > > > --------------------------------------------- > > > > First line of error: > > > > Call result #2 has unhandled type i64UNREACHABLE executed at > CallingConvLower.cpp:148! > > _______________________________________________ > > 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/20100525/f87cf286/attachment.html>