clang 3.8.0 amd64 targeting powerpc64 accepts -mlong-calls (instead of -mlongcall)

Mark Millard markmi at dsl-only.net
Fri Jan 15 18:11:49 UTC 2016


On 2016-Jan-15, at 9:08 AM, Roman Divacky <rdivacky at vlakno.cz> wrote:
> 
> On Thu, Jan 14, 2016 at 01:54:06AM -0800, Mark Millard wrote:
>> Context: projects/clang380-import based amd64 FreeBSD used to try building for powerpc64
>> 
>> In csu/powerpc64/Makefile I replaced:
>> 
>>> CFLAGS+=        -I${.CURDIR}/../common \
>>>                -I${.CURDIR}/../../libc/include \
>>>                -mlongcall
>> . . .
>>> CC:=            gcc
>>> COMPILER_TYPE:= gcc
>> 
>> with
>> 
>>> CFLAGS+=        -I${.CURDIR}/../common \
>>>                -I${.CURDIR}/../../libc/include \
>>>                -mlong-calls
>> . . .
>>> #CC:=            gcc
>>> #COMPILER_TYPE:= gcc
>> 
>> and clang 3.8.0 targeting powerpc64 sailed through and past it without the slightest complaint about it. (It later reported that 'soft float is not supported for ppc64' from the -msoft-float that is always used for libstand.)
> 
> That option only affects ARM. It doesn't have any effect on PPC64.
> 
> Roman

Are you sure? My preliminary evidence:

Clang 3.8.0 (and 3.7.1) commonly reports on unused arguments:

> # clang -mlong-calls main.c
> clang: warning: argument unused during compilation: '-mlong-calls'

but no such message mentioning long-calls is in the script file recorded during the activity. The recorded command lines for the relevant crt* files have the -mlong-calls in them.

Other messages about unused -isystem and -L arguments were recorded in the overall activity.

===
Mark Millard
markmi at dsl-only.net



More information about the freebsd-toolchain mailing list