[llvm-commits] CVS: llvm/test/Feature/varargs_new.ll
Reid Spencer
reid at x10sys.com
Sat Jun 18 13:29:39 PDT 2005
Andrew,
I think I fixed this, but I'd like you to verify my patch, please:
http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20050613/026759.html
Thanks,
Reid.
On Sat, 2005-06-18 at 12:58 -0700, Reid Spencer wrote:
> I get this with your changes:
>
> Running /proj/llvm/build/../llvm/test/Feature/dg.exp ...
> FAIL: /proj/llvm/build/../llvm/test/Feature/varargs_new.ll:
> llvm-as: /proj/llvm/build/../llvm/lib/AsmParser/llvmAsmParser.y:740:
> llvm::Module* RunParser(llvm::Module*): Assertion `F->arg.llvm-as
> ((anonymous namespace)::PrintStackTrace()+0x1a)[0x82c4142]
> llvm-as((anonymous namespace)::SignalHandler(int)+0xd3)[0x82c440b]
> /lib/tls/libc.so.6[0xaef8c8]
> /lib/ld-linux.so.2[0xa587a2]
> /lib/tls/libc.so.6(gsignal+0x55)[0xaef7d5]
> /lib/tls/libc.so.6(abort+0xe9)[0xaf1149]
> /lib/tls/libc.so.6(__assert_fail+0x101)[0xae8db1]
> llvm-as[0x81c0ee0]
> llvm-as(llvm::RunVMAsmParser(std::basic_string<char,
> std::char_traits<char>, std::allocator<char> > const&,
> _IO_FILE*)+0x73)[0]llvm-as(llvm::ParseAssemblyFile
> (std::basic_string<char, std::char_traits<char>, std::allocator<char> >
> const&)+0x1c1)[0x81afa4]llvm-as(main+0x5a)[0x81ab16e]
> /lib/tls/libc.so.6(__libc_start_main+0xd3)[0xadce23]
> llvm-as(__gxx_personality_v0+0xd1)[0x81ab091]
> llvm-dis: Standard Input empty!
> 0a1,3
> ; ModuleID = '<stdin>'
> implementation ; Functions:
>
> Reid
>
> On Sat, 2005-06-18 at 13:30 -0500, Andrew Lenharth wrote:
> >
> > Changes in directory llvm/test/Feature:
> >
> > varargs_new.ll added (r1.1)
> > ---
> > Log message:
> >
> > new vararg test
> >
> > ---
> > Diffs of the changes: (+33 -0)
> >
> > varargs_new.ll | 33 +++++++++++++++++++++++++++++++++
> > 1 files changed, 33 insertions(+)
> >
> >
> > Index: llvm/test/Feature/varargs_new.ll
> > diff -c /dev/null llvm/test/Feature/varargs_new.ll:1.1
> > *** /dev/null Sat Jun 18 13:30:47 2005
> > --- llvm/test/Feature/varargs_new.ll Sat Jun 18 13:30:37 2005
> > ***************
> > *** 0 ****
> > --- 1,33 ----
> > + ; RUN: llvm-as %s -o - | llvm-dis > %t1.ll
> > + ; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll
> > + ; RUN: diff %t1.ll %t2.ll
> > +
> > + ; Demonstrate all of the variable argument handling intrinsic functions plus
> > + ; the va_arg instruction.
> > +
> > + implementation ; Functions:
> > + declare void %llvm.va_start(sbyte**)
> > + declare void %llvm.va_copy(sbyte**, sbyte*)
> > + declare void %llvm.va_end(sbyte**)
> > +
> > + int %test(int %X, ...) {
> > + ; Allocate two va_list items. On this target, va_list is of type sbyte*
> > + %ap = alloca sbyte* ; <sbyte**> [#uses=4]
> > + %aq = alloca sbyte* ; <sbyte**> [#uses=2]
> > +
> > + ; Initialize variable argument processing
> > + call void %llvm.va_start(sbyte** %ap)
> > +
> > + ; Read a single integer argument
> > + %tmp = vaarg sbyte** %ap, int ; <int> [#uses=1]
> > +
> > + ; Demonstrate usage of llvm.va_copy and llvm_va_end
> > + %apv = load sbyte** %ap ; <sbyte*> [#uses=1]
> > + call void %llvm.va_copy(sbyte** %aq, sbyte* %apv)
> > + call void %llvm.va_end(sbyte** %aq)
> > +
> > + ; Stop processing of arguments.
> > + call void %llvm.va_end(sbyte** %ap)
> > + ret int %tmp
> > +
> > + }
> >
> >
> >
> > _______________________________________________
> > llvm-commits mailing list
> > llvm-commits at cs.uiuc.edu
> > http://mail.cs.uiuc.edu/mailman/listinfo/llvm-commits
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://mail.cs.uiuc.edu/mailman/listinfo/llvm-commits
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20050618/10ae2101/attachment.sig>
More information about the llvm-commits
mailing list