From owner-freebsd-arm@FreeBSD.ORG Fri May 17 12:49:26 2013 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 27E96A08; Fri, 17 May 2013 12:49:26 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from nibbler.fubar.geek.nz (nibbler.fubar.geek.nz [199.48.134.198]) by mx1.freebsd.org (Postfix) with ESMTP id 0CC0EA74; Fri, 17 May 2013 12:49:25 +0000 (UTC) Received: from bender (176-35-57-122.xdsl.murphx.net [176.35.57.122]) by nibbler.fubar.geek.nz (Postfix) with ESMTPSA id 1A1495E1F1; Fri, 17 May 2013 12:39:50 +0000 (UTC) Date: Fri, 17 May 2013 13:39:27 +0100 From: Andrew Turner To: Tim Kientzle Subject: Re: clear_cache and clang (was Re: Git crash on EABI system.) Message-ID: <20130517133927.62575abe@bender> In-Reply-To: <6FEBBFCD-C698-48E6-B9CA-D9FCB6A5AD5A@freebsd.org> References: <51949698.80205@thieprojects.ch> <2290084B-D302-4489-BB01-817497901E2B@freebsd.org> <5195F2CA.2090103@thieprojects.ch> <6FEBBFCD-C698-48E6-B9CA-D9FCB6A5AD5A@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: freebsd-arm X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 May 2013 12:49:26 -0000 On Fri, 17 May 2013 08:22:14 -0400 Tim Kientzle wrote: > > On May 17, 2013, at 5:05 AM, Werner Thie wrote: > > > Tim > > > > Maybe you or somebody else can shed some light onto how compiler-rt > > is used for the ARM platform, specifically why am I getting a > > > > missing symbol __clear_cache > > I suspect it's somehow related to this (from libcompiler_rt/Makefile): > > # Don't build clear_cache on ARM with clang as it is a builtin there. > .if ${MACHINE_CPUARCH} != "arm" || ${COMPILER_TYPE} != "clang" > SRCF+= clear_cache > .endif > > Do you know what code in ctypes for Python is referring to > that symbol? There may be some oddity in how that symbol is > being referenced that's incompatible with the clang built-in. __clear_cache is a builtin function in clang and it will complain if we have a function with it's name because of this. There may be issues when linking with objects built with gcc, however I don't know the state of gcc from the ports tree. The only known working version of gcc for FreeBSD ARM EABI is in base. Andrew