[Llvm-bgq-discuss] Patches for r176829-20130309 (the current vesta version)
Hal Finkel
hfinkel at anl.gov
Wed Apr 17 13:01:42 CDT 2013
----- Original Message -----
> From: "Michael Kruse" <llvm-bgq-discuss at meinersbur.de>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: llvm-bgq-discuss at lists.alcf.anl.gov
> Sent: Wednesday, April 17, 2013 12:22:47 PM
> Subject: Re: [Llvm-bgq-discuss] Patches for r176829-20130309 (the current vesta version)
>
> Hi,
>
> originally I intended to send the following as part of a collection
> with more problems I found and you might be interested in. But
> because
> I do not have time at the moment for closer investigation, I just
> send
> it now and will send the other problems sometime later. Please excuse
> the premature style.
Not a problem; I'd rather get reports early and often.
>
>
>
> 1. I found two cases where bgclang segfaults on code that works fine
> with xlc (see added files).
> The first is some inline asm, but I don't know whether inline asm is
> supposed to work in clang.
> The second uses IBM-style builtins.
>
>
> 2. bgclang is quite unreliable on inline assemble. With this:
> asm (
> "dcbt 0,%[ptr] \n"
> "dcbt %[c64],%[ptr] \n"
> "dcbt %[c128],%[ptr] \n"
> "dcbt %[c192],%[ptr] \n"
> "dcbt %[c256],%[ptr] \n"
> "dcbt %[c320],%[ptr] \n"
> : :
> [ptr] "+r" (ptr),
> [c64] "b" (64),
> [c128] "b" (128),
> [c192] "b" (192),
> [c256] "b" (256),
> [c320] "b" (320)
> );
>
> I sometimes get
> error: invalid input constraint '+r' in asm
> other times
> fatal error: error in backend: Do not know how to split the result of
> this operator!
> (though I am not sure it's this piece of code, clang doesn't give me
> a location)
I'm not sure; but if this is still a problem upstream, I'll get it fixed.
>
>
> 3. There is some issue with the inline functions. The IBM header
> files
> seem to assume -fgnu89-inline (with -std=c99), otherwise I get
> multiple definitions errors from the linker. I don't really
> understand, because the IBM-supported gcc compiler shouldn't have
> this
> problem either.
>
>
> 4. The unimplemented-errors using _Complex data type and compound
> expressions ("+=") are inherited from clang?
I think this has just-recently been improved upstream. I should be rebasing soon, so I'll let you know.
Thanks again,
Hal
>
>
> Michael
>
> 2013/3/30 Hal Finkel <hfinkel at anl.gov>:
> > Hello everyone,
> >
> > I've attached the patches for the currently-installed version on
> > vesta (r176829-20130309). These apply to upstream revision
> > r176829. This is the first released version to contain QPX
> > autovectorization for single-precision values (in addition to many
> > other improvements). I've also included the bgclang wrapper script
> > and the libc++ build script (and the llvm build script and the
> > exception_ptr.h wrapper header).
> >
> > Another user-visible change to mention: You no longer need to
> > explicitly include the qpxintrin.h header to use the IBM-style QPX
> > intrinsics. This header is now automatically included for you.
> >
> > For any of you doing first-time on-your-own installs (or anyone
> > else), please feel free to ask questions about how all of this
> > needs to be setup in practice.
> >
> > Sincerely,
> > Hal
> >
> > --
> > Hal Finkel
> > Postdoctoral Appointee
> > Leadership Computing Facility
> > Argonne National Laboratory
> >
> > _______________________________________________
> > llvm-bgq-discuss mailing list
> > llvm-bgq-discuss at lists.alcf.anl.gov
> > https://lists.alcf.anl.gov/mailman/listinfo/llvm-bgq-discuss
> >
>
More information about the llvm-bgq-discuss
mailing list