Hi,
I'm having some very odd problems building the 2014.08 toolchain respin --
in the cbuild1 i686-lucid env, building glibc fails with
[ERROR] ../sysdeps/unix/sysv/linux/bits/sched.h:127:14: error:
variably modified '__bits' at file scope
[ERROR] ../sysdeps/unix/sysv/linux/bits/sched.h:127:14: error:
variably modified '__bits' at file scope
[ERROR] ../sysdeps/unix/sysv/linux/bits/sigset.h:29:23: error:
variably modified '__val' at file scope
[ERROR] ../sysdeps/unix/sysv/linux/bits/sigset.h:29:23: error:
variably modified '__val' at file scope
[ERROR] ../misc/sys/select.h:69:15: error: variably modified
'fds_bits' at file scope
[ERROR] ../misc/sys/select.h:69:15: error: variably modified
'fds_bits' at file scope
[ERROR] /cbuild/slaves/oorts/crosstool-ng/builds/aarch64_be-linux-gnu-linux/install/aarch64_be-linux-gnu/libc/usr/include/linux/posix_types.h:25:16:
error: variably modified 'fds_bits' at file scope
[ERROR] /cbuild/slaves/oorts/crosstool-ng/builds/aarch64_be-linux-gnu-linux/install/aarch64_be-linux-gnu/libc/usr/include/asm/sigcontext.h:33:2:
error: requested alignment is not a positive power of 2
[ERROR] /cbuild/slaves/oorts/crosstool-ng/builds/aarch64_be-linux-gnu-linux/install/aarch64_be-linux-gnu/libc/usr/include/asm/sigcontext.h:53:2:
error: unknown type name '__uint128_t'
[ERROR] /cbuild/slaves/oorts/crosstool-ng/builds/aarch64_be-linux-gnu-linux/install/aarch64_be-linux-gnu/libc/usr/include/linux/posix_types.h:25:16:
error: variably modified 'fds_bits' at file scope
[ERROR] /cbuild/slaves/oorts/crosstool-ng/builds/aarch64_be-linux-gnu-linux/install/aarch64_be-linux-gnu/libc/usr/include/asm/sigcontext.h:33:2:
error: requested alignment is not a positive power of 2
[ERROR] /cbuild/slaves/oorts/crosstool-ng/builds/aarch64_be-linux-gnu-linux/install/aarch64_be-linux-gnu/libc/usr/include/asm/sigcontext.h:53:2:
error: unknown type name '__uint128_t'
[ERROR] ../ports/sysdeps/unix/sysv/linux/aarch64/sys/user.h:32:3:
error: unknown type name '__uint128_t'
[ERROR] ../ports/sysdeps/unix/sysv/linux/aarch64/sys/user.h:32:3:
error: unknown type name '__uint128_t'
(Yes, the fix is to get rid of cbuild1 and more importantly the requirement
for 32-bit builds in a prehistoric environment - it builds just fine on
64-bit present-day boxes... But I don't think we want to make that change
in a respin).
The "variably modified" errors remain even after hardcoding
typedef struct {
__cpu_mask __bits[16];
} cpu_set_t;
instead of relying on __CPU_SETSIZE and __NCPUBITS, and the line where it
complains about alignment not being a positive power of 2 actually
hardcodes an alignment of 16.
Have you run into those before?
ttyl
bero
== Progress ==
Debug KGDB with gdb for testing [4/10]
LCU14 slides preparation and study for presentation. [2/10]
Miscellaneous [4/10]
* Configure to use hackbox to test aarch64 gdb remote configs
* Retrieve gdb test results in different configurations.
* Emails/Patch scrolling/Meetings etc
== Plan ==
patch updates and re submission.
Figure ARM and AArch64 gdb missing features.
Prepare and travel LCU14
=Progress=
cbuild2 benchmarking - TCWG-360 [8/10]
* Got an end-to-end run in my test environment
* Patched tests to run more selectively (in review)
Meetings/mail/etc - [2/10]
=Plan=
cbuild2 benchmarking:
* Clean up some lose ends
* Sort out source/results storage
glibc:
* Finish comments in lowlevellock.h (if time)
4 days week.
== Issues ==
* Unfortunate cbuild schroot-branch merge, silently brake the validation, and we
had to revert a commit in our FSF repo.
* aarch64 bare valdiation was broken all week, now workaround but it
still have to
be fixed.
== Progress ==
* GCC 4.9 2014.09 (6/10)
- Completed new backports.
- Started FSF 4.9 branch merge for 2014.09
- Investigated validation breakages.
* Misc:
- Various meetings (2/10)
== Next ==
- 4.9 2014.09 release.
- Prepare LCU hacking session
- Travel to CA
== This week ==
* USA Holiday, Monday September 1st
* TCWG-534 - Neon intrinsic testing part 8 (2/10)
- Tested final eighteen neon intrinsics on ARM with no regressions
identified
- Unable to test on aarch64 due to test harness issues
* Linaro Bugzilla 331 - [4.9 Regression] ICE in final_scan_insn, at
final.c:2952 (aarch64-linux-gnu) (2/10)
- Bug fix investigation
* Launchpad 1312931- gcc 4.8 internal compiler error: in add_stores, at
var-tracking.c (2/10)
- validation test results review and code review submission
* Misc. (2/10)
- Linaro Connect presentation finalization and conference call
- 1:1 with Christophe
== Next week ==
- Complete Neon intrinsic testing on Aarch64
- Identify bug fix for Linaro Bugzilla 331
- Investigate failures identified in Neon intrinsic testing
== Progress ==
* TCWG-181 - Bench marking core mark with LTO (2/10)
Measured -O3 -flto vs -O3 on Aarch64 machine with Linaro GCC and
Trunk FSF GCC on Aarch64 and X86_64. Performance in both cases seems
to be same level. Planning to remeasure in trunk now.
* TCWG-531 Fix invalid use of vector register (3/10).
Completed fixing. patch tested on Aarch64 machine and up streamed the
patch to FSF trunk.
* TCWG-532 Fix abinit fails to build on AArch64 (2/10)
Bug does not appear in trunk. Case of missing back port.
Did git bisect experiments in trunk and found that r213078 solves the problem.
Case of code generation for loading labels at -O0 getting fixed after
changes to IRA register class.
* Cbuildv2 preparation for hack session in LCU14.(1/10)
* Others (2/10)
* Meetings Christophe, Ryan, Maxim and GCC status meeting
* Misc and internal meeting.
* Cbuildv2 preparation for hack session in LCU14.
== Plan ==
* Continue testing fix for TCWG-532
* Continue backport fix for TCWG-531.
* Continue Benchmark Core mark with LTO (TCWG-181).
* TCWG-533 Creating scripting to run git bisect with cbuild2.
* Cbuildv2 preparation for hack session in LCU14.
== Progress ==
* Regression on alphaev68-linux-gnu due to uxt/sxt commit (6/10)
- posted patch for promoted type based VRP after fixing issues found in
bootstrapping and regression testing. But had to drop this as this might
have performance implications.
https://gcc.gnu.org/ml/gcc-patches/2014-09/msg00288.html
- Proposed setting a flag to indicating overflow/wrap so that we can
remove uxt/sxt safely.
* Preparation for connect hacking session (2/10)
- Started with materials for the discussions.
* misc (2/10)
- Visa
- Meetings
== Issues ==
- Value range data generated by VRP is not reliable for uxt/sxt removal
as wrapping/overflow is not propagated.
- Patch for Calculating range in promoted type is rejected
- Proposed propagating additional flag (with some tweaking to preserve
size) so that this information is available at the time we deicide on
uxt/sxt redundancy
- If this cannot be agreed, this patch has to be reverted
== Plan ==
* finalize overflow/wrap propagation
* prepare for connect
== Progress ==
* Email, meetings, etc. (1/10)
* Upstream work (1/10, CARD-341)
- Patch review
* LCU14 slides and review (4/10)
* More work on malloc app benchmark framework (4/10, TCWG-441)
- Ironed out a few bugs and sources of noise
- Still need to find a broader range of workloads
== Issues ==
* None
== Plan ==
* Look into malloc single thread optimization patches situation
* Find more workloads to add to malloc benchmarks
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* Automation Framework (CARD-1378 2/10)
- Configuring D01s into a three-schroot box
- Turned out unstable, reverting to 4-core setup
* Toolchain (CARD-862 0/10)
- Re-committed vectorizer patch with MSVC2012-friendly code
* LLVM 3.5 Release (TCWG-476 1/10)
- Final release out, all done
* Buildbots (TCWG-76 4/10)
- Adding support for CMake on buildbot Zorg's interface
- Making the CMake builds test without NEON
- Created a compiler-rt bot, found some bugs, investigating
- Submitting changes upstream, will be up soon
* Background (3/10)
- Code review, meetings, discussions, etc.
- Presentations (Connect, LPC)
== Plan ==
* Migrate stack unwinding to VFP for ARMv7+ in compiler-rt
* Start implementing fpu stuff in assembler (parser/attributes)
* Finish LPC presentations
== Progress ==
* GCC trunk/4.9 cross-validation (1/10)
- monitoring results
- noticed failures on newly introduced tests when running on armeb.
Kyrill will fix his tests.
* bug #306 (bootstrap failure on i686) (1/10)
- unable to reproduce it
* AArch64 libsanitizer (3/10)
- asan and most of ubsan tests now pass
- submitted a gcc patch to enable it
- thread sanitizer does not work yet
* Neon intrinsic tests (1/10)
- ran the whole testsuite on aarch64* and arm* targets on gcc trunk
- reported an ICE on aarch64*; was a duplicated, fixed today by Carrot
- there are still several tests failing at runtime, need time to
reduce the testcases
* Misc (conf calls, meetings, ...) (4/10)
- usual 1:1 and team calls
- bugzilla management
== Next ==
* GCC trunk/4.9 cross-validation monitoring
* AArch64 thread sanitizer
* Neon intrinsic tests
* Connect preparation (hacking sessions)