Closed Bug 824633 Opened 12 years ago Closed 4 years ago

clang++ chokes on bignum-dtoa.cc on powerpc

Categories

(Core :: MFBT, defect)

PowerPC
OpenBSD
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: gaston, Unassigned)

Details

Attachments

(1 file)

Pretty sure that's an llvm/clang bug, but filing here for tracking purposes. mozilla-central builds fine with clang 3.1 & clang 3.2 on OpenBSD/amd64/i386 but fails on OpenBSD/powerpc (32), on bignum-dtoa.cc. the generated assembly contains .loc lines with 'prologue_end' at the end, and apparently this is the issue. bignum-dtoa.s: Assembler messages: bignum-dtoa.s:55: Error: junk at end of line, first unrecognized character is `p' bignum-dtoa.s:362: Warning: setting incorrect section attributes for .text._ZN17double_conversion6Sing leC1Ef bignum-dtoa.s:388: Error: junk at end of line, first unrecognized character is `p' bignum-dtoa.s:408: Warning: setting incorrect section attributes for .text._ZNK17double_conversion6Sin gle11SignificandEv .... .... mfbt/bignum-dtoa.s:3003: Error: unknown pseudo-op: `.cfi_sections' This of course with our ancient as 2.15: $as -v GNU assembler version 2.15 (powerpc-unknown-openbsd5.2) using BFD version 2.15 removing the 'prologue_end' part still lefts the 'unknown pseudo-op .cfi_sections' error. I've found llvm bug http://llvm.org/bugs/show_bug.cgi?id=11867 to look related, and i've tried with & without the following chunk (poke compiler with random sticks..) : --- tools/clang/lib/Basic/Targets.cpp.orig Tue Dec 25 10:48:34 2012 +++ tools/clang/lib/Basic/Targets.cpp Tue Dec 25 10:49:14 2012 @@ -1025,6 +1025,7 @@ class PPC32TargetInfo : public PPCTargetInfo { (public case llvm::Triple::Linux: case llvm::Triple::FreeBSD: case llvm::Triple::NetBSD: + case llvm::Triple::OpenBSD: SizeType = UnsignedInt; PtrDiffType = SignedInt; IntPtrType = SignedInt; That didnt help. Anyone tried building m-c on linux/ppc with clang ?
llvm.org/pr11867 looks unrelated. I would suggest reporting a bug in llvm with a preprocessed source file where clang produces an assembly with prologue_end and gcc does not. What assembler are you trying to use? gas supports . cfi_* for quiet some time now. If the one on openbsd doesn't support that, please open another bug about disabling it.
These are issues with LLVM and nothing to do Firefox. This bug report can be closed.
(In reply to brad from comment #2) > These are issues with LLVM and nothing to do Firefox. This bug report can be > closed. Then i'll close it when i'm able to build mozilla-central with clang on powerpc. In the meantime it's a tracking bug.

I think after 8 years this can be closed. If there's still an issue with a current clang/LLVM version, please reopen.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: