← Back to team overview

touch-packages team mailing list archive

[Bug 1349789] Re: clang armhf in trusty simply doesn't work

 

On 30 July 2014 14:59, Niall Douglas <s_launchpad@xxxxxxxxxxx> wrote:
> FYI I am one of the Boost core dev team, and this problem emerged during
> our prerelease testing of Boost 1.56.
>
> I thought a reasonable test of who is at fault would be if I purged all
> trace of clang and llvm from the system, and then download these
> prebuilt binaries from llvm:
>
> http://llvm.org/releases/3.4.2/clang+llvm-3.4.2-armv7a-linux-
> gnueabihf.tar.xz
>
> I unpack these into /usr/local and ensure perms and ownership are reset
> to correct values.
>
> If I now repeat the earlier test I see:
>
> 1. I no longer need to manually override -mcpu, because the correct
> local CPU is now chosen and the atomics compile instead of the assembler
> not recognising instructions. I would assume the default triple of
> armv7a-linux-gnueabihf helps a lot here.
>

I believe our default clang triplet is the same as debian's, as we
don't modify it.
Which I think should be something is v7 without NEON.
Have you tried debian's armhf clang-3.4?
I'll investigate further to see what is the baseline cpu all three
target (ubuntu, debian and llvm upstream prebuilts)

> 2. All the unit tests still hang in the same place as with your clang.
>

=((((( *sad*

> This suggests to me that something is very wrong with Boost on clang on
> armhf.
>
> I'll investigate more this end, but fixing the default cpu such that it
> supports atomics would be a great help, so I'll leave this issue open
> for now. I'll come back if I figure out the cause of the hangs and it's
> related to packaging.
>

Ack.

-- 
Regards,

Dimitri.


** Changed in: llvm-defaults (Ubuntu)
       Status: New => Confirmed

** Package changed: llvm-defaults (Ubuntu) => llvm-toolchain-3.4
(Ubuntu)

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to llvm-toolchain-3.4 in
Ubuntu.
https://bugs.launchpad.net/bugs/1349789

Title:
  clang armhf in trusty simply doesn't work

Status in “llvm-toolchain-3.4” package in Ubuntu:
  Confirmed

Bug description:
  I'm running Ubuntu 14.04 on armhf. clang is from the standard repo:

  root@tegra-ubuntu:~# apt-cache show clang
  Package: clang
  Priority: optional
  Section: universe/devel
  Installed-Size: 27
  Maintainer: Ubuntu Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
  Original-Maintainer: LLVM Packaging Team <pkg-llvm-team@xxxxxxxxxxxxxxxxxxxxxxx>
  Architecture: armhf
  Source: llvm-defaults (0.21ubuntu1)
  Version: 1:3.4-0ubuntu1
  Replaces: clang (<< 3.2-1~exp2)
  Depends: clang-3.4 (>= 3.4~rc3-1~)
  Filename: pool/universe/l/llvm-defaults/clang_3.4-0ubuntu1_armhf.deb
  Size: 2478
  MD5sum: eadb3f7c344e364480bdf7fdd0f698ab
  SHA1: ec4d0bfcad42bf536ee8d9257f8930dd32e1a261
  SHA256: f6d9a8fbfc06d93cd4c1a2437114454cc1eec805a635efc490a7e1e6eec2b3de
  Description-en: C, C++ and Objective-C compiler (LLVM based)
   Clang project is a C, C++, Objective C and Objective C++ front-end
   for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler
   Collection (GCC).
   .
   Clang implements all of the ISO C++ 1998 and 2001 standards and also provides
   a partial support of C++1y.
   .
   This is a dependency package providing the default clang compiler.
  Description-md5: ea1f164ac255f39c6ec78685f71ef19b
  Bugs: https://bugs.launchpad.net/ubuntu/+filebug
  Origin: Ubuntu

  
  Anyway, it does not produce working output. Here are some examples:

  https://ci.nedprod.com/view/Boost.AFIO/job/Boost.AFIO%20Build%20POSIX_ARM_clang%203.4/9/consoleFull

  This log shows how clang has the wrong default target CPU, so it
  outputs unsupported ARM instructions (see the end after the warnings
  spew).

  If I force the target cpu to a cortex-a15 it now at least compiles and
  links and starts to run unit tests:

  https://ci.nedprod.com/view/Boost.AFIO/job/Boost.AFIO%20Test%20POSIX_ARM_clang%203.4/7/consoleFull

  ... but hangs in the first unit test, and is timed out. Before you
  think it the unit tests, here is the exact same thing for GCC 4.8:

  https://ci.nedprod.com/view/Boost.AFIO/job/Boost.AFIO%20Test%20POSIX_ARM_GCC%204.8/7/console

  The unit tests all run and pass as expected. Everything also works
  fine on x86 and x64 with clang 3.4 on Ubuntu 14.04, this appears to be
  an armhf misconfiguration.

  Niall

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/llvm-toolchain-3.4/+bug/1349789/+subscriptions