Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 04 Dec 2016 07:08:18 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-bugs@FreeBSD.org
Subject:   [Bug 215039] head -r309179 TARGET_ARCH=powerpc64 buildworld using WITH_LLVM_LIBUNWIND= fails to build: asserts and rejects .S file contents
Message-ID:  <bug-215039-8@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D215039

            Bug ID: 215039
           Summary: head -r309179 TARGET_ARCH=3Dpowerpc64 buildworld using
                    WITH_LLVM_LIBUNWIND=3D fails to build: asserts and
                    rejects .S file contents
           Product: Base System
           Version: CURRENT
          Hardware: powerpc
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: bin
          Assignee: freebsd-bugs@FreeBSD.org
          Reporter: markmi@dsl-only.net

(This test was done on a powerpc64 for TARGET_ARCH=3Dpowerpc64, not cross
compiling.
Compared to my normal, successful buildworld I just added WITH_LLVM_LIBUNWI=
ND=3D
to the SRC_CONF_ENV file that I use.)

I list parts of the .meta file contents for 3 files that got errors:

# Meta data file
/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/li=
b/libgcc_eh/libunwind.o.meta
CMD /usr/bin/clang++ -B /usr/local/powerpc64-freebsd/bin/  -target
powerpc64-unknown-freebsd12.0
--sysroot=3D/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc6=
4/usr/src/tmp
-B/usr/local/powerpc64-freebsd/bin/ -fvisibility=3Dhidden -fPIC -O2 -pipe
-I/usr/src/contrib/llvm/projects/libunwind/include -I/usr/src/lib/libgcc_eh
-D_LIBUNWIND_IS_NATIVE_ONLY -Wsystem-headers -Wall -Wno-format-y2k
-Wno-uninitialized -Wno-empty-body -Wno-string-plus-int
-Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value
-Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
-Wno-unused-local-typedef -Wno-switch -Wno-switch-enum
-Wno-knr-promoted-parameter -Qunused-arguments  -std=3Dc++11 -fno-rtti
-Wno-c++11-extensions  -c
/usr/src/contrib/llvm/projects/libunwind/src/libunwind.cpp -o libunwind.o
CWD
/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/li=
b/libgcc_eh
TARGET libunwind.o
-- command output --
In file included from
/usr/src/contrib/llvm/projects/libunwind/src/libunwind.cpp:27:
/usr/src/contrib/llvm/projects/libunwind/src/UnwindCursor.hpp:612:3: error:
static_assert failed "UnwindCursor<> does not fit in unw_cursor_t"
  static_assert((check_fit<UnwindCursor<A, R>, unw_cursor_t>::does_fit),
  ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/contrib/llvm/projects/libunwind/src/libunwind.cpp:68:24: note: in
instantiation of member function
'libunwind::UnwindCursor<libunwind::LocalAddressSpace,
libunwind::Registers_ppc>::UnwindCursor' requested here
  new ((void *)cursor) UnwindCursor<LocalAddressSpace, REGISTER_KIND>(
                       ^
1 error generated.
*** Error code 1




# Meta data file
/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/li=
b/libgcc_eh/UnwindRegistersRestore.o.meta
CMD /usr/bin/clang -B /usr/local/powerpc64-freebsd/bin/ -target
powerpc64-unknown-freebsd12.0
--sysroot=3D/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc6=
4/usr/src/tmp
-B/usr/local/powerpc64-freebsd/bin/ -O2 -pipe=20=20
-I/usr/src/contrib/llvm/projects/libunwind/include -I/usr/src/lib/libgcc_eh
-D_LIBUNWIND_IS_NATIVE_ONLY -std=3Dgnu99 -Wsystem-headers -Wall -Wno-format=
-y2k
-Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int
-Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value
-Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
-Wno-unused-local-typedef -Wno-switch -Wno-switch-enum
-Wno-knr-promoted-parameter  -Qunused-arguments    -c
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersRestore.S -o
UnwindRegistersRestore.o
CMD=20
CWD
/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/li=
b/libgcc_eh
TARGET UnwindRegistersRestore.o
-- command output --
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersRestore.S:98:46:
error: unexpected token in directive
.globl _ZN9libunwind13Registers_ppc6jumptoEv @ .hidden
_ZN9libunwind13Registers_ppc6jumptoEv @ .type
_ZN9libunwind13Registers_ppc6jumptoEv,@function @
_ZN9libunwind13Registers_ppc6jumptoEv:
                                             ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersRestore.S:100:3:
error: unrecognized instruction mnemonic
; void libunwind::Registers_ppc::jumpto()
  ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersRestore.S:100:1=
7:
error: unexpected token at start of statement
; void libunwind::Registers_ppc::jumpto()
                ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersRestore.S:102:3:
error: unrecognized instruction mnemonic
; On entry:
  ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersRestore.S:102:1=
1:
error: unexpected token at start of statement
; On entry:
          ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersRestore.S:103:3:
error: unrecognized instruction mnemonic
; thread_state pointer is in r3
  ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersRestore.S:103:2=
4:
error: unrecognized instruction mnemonic
; thread_state pointer is in r3
                       ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersRestore.S:103:3=
0:
error: unrecognized instruction mnemonic
; thread_state pointer is in r3
                             ^
. . . (a very long list) . . .



# Meta data file
/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/li=
b/libgcc_eh/UnwindRegistersSave.o.meta
CMD /usr/bin/clang -B /usr/local/powerpc64-freebsd/bin/ -target
powerpc64-unknown-freebsd12.0
--sysroot=3D/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc6=
4/usr/src/tmp
-B/usr/local/powerpc64-freebsd/bin/ -O2 -pipe=20=20
-I/usr/src/contrib/llvm/projects/libunwind/include -I/usr/src/lib/libgcc_eh
-D_LIBUNWIND_IS_NATIVE_ONLY -std=3Dgnu99 -Wsystem-headers -Wall -Wno-format=
-y2k
-Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int
-Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value
-Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
-Wno-unused-local-typedef -Wno-switch -Wno-switch-enum
-Wno-knr-promoted-parameter  -Qunused-arguments    -c
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S -o
UnwindRegistersSave.o
CMD=20
CWD
/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/li=
b/libgcc_eh
TARGET UnwindRegistersSave.o
-- command output --
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:102:3:
error: unrecognized instruction mnemonic
; extern int unw_getcontext(unw_context_t* thread_state)
  ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:102:14:
error: unrecognized instruction mnemonic
; extern int unw_getcontext(unw_context_t* thread_state)
             ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:104:3:
error: unrecognized instruction mnemonic
; On entry:
  ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:104:11:
error: unexpected token at start of statement
; On entry:
          ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:105:3:
error: unrecognized instruction mnemonic
; thread_state pointer is in r3
  ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:105:24:
error: unrecognized instruction mnemonic
; thread_state pointer is in r3
                       ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:105:30:
error: unrecognized instruction mnemonic
; thread_state pointer is in r3
                             ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:107:23:
error: unexpected token in directive
.globl unw_getcontext @ .type unw_getcontext,@function @ unw_getcontext:
                      ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:108:13:
error: invalid memory operand
  stw r0, 8(r3)
            ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:108:15:
error: unknown operand
  stw r0, 8(r3)
              ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:108:15:
error: unexpected token at start of statement
  stw r0, 8(r3)
              ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:109:8:
error: invalid operand for instruction
  mflr r0
       ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:110:13:
error: invalid memory operand
  stw r0, 0(r3) ; store lr as ssr0
            ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:110:15:
error: unknown operand
  stw r0, 0(r3) ; store lr as ssr0
              ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:110:15:
error: unexpected token at start of statement
  stw r0, 0(r3) ; store lr as ssr0
              ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:110:19:
error: unrecognized instruction mnemonic
  stw r0, 0(r3) ; store lr as ssr0
                  ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:110:28:
error: unrecognized instruction mnemonic
  stw r0, 0(r3) ; store lr as ssr0
                           ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:111:14:
error: invalid memory operand
  stw r1, 12(r3)
             ^
/usr/src/contrib/llvm/projects/libunwind/src/UnwindRegistersSave.S:111:16:
error: unknown operand
  stw r1, 12(r3)
               ^
. . . (Another very long list) . . .

--=20
You are receiving this mail because:
You are the assignee for the bug.=



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