== Progress ==
* Short week (Out of office 22 - 24 April)
* [GlobalISel] Better support for small types [LLVM-553]
- Investigated my bug some more, it doesn't seem to be related to my
recent patches but rather an existing issue which is exposed because
we select more functions now
- Might be related to LLVM-456 (Fix frame index sizes for i<32)
* Catching up on Connect / EuroLLVM
== Plan ==
* Try to confirm root cause of LLVM-553 issue
[VIRT-327 # Richard's upstream QEMU work ]
Fix TranslationBlock overflow, launchpad 1824853.
Investigated launchpad 1824768, i386 emulation on arm32.
But works-for-me.
A bunch of work on new gvec primitives. Primarily to
support David Hildebrand's target/s390 conversion, but
it does enable more vectorization in target/arm as well.
r~
== Progress ==
* FDPIC
- Troubleshooting with stm32f469-disco. Trouble connecting via
cross-gdb over openocd. Updated GNU-411 and discussing with Omair.
Created GNU-606 to investigate if gdbserver memory consumption
increased since release 7.5.
* GCC upstream validation:
- little activity this week, close to e/o stage 4
* GCC
- ubsan on bare-metal toolchain: discussed with Peter, I will send an
email to llvm-dev list.
* Infra
- several boards crashed, increasing Jenkins build queue
- working on adding binutils regression testing to round-robin jobs
== Next ==
More of the on-going tasks
== Progress ==
* Short week (Out of office 18 - 19 April)
* LLVM 7.1.0 Release for ARM & AArch64 [LLVM-546]
- Uploaded binaries for both ARM & AArch64
* [GlobalISel] Better support for small types [LLVM-553]
- Still in progress (currently investigating a bug)
* Catching up on Connect
== Plan ==
* Back at work on Thursday, April 25th
Progress: (very short week, 2 days)
* VIRT-65 [QEMU upstream maintainership]
+ QEMU release work: flurry of last minute stuff for rc3. I hoped
we would not need an rc4, but as usual a release-critical issue
was found, so we will be having one.
+ code review
* VIRT-268 [QEMU support for dual-core Cortex-M Musca board]
+ worked through some final bug fixes
+ sent out v1 of the FP support patchset for review
thanks
-- PMM
(Previous week was Connect.)
Progress: (short week, 3 days)
* VIRT-65 [QEMU upstream maintainership]
+ QEMU release work: flurry of last minute stuff for rc3.
I hoped we would not need an rc4, but as usual a release-critical
issue was found, so we will be having one.
+ code review
thanks
-- PMM
== Progress ==
* FDPIC
- Experimenting with stm32f469-disco. It seems recent gdbserver is now
too large to load (issues when trying to map libstdc++.so while
attempting to load a simple hello.c)
* GCC upstream validation:
- little activity this week, close to e/o stage 4
* GCC
- ubsan on bare-metal toolchain: experimenting with multlibs
* Infra
- improved reporting of some jobs, improved error handling
== Next ==
More of the on-going tasks
== Progress ==
* LLVM 7.1.0 Release for ARM & AArch64 [LLVM-546]
- Final candidate build in progress
* [GlobalISel] Map and select G_FCONSTANT [LLVM-552]
- Committed upstream
* [GlobalISel] Better support for small types [LLVM-553]
- In progress
== Plan ==
* LLVM-546, LLVM-553
[Conferences]
Linaro connect and EuroLLVM. Please see trip reports already posted. A
bit of a gruelling week of Travel going from Bangkok straight to
Brussels, with just a short half a day in between at home in
Cambridge.
[Activity]
- A number of reviews whilst away
- Started looking at how to build an embedded toolchain with Linaro's
ABE and work out how to fit it into their infrastructure.
Planned Absences
Holiday 12- 16th, back on Wednesday.
== Progress ==
* FDPIC
- Experimenting with stm32f469-disco
* GCC upstream validation:
- reported a few regressions
* GCC
- ubsan on bare-metal toolchain: enabling more multilibs triggered an
assert in the linker.
* Infra
- improved reporting of some jobs
== Next ==
FDPIC:
- GCC: handle feedback on v4 patches
- GDB: update patches
- uclibc-ng: look at how to test fdpic mode with openadk
- complete board setup
Infra:
- benchmarking jobs update
== Progress ==
* LLVM 7.1.0 Release for ARM & AArch64 [LLVM-546]
- Uploaded RC1 for both ARM & AArch64
* [GlobalISel] Support debug info [LLVM-549]
- Added support for DBG_VALUE, seems to be enough for now
* [GlobalISel] Map and select G_FCONSTANT [LLVM-552]
- In progress
* IR SVE Reviews [LLVM-545]
- More reading, discussions etc
== Plan ==
* More of the same
[VIRT-263 # ARMv8.1-VHE Virtual Host Extensions ]
More progress, but still crashing early. Crashes on first
memory access after swapping ttbr1. Debugging kernel on
guest and qemu on host simultaneously. So far, all the
numbers look right but still boom.
[VIRT-339 # ARMv8.5-BTI, Branch Target Identification ]
Posted a v4 using the PT_NOTE, but still RFC-ish due to
missing abi for new mmap flag.
[VIRT-327 # Richard's upstream QEMU work ]
Posted v1+v2 of CPUNegativeOffsetState.
Posted v1 of a cleanup of target/riscv wrt decodetree.
[Other]
Upgraded the laptop from fedora 27 (out of support now),
to ubuntu 18.04 lts.
r~
[Activity]
[LLVM-542] Compiling zephyr with clang
- Prepared for presentation/discussion with colleagues at Connect next week.
- Made the installation process a bit more repeatable
- Added support for -Oz
[Intel-CET] patches to LLD (similar to BTI)
- Code-owner has redesigned the patches and they look a lot better and
more likely to go in. Shouldn't be too difficult to build BTI on top
of.
[LLVM-523] .ARM.exidx redesign
- Now committed, and has stuck for at least a day without needing to
be reverted.
Linaro Connect
- Preparations for hack room
- Gave dry run of presentation for Doughnuts. Will need to cut out
some material to get through in time.
Next week:
At Linaro Connect
Then at EuroLLVM
Then most likely on holiday for remainder of that week.
== Progress ==
* FDPIC
- Discovered that my stm32f429-disc1 board is not suitable for recent
Linux kernels (too large). Will experiment with stm32f469-disco
* GCC upstream validation:
- reported a few regressions
* misc (conf-calls, meetings, emails, ....)
- reviewed infra script patches
- fixed small issues after adding QEMU as a toolchain component in ABE
- added jobs to monitor Jenkins slaves
- fixed issues in benchmarking scripts
== Next ==
FDPIC:
- GCC: handle feedback on v4 patches
- GDB: update patches
- uclibc-ng: look at how to test fdpic mode with openadk
- complete board setup
Infra:
- benchmarking jobs update
== Progress ==
* LLVM 7.1.0 Release for ARM & AArch64 [LLVM-546]
- Fixed our infra scripts to work for 7.1.0 (looks like it's the
first ever minor release since the new numbering scheme was
introduced)
- AArch64 is ready and green, ARM still in progress
* [Thumb GlobalISel] Bugfixes [LLVM-544]
- Committed the patch for alignment issues and 2 other patches for
1-bit value handling
- Selfhosted clang now passes check-all
* IR SVE Reviews [LLVM-545]
- More reading, installed armie etc
== Plan ==
* More of the same
Hi,
I am trying to cross-compile QEMU for aarch64 target using the below toolchain http://releases.linaro.org/components/toolchain/binaries/4.9-2016.02/aarch6…
../configure --target-list=aarch64-softmmu --enable-kvm --enable-vhost-net --cross-prefix=~/Downloads/gcc-linaro-4.9-2016.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
ERROR: pkg-config binary '/home/rokhanna/Downloads/gcc-linaro-4.9-2016.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-pkg-config' not found
QEMU - https://github.com/qemu/qemu
Any pointers on where I can find pkg-config? Thanks in advance.
Thanks
Rohit
-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may contain
confidential information. Any unauthorized review, use, disclosure or distribution
is prohibited. If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------
Thanks Wookey and Richard.
I was able to resolve the pkg-config issue after installing it with -
apt install pkg-config-aarch64-linux-gnu
I modified my configure command to below -
./configure --target-list=aarch64-softmmu --enable-kvm --enable-vhost-net --cross-prefix=aarch64-linux-gnu-
Now I am running into dependency issue on glib-2.4 and gthread-2.0.
rokhanna@rokhanna-dev ~/dev/qemu.git $ ./configure --target-list=aarch64-softmmu --enable-kvm --enable-vhost-net --cross-prefix=aarch64-linux-gnu-
ERROR: glib-2.40 gthread-2.0 is required to compile QEMU
Thanks
Rohit
________________________________
From: Richard Henderson <richard.henderson(a)linaro.org>
Sent: Thursday, March 21, 2019 9:31 PM
To: Rohit Khanna; linaro-toolchain(a)lists.linaro.org
Cc: Santosh Shukla
Subject: Re: Cross compiling QEMU for aarch64
On 3/21/19 4:45 PM, Rohit Khanna wrote:
> Hi,
>
> I am trying to cross-compile QEMU for aarch64 target using the below toolchain http://releases.linaro.org/components/toolchain/binaries/4.9-2016.02/aarch6…
>
>
> ../configure --target-list=aarch64-softmmu --enable-kvm --enable-vhost-net --cross-prefix=~/Downloads/gcc-linaro-4.9-2016.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
>
> ERROR: pkg-config binary '/home/rokhanna/Downloads/gcc-linaro-4.9-2016.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-pkg-config' not found
First, "--cross-prefix=aarch64-linux-gnu-".
It is a prefix, not a path. You should have
"$HOME/Downloads/gcc-linaro-4.9-2016.02-x86_64_aarch64-linux-gnu/bin" in your
path in order to use that compiler.
Second, pkg-config is not part of a toolchain, but part of an entire OS
distribution. If your host is debian or ubuntu, they ship a version configured
for aarch64 cross-compilation. Which is helpful because...
Third, you're going to need a *lot* of aarch64 libraries in order to build
QEMU. This is where OS support for cross-toolchains is key.
r~
-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may contain
confidential information. Any unauthorized review, use, disclosure or distribution
is prohibited. If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------
Progress: (short week, 3 days)
* VIRT-65 [QEMU upstream maintainership]
+ reviewed a few patchsets that had been lurking in my queue too long
+ trawled through the QEMU bug system for bugs we'd already fixed and
forgotten to close, bugs which need more info from the submitter,
and bugs which were very easy to fix
+ various other release related work
* Preparation for Connect next week
thanks
-- PMM
Linaro connect preparation:
- Finished Linaro Connect presentation on cross compilation with clang
-- Hoping to do a dry-run at Doughnuts this week assuming we can
resolve a potential clash with the IPG hands-on.
- Draft agenda for the hack-room produced.
[LLVM-523] ARM.exidx redesign
- Got approval, committed and then reverted my exceptions redesign due
some build-bot failures. Found another potential problem with
--emit-relocs that may be a bit more difficult to fix.
[BTI]
Continuing to review and make suggestions for Intel CET patch
(pre-requisite for BTI due to common use of .note.gnu.property
sections)
Some more communication with Linux Kernel port to Arm with respect to
assembler problems.