Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 18 May 2014 10:38:05 -0600
From:      Ian Lepore <ian@FreeBSD.org>
To:        Boris Samorodov <bsam@passap.ru>
Cc:        freebsd-current@FreeBSD.org
Subject:   Re: [arm cross-compiling, clang] Error: selected processor does not support `ldrexd r2,r3,[r1]'
Message-ID:  <1400431085.1152.24.camel@revolution.hippie.lan>
In-Reply-To: <5378DB4E.5030305@passap.ru>
References:  <5378D64C.2000903@passap.ru>  <5378DB4E.5030305@passap.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 2014-05-18 at 20:09 +0400, Boris Samorodov wrote:
> 18.05.2014 19:48, Boris Samorodov =D0=C9=DB=C5=D4:
> > Hi All,
> >=20
> > The system:
> > -----
> > % uname -a
> > FreeBSD bb052.bsnet 11.0-CURRENT FreeBSD 11.0-CURRENT #92 r266163: Th=
u
> > May 15 23:22:26 SAMT 2014
> > bsam@bb052.bsnet:/usr/obj/usr/src/sys/BB64X  amd64
> >=20
> > % clang --version
> > FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140=
512
> > Target: x86_64-unknown-freebsd11.0
> > Thread model: posix
> > -----
> >=20
> > While cross-compiling (sources r266396) I get:
> > -----
> > % make -C /usr/src ARCH=3Darm TARGET_ARCH=3Darmv6 buildworld
>=20
> Hm, at https://wiki.freebsd.org/EmbeddedHandbook one more option
> is listed: "TARGET_CPUTYPE=3Darmv6". Trying this.
>=20
> > [...]
> > =3D=3D=3D> lib/clang/liblldbAPI (all)
> > c++   -O -pipe
> > -I/usr/src/lib/clang/liblldbAPI/../../../contrib/llvm/tools/lldb/incl=
ude
> > -I/usr/src/lib/clang/liblldbAPI/../../
> > ../contrib/llvm/tools/lldb/source
> > -I/usr/src/lib/clang/liblldbAPI/../../../contrib/llvm/include
> > -I/usr/src/lib/clang/liblldbAP
> > I/../../../contrib/llvm/tools/clang/include
> > -I/usr/src/lib/clang/liblldbAPI/../../../contrib/llvm/tools/lldb/sour=
ce/API
> > -I. -I
> > /usr/src/lib/clang/liblldbAPI/../../../contrib/llvm/../../lib/clang/i=
nclude
> > -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD -D__STDC_LIMIT_MA
> > CROS -D__STDC_CONSTANT_MACROS -fno-strict-aliasing
> > -DLLVM_DEFAULT_TARGET_TRIPLE=3D\"armv6-gnueabi-freebsd11.0\" -DLLVM_H=
OST_TRIP
> > LE=3D\"armv6-unknown-freebsd11.0\" -DDEFAULT_SYSROOT=3D\"\"
> > -Qunused-arguments -std=3Dc++11 -DLLDB_DISABLE_PYTHON -fno-exceptions=
 -f
> > no-rtti -Wno-c++11-extensions -c
> > /usr/src/lib/clang/liblldbAPI/../../../contrib/llvm/tools/lldb/source=
/API/SBAddress.cpp
> > -o SB
> > Address.o
> > /tmp/SBAddress-9939f3.s: Assembler messages:
> > /tmp/SBAddress-9939f3.s:92: Error: selected processor does not suppor=
t
> > `ldrexd r2,r3,[r1]'
> > /tmp/SBAddress-9939f3.s:141: Error: selected processor does not suppo=
rt
> > `ldrexd r2,r3,[r0]'
> > /tmp/SBAddress-9939f3.s:311: Error: selected processor does not suppo=
rt
> > `ldrexd r8,r9,[r0]'
> > /tmp/SBAddress-9939f3.s:312: Error: selected processor does not suppo=
rt
> > `strexd r1,r2,r3,[r0]'
> > /tmp/SBAddress-9939f3.s:320: Error: selected processor does not suppo=
rt
> > `ldrexd r2,r3,[r0]'
> > /tmp/SBAddress-9939f3.s:325: Error: selected processor does not suppo=
rt
> > `ldrexd r2,r3,[r0]'
> > /tmp/SBAddress-9939f3.s:329: Error: selected processor does not suppo=
rt
> > `ldrexd r2,r3,[r0]'
> > /tmp/SBAddress-9939f3.s:330: Error: selected processor does not suppo=
rt
> > `strexd r2,r4,r5,[r0]'
> > /tmp/SBAddress-9939f3.s:379: Error: selected processor does not suppo=
rt
> > `ldrexd r0,r1,[r0]'
> > /tmp/SBAddress-9939f3.s:507: Error: selected processor does not suppo=
rt
> > `ldrexd r2,r3,[r0]'
> > /tmp/SBAddress-9939f3.s:511: Error: selected processor does not suppo=
rt
> > `ldrexd r2,r3,[r0]'
> > /tmp/SBAddress-9939f3.s:512: Error: selected processor does not suppo=
rt
> > `strexd r2,r8,r9,[r0]'
> > /tmp/SBAddress-9939f3.s:665: Error: selected processor does not suppo=
rt
> > `ldrexd r4,r5,[r1]'
> > /tmp/SBAddress-9939f3.s:671: Error: selected processor does not suppo=
rt
> > `ldrexd r6,r7,[r1]'
> > /tmp/SBAddress-9939f3.s:678: Error: selected processor does not suppo=
rt
> > `ldrexd r2,r3,[r1]'
> > /tmp/SBAddress-9939f3.s:679: Error: selected processor does not suppo=
rt
> > `strexd r2,r6,r7,[r1]'
> > /tmp/SBAddress-9939f3.s:739: Error: selected processor does not suppo=
rt
> > `ldrexdne r0,r1,[r0]'
> > c++: error: assembler command failed with exit code 1 (use -v to see
> > invocation)
> > *** Error code 1
> >=20
> > Stop.
> > make[6]: stopped in /usr/src/lib/clang/liblldbAPI
> > *** Error code 1
> > -----

While I don't think it should affect this problem, "ARCH=3Darm" isn't
needed.  If anything it would be TARGET=3Darm, but that's implied by the
TARGET_ARCH=3Darmv6.

I suspect the problems you're seeing are more fallout from all the
recent WITH/WITHOUT build system changes.  I've been so focused on doing
arm MFCs for the past week I haven't tried to build -current for a few
days.

Since 10-stable is now in sync [1] with -current for arm stuff, but
doesn't have all the recent build system changes, that might be a
workable alternative for you for now... just build 10-stable instead of
-current.

[1] mostly -- I'm still finding a few misc changesets that I missed on
the first pass, and build/run testing of 10-stable on arm is just
beginning.

-- Ian





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1400431085.1152.24.camel>