Note: working for Linaro every other week
=== Work done during this LLVM week ===
* finish slides for bswap/store merging passes presentation in hacker room
at Connect HK2018
* Continue working on fix for PR34170 / TCWG1137 (cannot select truncate in
ARMv7 backend):
-> better understanding of generation of ISD node for inline asm, finally
seeing a way forward
=== Plan for next Linaro week (week 12) ===
* Linaro connect
If time permits:
* finish fix for PR34170 / TCWG1137 (cannot select truncate in ARMv7
backend)
* investigate failure to build clang in shared lib mode with gcc
Hi.
gdb doesn't run due to there is no libpython2.7.so on the system.
$ ./gdb/gdb --version
./gdb/gdb: error while loading shared libraries: libpython2.7.so: cannot open shared object file: No such file or directory
There is only static python library available. Is there a way to build gdb with static python library?
Regards,
Martins
== Progress ==
* GCC
- FDPIC
- reworking/cleaning binutils patches
* GCC upstream validation:
* Infrastructure:
- TCWG-1335: updated builder dockerfiles with postfix config. ABE
patch under review to send test results. Sent a patch for
contrib/test_summary script.
- Enabling use of Linaro binary release on old distro: unsuccessful
experiment with LD_PRELOAD so far.
* misc (conf-calls, meetings, emails, ....)
== Next ==
* GCC/FDPIC
* GCC upstream validation
* Off on Friday afternoon.
# Progress #
* Fix non-gdbserver issue and GDB buildbot issue.
Intel people committed a patch breaks every non-x86 gdbserver. Test
with GDBserver is slowed down from 20~40 minutes to 6~12 hours.
The fix is pushed in,
requested upstream GDB buildbot maintainer to get rid of pending
builds until the fix.
# Plan #
* Review Alan H.'s patches.
--
Yao Qi
== This Week ==
* Coremark regression (TCWG-1234) (6/10)
- Working on defining a cost model for hoisting.
* Public Holiday (2/10)
* Misc (2/10)
- Meetings
- Slides
== Next Week ==
- Continue ongoing tasks.
Note: working for Linaro every other week
* start looking at fix for PR34170 / TCWG1137 (cannot select truncate in
ARMv7 backend):
+ inline asm with >=64bit floating-point output is not handled
+ wrote a tentative patch which crashes later in the code, need to
investigate
* Start slides for technical talk in TCWG room @ Linaro connect:
+ bswap done, started to refamiliarize myself with store merging pass and
its latest improvement
* Merge the two patches for TCWG-1308 (missing pseudo expansion + crash in
instruction selection of vector load/store with register writeback)
=== Plan for next Linaro week (week 10) ===
* finish fix for PR34170 / TCWG1137 (cannot select truncate in ARMv7
backend)
* finish slides for bswap/store merging passes presentation in hacker room
at Connect HK2018
* Off on Monday [1/5]
# Progress #
* GDB is confused by the line table generated by GCC with -gcolumn-info
PR 22531. [2/5]
Preparatory patches v2 are posted.
* Merge my patches on removing MAX_REGISTER_SIZE. Done. [2/5]
# Plan #
* PR 22531,
* Upstream patches review.
--
Yao Qi
== Progress ==
* GCC
- FDPIC
- reworking/cleaning binutils patches
* GCC upstream validation:
- no regression to report this week :-)
* Infrastructure:
- tcwg-buildapp + lava now triggered daily, to check lava/lab reliability.
- updated builder dockerfiles with postfix config. Patch under review
- some progress on enabling use of Linaro binary release on old
distro. My proposal was rejected, but the discussion moved forward.
- fixed toolchain build not to ship 'runtest' anymore, and moved
gdbserver from bin/ to sysroot dir
* misc (conf-calls, meetings, emails, ....)
== Next ==
* GCC/FDPIC
* GCC upstream validation
# Progress #
* GDB is confused by the line table generated by GCC with -gcolumn-info
PR 22531. [2/5]
Tested one patch again, committed. Keep going on the rest
of them.
* Fix one GDB issue with OpenOCD, which is a long standing issue. [2/5]
Commit patch to both GDB master and 8.1 branch. Done.
* Misc, patches review, meeting. [1/5]
# Plan #
* One day off on Monday,
* PR 22531,
* Resume my pending patches on removing MAX_REGISTER_SIZE.
--
Yao Qi
== Progress ==
* GCC
- FDPIC
- rebased GCC and GDB patches on top of recent master branches.
- adjusted some of the GDB (gdbserver) patches to cope with gcc-8
complaints.
- adjusted CI testsuite to cope with gcc-8
* GCC upstream validation:
- no regression to report this week :-)
- still checking go/libgo random results on some tests
* Infrastructure:
- improved tcwg-buildapp (Using Lava, thanks to Remi). Now retries
lava job several times if needed.
- managed to configure postfix to send emails from our build
containers (thanks Ben). Once this is properly configured/deployed,
we'll finally be able to send GCC validation results to the
appropriate list
- resurrected my old work to force use of the old memcpy version
such that our binary toolchains work on older distros (such as
RHEL6...)
* misc (conf-calls, meetings, emails, ....)
== Next ==
* GCC/FDPIC
* GCC upstream validation
== This Week ==
* Code hoisting (TCWG-1234) (6/10)
- Working on approach to add basic block info to ANTIC sets
* GCC bugs (3/10)
- Extend sincos to handle sin 2x (PR83661): Patch completed.
* Misc (1/10)
- Meetings
# Progress #
* GDB is confused by the line table generated by GCC with -gcolumn-info
PR 22531. [2/5]
Override operator new/delete, patch is OK'ed but Tom still believes
classes must be is_trivially_destructible.
* Resume my pending patches on removing MAX_REGISTER_SIZE.
[2/5]
Patches v2 are updated and posted.
* Fix one GDB issue with OpenOCD, which is a long standing issue. [1/5]
Patch is tested, but not committed yet.
# Plan #
* PR 22531,
* Resume my pending patches on removing MAX_REGISTER_SIZE.
* More patches review,
--
Yao Qi
== Progress ==
* GCC
- FDPIC
- updated binutils ref results in CI. There are a couple of new
failures to investigate
- started GCC upgrade: rebased the FDPIC GCC pile of patches on top of
trunk.
- debugging ICE while building libgcc
* GCC upstream validation:
- helped reproduce a bugzilla on armeb
- reported random go/libgo test failures. Intel confirmed they also see
similar random results.
* Infrastructure:
- improved tcwg-buildapp script/job to actually boot arm/arm64 boards
after building a kernel with a given toolchain. (Using Lava, thanks to Remi)
* misc (conf-calls, meetings, emails, ....)
== Next ==
* GCC/FDPIC
* GCC upstream validation
== Progress ==
o LLVM
* "unpredictable" handling:
- Bugzilla 33011: Fix committed
- Working on unpredictable cases when using PC as operand.
* Buildbots failures:
- Analyzed regressions, due to D42574
- Tested and reviewed proposed tix
* 6.0.0 release test failure:
- Investigate Bug 35996 (asan_rt_conflict_test segfaults)
- Issue due to hardcoded filename;s lenght is too short
- Validating a fix
* Got commit after approval access granted
o Misc
* Various meetings and discussions.
# Progress #
* gfortran 7.2 vs 8.0 debug information difference. [2/5]
Open GCC bug to get more attention, PR debug/84131. It is a GCC 8
regression. Jakub fixed it two hours after I opened the bug. Now,
there is no gdb.fortran test fails with truk gcc.
* GDB is confused by the line table generated by GCC with -gcolumn-info
PR 22531. [2/5]
Patches are done, to be posted for review. Investigate how to
override new/delete operator in C++.
* Resume my pending patches on removing MAX_REGISTER_SIZE.
[1/5]
Update patch series v2 per reviewers' comments.
# Plan #
* GDB 8.1 is released! Bump up GDB version in Linaro toolchain.
* PR 22531,
* Resume my pending patches on removing MAX_REGISTER_SIZE.
--
Yao Qi
== This Week ==
* GCC bugs (5/10)
a) Extend malloc_candidate_p to handle multiple phi's (TCWG-1331):
Fixed testsuite regressions
b) Extend sincos to handle sin 2x (PR83661): Started working on patch.
* TCWG-1234 (2/10)
- A one liner patch that pessimizes hoisting by requiring an
expression to be in AVAIL blocks of all immediate successors works for
improving the regression.
- Working to make the patch more general to avoid pessimizing hoisting.
* Public holiday (2/10)
* Misc (1/10)
- Meetings
== Progress ==
o Linaro GCC/Validation
* 2018.01 snapshots deployed
* 2018.02 release candidates will be done when CVE mitigation will
be contributed upstream.
o LLVM
* "unpredictable" handling (Bugzilla 33011, ...): on-going
* Investigated OOM issue further... without much success.
* Python scripts reviews
o Misc
* Various meetings and discussions.
* Preparing Connect presentations