2.6 pre-release2 ready for testing

LLVMers,

2.6 pre-release2 is ready to be tested by the community.
http://llvm.org/prereleases/2.6/

If you have time, I’d appreciate anyone who can help test the release.

To test llvm-gcc:

  1. Compile llvm from source and untar the llvm-test in the projects directory (name it llvm-test or test-suite). Choose to use a pre-compiled llvm-gcc or re-compile it yourself.
  2. Run make check, report any failures (FAIL or unexpected pass). Note that you need to reconfigure llvm with llvm-gcc in your path or with --with-llvmgccdir
  3. Run “make TEST=nightly report” and send me the report.nightly.txt

To test clang:

  1. Compile llvm and clang from source.
  2. Run make check for llvm.
  3. Run make -C tools/clang-2.6 test VERBOSE=1 (report any failures or unexpected passes)

When reporting your results, please provide details on what platform you compiled on, and how
you built LLVM (src == obj, or src != obj), clang, and/or llvm-gcc.

Please COMPLETE ALL TESTING BY 5pm PDT on October 21st!

Thanks, Tanya Lattner

Hi Tanya,

glad to see that 2.6 release is coming. :slight_smile:

After doing some testing with valgrind on this release, I have find a little “undefined memory” error in DefaultJITMemoryManager related to the PoisonMemory field.
This bug has been corrected in trunk with revision r80192.

Attached is a patch which cleanly apply same correction on the release-2.6 branch.

Thanks,
Olivier.

release_2.6.patch (835 Bytes)

Olivier,

Thanks for testing 2.6!

I’m glad this is fixed in trunk, but it will not be applied to 2.6 at this stage in the release process.

Thanks,
Tanya

2.6 pre-release2 is ready to be tested by the community.

Excellent! Would you care to update the "LLVM 2.6 release schedule" on
the front page of the web site?

Thanks,
Jay.

To test clang:
1) Compile llvm and clang from source.

LLVM fails to build for me on Cygwin. I get:

make[1]: Entering directory `/home/foad/llvm/objdir-2.6/runtime'
make[2]: Entering directory `/home/foad/llvm/objdir-2.6/runtime/libprofile'
llvm[2]: Compiling BasicBlockTracing.c for Release build (PIC)
llvm[2]: Compiling BlockProfiling.c for Release build (PIC)
llvm[2]: Compiling CommonProfiling.c for Release build (PIC)
llvm[2]: Compiling EdgeProfiling.c for Release build (PIC)
llvm[2]: Compiling FunctionProfiling.c for Release build (PIC)
llvm[2]: Linking Release Loadable Module profile_rt.dll
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld:
warning: cannot find entry symbol __cygwin_dll_entry@12; defaulting to
61ec1000
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/BasicBlockTracing.o:BasicBlockTracing.c:(.text+0x36):
undefined reference to `_free'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/BasicBlockTracing.o:BasicBlockTracing.c:(.text+0xca):
undefined reference to `_malloc'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/BasicBlockTracing.o:BasicBlockTracing.c:(.text+0xe8):
undefined reference to `_atexit'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/BlockProfiling.o:BlockProfiling.c:(.text+0x65):
undefined reference to `_atexit'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x76):
undefined reference to `_strdup'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x9a):
undefined reference to `_memmove'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0xe3):
undefined reference to `_memmove'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x105):
undefined reference to `_printf'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x113):
undefined reference to `_puts'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x13c):
undefined reference to `_strlen'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x14e):
undefined reference to `_malloc'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x182):
undefined reference to `_strlen'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x19b):
undefined reference to `_memcpy'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x1fb):
undefined reference to `_write'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x21a):
undefined reference to `_write'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x23b):
undefined reference to `_write'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x25e):
undefined reference to `_open'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x296):
undefined reference to `_write'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x2b5):
undefined reference to `_write'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x2d6):
undefined reference to `_write'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x30d):
undefined reference to `_write'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x332):
undefined reference to `_fprintf'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/CommonProfiling.o:CommonProfiling.c:(.text+0x33e):
undefined reference to `_perror'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/EdgeProfiling.o:EdgeProfiling.c:(.text+0x65):
undefined reference to `_atexit'
/home/foad/llvm/objdir-2.6/runtime/libprofile/Release/FunctionProfiling.o:FunctionProfiling.c:(.text+0x65):
undefined reference to `_atexit'
collect2: ld returned 1 exit status
make[2]: *** [/home/foad/llvm/objdir-2.6/Release/lib/profile_rt.dll] Error 1
make[2]: Leaving directory `/home/foad/llvm/objdir-2.6/runtime/libprofile'
make[1]: *** [libprofile/.makeall] Error 2
make[1]: Leaving directory `/home/foad/llvm/objdir-2.6/runtime'
make: *** [all] Error 1

When reporting your results, please provide details on what platform you compiled on, and how
you built LLVM (src == obj, or src != obj), clang, and/or llvm-gcc.

$ uname -a
CYGWIN_NT-5.1 foad-pc 1.5.25(0.156/4/2) 2008-06-12 19:34 i686 Cygwin

src != obj

clang

Thanks,
Jay.

Hi Tanya,

1) Compile llvm from source and untar the llvm-test in the projects directory (name it llvm-test or test-suite). Choose to use a pre-compiled llvm-gcc or re-compile it yourself.

I compiled llvm and llvm-gcc with separate objects directories.
Platform is x86_64-linux-gnu.

2) Run make check, report any failures (FAIL or unexpected pass). Note that you need to reconfigure llvm with llvm-gcc in your path or with --with-llvmgccdir

One failure:

FAIL: llvm-2.6/llvm-2.6/test/Feature/load_module.ll for PR1318
Failed with exit(1) at line 1
while running: llvm-as < llvm-2.6/llvm-2.6/test/Feature/load_module.ll

opt -load=llvm-2.6/llvm-2.6-objects/Release/lib/LLVMHello.so -hello

-disable-output - |& /bin/grep Hello
Error opening 'llvm-2.6-objects/Release/lib/LLVMHello.so': llvm-2.6-objects/Release/lib/LLVMHello.so: undefined symbol: _ZN4llvm4cerrE
child process exited abnormally

One unexpected pass:

XPASS: llvm-2.6/llvm-2.6/test/FrontendC/2009-08-11-AsmBlocksComplexJumpTarget.c

3) Run "make TEST=nightly report" and send me the report.nightly.txt

Attached.

Ciao,

Duncan.

report.nightly.txt (80.7 KB)

G'Day Tanya,

Is it too late to bring in the following patches to fix some major
brokenness in the AuroraUX tool chain for 2.6?

http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Tools.cpp?r1=84468&r2=84469&view=diff&pathrev=84469
http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Tools.cpp?r1=84265&r2=84266&view=diff&pathrev=84266
http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Frontend/InitHeaderSearch.cpp?r1=83846&r2=83847&view=diff&pathrev=83847
http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets.cpp?r1=84415&r2=84416&view=diff&pathrev=84416

All should be completely non intrusive.

Thanks for your time,
Edward O'Callaghan.

Hi Tanya, here's another one, 32 bit this time. I forgot to mention
that the system compiler is gcc-4.4.

1) Compile llvm from source and untar the llvm-test in the projects directory (name it llvm-test or test-suite). Choose to use a pre-compiled llvm-gcc or re-compile it yourself.

I compiled llvm and llvm-gcc with separate objects directories.
Platform is i486-linux-gnu.

2) Run make check, report any failures (FAIL or unexpected pass). Note that you need to reconfigure llvm with llvm-gcc in your path or with --with-llvmgccdir

One unexpected pass:
XPASS: llvm-2.6/llvm-2.6/test/FrontendC/2009-08-11-AsmBlocksComplexJumpTarget.c

3) Run "make TEST=nightly report" and send me the report.nightly.txt

Attached.

Ciao,

Duncan.

report.nightly.txt (80.2 KB)

G'Day Tanya,

Is it too late to bring in the following patches to fix some major
brokenness in the AuroraUX tool chain for 2.6?

Yes, it is too late.

At this stage in the process, we only accept patches that fix regressions on supported targets for the release as defined here:
http://llvm.org/docs/HowToReleaseLLVM.html#release-qualify

-Tanya

2.6 pre-release2 is ready to be tested by the community.

Excellent! Would you care to update the "LLVM 2.6 release schedule" on
the front page of the web site?

Yes. But as always, its an estimate. It depends on the outcome of the testing.

-Tanya

Hi Tanya,

1) Compile llvm from source and untar the llvm-test in the projects directory (name it llvm-test or test-suite). Choose to use a pre-compiled llvm-gcc or re-compile it yourself.

I compiled llvm and llvm-gcc with separate objects directories.
Platform is x86_64-linux-gnu.

Ok.

2) Run make check, report any failures (FAIL or unexpected pass). Note that you need to reconfigure llvm with llvm-gcc in your path or with --with-llvmgccdir

One failure:

FAIL: llvm-2.6/llvm-2.6/test/Feature/load_module.ll for PR1318
Failed with exit(1) at line 1
while running: llvm-as < llvm-2.6/llvm-2.6/test/Feature/load_module.ll | opt -load=llvm-2.6/llvm-2.6-objects/Release/lib/LLVMHello.so -hello -disable-output - |& /bin/grep Hello
Error opening 'llvm-2.6-objects/Release/lib/LLVMHello.so': llvm-2.6-objects/Release/lib/LLVMHello.so: undefined symbol: _ZN4llvm4cerrE
child process exited abnormally

Did you compile llvm with llvm-gcc? This is exactly PR4849.

One unexpected pass:

XPASS: llvm-2.6/llvm-2.6/test/FrontendC/2009-08-11-AsmBlocksComplexJumpTarget.c

Does using the llvm-gcc binary for x86_64 produce the same results for this test?

3) Run "make TEST=nightly report" and send me the report.nightly.txt

Attached.

This seemed to be inlined into the mail instead of attached. Can you send again?

Thanks,
Tanya

To test clang:
1) Compile llvm and clang from source.

LLVM fails to build for me on Cygwin. I get:

Does TOT build? If not, please file a bug.

Unfortunately Cygwin is not in our release criteria. I'd like to have a buildbot running (if there is not one already) and then get someone to qualify it for the release.

-Tanya

To test clang:
1) Compile llvm and clang from source.

LLVM fails to build for me on Cygwin. I get:

Does TOT build? If not, please file a bug.

No. Theres the runtime install bug (below), and llvm-gcc has a bug
that I thought there was a patch for in prerelease 1, but did not make
it into prerelease 2 for some reason.

Unfortunately Cygwin is not in our release criteria. I'd like to have
a buildbot running (if there is not one already) and then get someone
to qualify it for the release.

No theres no buildbot for Cygwin.

Aaron

To test clang:
1) Compile llvm and clang from source.

LLVM fails to build for me on Cygwin. I get:

Does TOT build? If not, please file a bug.

No. Theres the runtime install bug (below), and llvm-gcc has a bug
that I thought there was a patch for in prerelease 1, but did not make
it into prerelease 2 for some reason.

The bug for llvm-gcc did go into the release:
http://lists.cs.uiuc.edu/mailman/private/llvm-branch-commits/2009-September/000579.html

I never got a patch or link to the commit to TOT for the runtime install bug, but now I do see a mention of it in a previous email that you sent me. Since this is a Makefile only change and only for cygwin, I'll see if Chris will let me include it. I normally don't do this, but its really safe since it won't impact anything except cygwin install.

-Tanya

Hi Tanya,

Error opening 'llvm-2.6-objects/Release/lib/LLVMHello.so': llvm-2.6-objects/Release/lib/LLVMHello.so: undefined symbol: _ZN4llvm4cerrE
child process exited abnormally

Did you compile llvm with llvm-gcc? This is exactly PR4849.

I didn't think I had, but it seems I did: I rebuilt being careful to use
gcc-4.4 and this failure went away.

XPASS: llvm-2.6/llvm-2.6/test/FrontendC/2009-08-11-AsmBlocksComplexJumpTarget.c

Does using the llvm-gcc binary for x86_64 produce the same results for this test?

I was unable to check because the binary links with libffi but I don't
have libffi. I tried installing libffi but my distribution doesn't come
with the same version as llvm-gcc requires.

3) Run "make TEST=nightly report" and send me the report.nightly.txt

Attached.

This seemed to be inlined into the mail instead of attached. Can you send again?

According to my outbox it was attached. Here it is again (attached).

Ciao,

Duncan.

report.nightly.txt (80.7 KB)

I still cannot access the link, even though I can get at my mailman settings.

I tried building pre release 2 llvm-gcc and it still had the bug. Its
actually an LLVM bug manifesting in llvm-gcc build.

~~~~~~~
/home/ang/build/llvm-gcc-4.2-2.6/./gcc/xgcc -B/home/ang/build/llvm-gcc-4.2-2.6/.
/gcc/ -B/home/ang/llvm-gcc-4.2-2.6/i686-pc-cygwin/bin/ -B/home/ang/llvm-gcc-4.2-
2.6/i686-pc-cygwin/lib/ -isystem /home/ang/llvm-gcc-4.2-2.6/i686-pc-cygwin/inclu
de -isystem /home/ang/llvm-gcc-4.2-2.6/i686-pc-cygwin/sys-include -O2 -I/home/a
ng/src/llvm-gcc-4.2-2.6/gcc/../winsup/w32api/include -O2 -g -O2 -DIN_GCC -W
-Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-defin
ition -isystem ./include -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I. -I. -
I/home/ang/src/llvm-gcc-4.2-2.6/gcc -I/home/ang/src/llvm-gcc-4.2-2.6/gcc/. -I/ho
me/ang/src/llvm-gcc-4.2-2.6/gcc/../include -I/home/ang/src/llvm-gcc-4.2-2.6/gcc/
../libcpp/include -I/home/ang/src/llvm-gcc-4.2-2.6/gcc/../libdecnumber -I../lib
decnumber -I/home/ang/build/llvm-2.6/include -I/home/ang/src/llvm-2.6/include -D
L_popcountsi2 -c /home/ang/src/llvm-gcc-4.2-2.6/gcc/libgcc2.c -o libgcc/./_popco
untsi2.o
assertion "V == V2 && "Didn't find key?"" failed: file "/home/ang/src/llvm-2.6/l
ib/Support/StringMap.cpp", line 172
~~~~~~~

This is usual indication of llvm being miscompiled by your native compiler...

To test clang:
1) Compile llvm and clang from source.

LLVM fails to build for me on Cygwin. I get:

Does TOT build? If not, please file a bug.

No. Theres the runtime install bug (below), and llvm-gcc has a bug
that I thought there was a patch for in prerelease 1, but did not make
it into prerelease 2 for some reason.

The bug for llvm-gcc did go into the release:
http://lists.cs.uiuc.edu/mailman/private/llvm-branch-commits/2009-September/000579.html

I still cannot access the link, even though I can get at my mailman settings.

I tried building pre release 2 llvm-gcc and it still had the bug. Its
actually an LLVM bug manifesting in llvm-gcc build.

~~~~~~~
/home/ang/build/llvm-gcc-4.2-2.6/./gcc/xgcc -B/home/ang/build/llvm-gcc-4.2-2.6/.
/gcc/ -B/home/ang/llvm-gcc-4.2-2.6/i686-pc-cygwin/bin/ -B/home/ang/llvm-gcc-4.2-
2.6/i686-pc-cygwin/lib/ -isystem /home/ang/llvm-gcc-4.2-2.6/i686-pc-cygwin/inclu
de -isystem /home/ang/llvm-gcc-4.2-2.6/i686-pc-cygwin/sys-include -O2 -I/home/a
ng/src/llvm-gcc-4.2-2.6/gcc/../winsup/w32api/include -O2 -g -O2 -DIN_GCC -W
-Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-defin
ition -isystem ./include -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I. -I. -
I/home/ang/src/llvm-gcc-4.2-2.6/gcc -I/home/ang/src/llvm-gcc-4.2-2.6/gcc/. -I/ho
me/ang/src/llvm-gcc-4.2-2.6/gcc/../include -I/home/ang/src/llvm-gcc-4.2-2.6/gcc/
../libcpp/include -I/home/ang/src/llvm-gcc-4.2-2.6/gcc/../libdecnumber -I../lib
decnumber -I/home/ang/build/llvm-2.6/include -I/home/ang/src/llvm-2.6/include -D
L_popcountsi2 -c /home/ang/src/llvm-gcc-4.2-2.6/gcc/libgcc2.c -o libgcc/./_popco
untsi2.o
assertion "V == V2 && "Didn't find key?"" failed: file "/home/ang/src/llvm-2.6/l
ib/Support/StringMap.cpp", line 172
~~~~~~~

This is solved in TOT but I could not ascertain which patch soled it.

I never got a patch or link to the commit to TOT for the runtime install
bug, but now I do see a mention of it in a previous email that you sent me.
Since this is a Makefile only change and only for cygwin, I'll see if Chris
will let me include it. I normally don't do this, but its really safe since
it won't impact anything except cygwin install.

I tried to solve this but a NO_INSTALL for Cygwin OS did not seem to
work. If someone else could solve this and produce a patch.

'make check' is also failing to run llvm-as and llvm-dis.

Ok, since cygwin is not a release blocker, just fix these in TOT and 2.7 will be even better. I will not be merging in any more patches.

Thanks,
Tanya

Is there are chance to get http://llvm.org/bugs/show_bug.cgi?id=5081 fixed in
2.6? The affected application did compile with with LLVM 2.5. I haven't yet
checked whether TOT fixed this already, however, but will do this if necessary.

Thanks,
Torvald

No. Only things defined as regressions according to this may go in:
http://llvm.org/docs/HowToReleaseLLVM.html#release-qualify

-Tanya