* ANN: GCC 5.2.0 for OS X El Capitan
@ 2015-11-24 17:42 Simon Wright
2015-11-24 17:52 ` Simon Wright
0 siblings, 1 reply; 9+ messages in thread
From: Simon Wright @ 2015-11-24 17:42 UTC (permalink / raw)
This compiler (native only at time of writing) is on Sourceforge[1].
There's not a lot of added Ada goodness compared to 5.1.0, but the El
Capitan-related problem that David Botton recently encountered (see also
[2]) is fixed.
If you need PR66509 fixed and also arm-eabi support, put this compiler
on your PATH before the 5.1.0 compiler
(e.g. PATH=/opt/gcc-5.2.0/bin:/opt/gcc-5.1.0/bin:/the/rest/of/your/path)
I don't have a computer with Mavericks installed, any brave soul care to
give it a try?
[1]
https://sourceforge.net/projects/gnuada/files/GNAT_GCC%20Mac%20OS%20X/5.2.0/
[2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66509
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: ANN: GCC 5.2.0 for OS X El Capitan
2015-11-24 17:42 ANN: GCC 5.2.0 for OS X El Capitan Simon Wright
@ 2015-11-24 17:52 ` Simon Wright
2015-11-27 17:27 ` G.B.
0 siblings, 1 reply; 9+ messages in thread
From: Simon Wright @ 2015-11-24 17:52 UTC (permalink / raw)
Simon Wright <simon@pushface.org> writes:
> I don't have a computer with Mavericks installed, any brave soul care
> to give it a try?
Well, I guess I meant Yosemite - no need to go back to Mavericks!
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: ANN: GCC 5.2.0 for OS X El Capitan
2015-11-24 17:52 ` Simon Wright
@ 2015-11-27 17:27 ` G.B.
2015-11-27 18:19 ` Simon Wright
` (2 more replies)
0 siblings, 3 replies; 9+ messages in thread
From: G.B. @ 2015-11-27 17:27 UTC (permalink / raw)
On 24.11.15 18:52, Simon Wright wrote:
> Simon Wright <simon@pushface.org> writes:
>
>> I don't have a computer with Mavericks installed, any brave soul care
>> to give it a try?
>
> Well, I guess I meant Yosemite - no need to go back to Mavericks!
While trying to compile AWS (from git repo), I see complaints
about Intel MOV operands (OS 10.10.5, SDK version 10.10):
gcc -c -gnat2012 -gnatwcfijkmRuv -gnaty3abBcdefhiIklmnoOprstx -O2 -gnatn
-fno-common soap-message-reader.adb
/var/folders/zx/zm0q6b0n0zbdjwb___0wqrxc0000gv/T//ccF719Br.s:19124:suffix or
operands invalid for `movq'
compilation of soap-types.adb failed
gprbuild: *** compilation phase failed
make: *** [build-native] Error 4
With compiler options -save-temps and -v added in shared.gpr of AWS,
line 19124 has the first movq in
...
_soap__types__d:
LFB405:
pushq %r14
LCFI1041:
movq %xmm0, %r14
pushq %r13
LCFI1042:
movq %rdx, %r13
pushq %r12
...
The effect of -v:
COLLECT_GCC_OPTIONS='-mmacosx-version-min=10.10.5' '-c' '-gnatA'
'-gnat2012' '-gnatwcfijkmRuv' '-gnaty3abBcdefhiIklmnoOprstx'
'-save-temps' '-v' '-O2' '-gnatn' '-fno-common'
'-gnatec=/private/var/folders/zx/zm0q6b0n0zbdjwb___0wqrxc0000gv/T/GNAT-TEMP-000001.TMP'
'-gnatem=/private/var/folders/zx/zm0q6b0n0zbdjwb___0wqrxc0000gv/T/GNAT-TEMP-000002.TMP'
'-mtune=core2'
as -arch x86_64 -force_cpusubtype_ALL -o soap-types.o soap-types.s
soap-types.s:19124:suffix or operands invalid for `movq'
...
compilation of soap-types.adb failed
gprbuild: *** compilation phase failed
make: *** [build-native] Error 4
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: ANN: GCC 5.2.0 for OS X El Capitan
2015-11-27 17:27 ` G.B.
@ 2015-11-27 18:19 ` Simon Wright
2015-11-27 18:20 ` Simon Wright
2015-11-27 18:22 ` G.B.
2 siblings, 0 replies; 9+ messages in thread
From: Simon Wright @ 2015-11-27 18:19 UTC (permalink / raw)
"G.B." <bauhaus@futureapps.invalid> writes:
> While trying to compile AWS (from git repo), I see complaints
> about Intel MOV operands (OS 10.10.5, SDK version 10.10):
>
> gcc -c -gnat2012 -gnatwcfijkmRuv -gnaty3abBcdefhiIklmnoOprstx -O2
> -gnatn -fno-common soap-message-reader.adb
This compiles OK on El Capitan w/ GCC 5.2.0.
src/extended/aws-services-web_block-context.ads doesn't - line:106 says
pragma Suppress (Tampering_Check);
-- ?? Suppress Tampering_Check until O608-005 is fixed
Tampering_Check is a recent AdaCore change to do with container
optimisation[1].
Anyway, it seems that I need to warn people not to use this 5.2.0 on
earlier OS releases.
[1] http://www.adacore.com/developers/development-log/NF-74-O426-003-gnat/
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: ANN: GCC 5.2.0 for OS X El Capitan
2015-11-27 17:27 ` G.B.
2015-11-27 18:19 ` Simon Wright
@ 2015-11-27 18:20 ` Simon Wright
2015-11-27 18:22 ` G.B.
2 siblings, 0 replies; 9+ messages in thread
From: Simon Wright @ 2015-11-27 18:20 UTC (permalink / raw)
"G.B." <bauhaus@futureapps.invalid> writes:
> On 24.11.15 18:52, Simon Wright wrote:
>> Simon Wright <simon@pushface.org> writes:
>>
>>> I don't have a computer with Mavericks installed, any brave soul care
>>> to give it a try?
>>
>> Well, I guess I meant Yosemite - no need to go back to Mavericks!
>
> While trying to compile AWS (from git repo), I see complaints
> about Intel MOV operands (OS 10.10.5, SDK version 10.10):
I forgot to say, thanks for the report!
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: ANN: GCC 5.2.0 for OS X El Capitan
2015-11-27 17:27 ` G.B.
2015-11-27 18:19 ` Simon Wright
2015-11-27 18:20 ` Simon Wright
@ 2015-11-27 18:22 ` G.B.
2015-11-29 11:50 ` Simon Wright
2 siblings, 1 reply; 9+ messages in thread
From: G.B. @ 2015-11-27 18:22 UTC (permalink / raw)
On 27.11.15 18:27, G.B. wrote:
> On 24.11.15 18:52, Simon Wright wrote:
>> Simon Wright <simon@pushface.org> writes:
>>
>>> I don't have a computer with Mavericks installed, any brave soul care
>>> to give it a try?
>>
>> Well, I guess I meant Yosemite - no need to go back to Mavericks!
>
> While trying to compile AWS (from git repo), I see complaints
> about Intel MOV operands (OS 10.10.5, SDK version 10.10):
Apparently, GNAT GPL 2015 puts a movd where the other compiler
puts a movq (with an xmm register). The unit below reproduces
the error. (It is a self-contained excerpt from soap-types.ad?
of AWS.)
$ PATH=/Macintosh_HD/opt/gnat-fsf-5.2.0/bin:$PATH gcc -save-temps -c
fake.adb
fake.s:4958:suffix or operands invalid for `movq'
fake.s:4985:suffix or operands invalid for `movq'
with Ada.Finalization;
with Ada.Strings.Unbounded; use Ada.Strings.Unbounded;
package Fake is
type Ns_Object is record
Prefix : Unbounded_String;
Name : Unbounded_String;
Value : Unbounded_String;
end record;
type Tp_Object is abstract new Ada.Finalization.Controlled with record
Name : Unbounded_String;
Type_Name : Unbounded_String;
NS : Ns_Object;
end record;
No_Name_Space : constant Ns_Object :=
(Null_Unbounded_String,
Null_Unbounded_String,
Null_Unbounded_String);
XML_Double : aliased constant String := "xsd:double";
type XSD_Double is new Tp_Object with private;
function Like_D
(V : Long_Float;
Name : String := "item";
Type_Name : String := XML_Double;
NS : Ns_Object := No_Name_Space)
return XSD_Double;
private
type XSD_Double is new Tp_Object with
record
V : Long_Float;
end record;
end Fake;
package body Fake is
function Like_D
(V : Long_Float;
Name : String := "item";
Type_Name : String := XML_Double;
NS : Ns_Object := No_Name_Space)
return XSD_Double is
begin
return
(Ada.Finalization.Controlled
with To_Unbounded_String (Name), To_Unbounded_String (Type_Name),
NS, V);
end Like_D;
end Fake;
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: ANN: GCC 5.2.0 for OS X El Capitan
2015-11-27 18:22 ` G.B.
@ 2015-11-29 11:50 ` Simon Wright
2015-11-29 15:25 ` Simon Wright
0 siblings, 1 reply; 9+ messages in thread
From: Simon Wright @ 2015-11-29 11:50 UTC (permalink / raw)
"G.B." <bauhaus@futureapps.invalid> writes:
> Apparently, GNAT GPL 2015 puts a movd where the other compiler
> puts a movq (with an xmm register). The unit below reproduces
> the error. (It is a self-contained excerpt from soap-types.ad?
> of AWS.)
Compiling your package Fake on El Capitan, I get code like
movq %xmm0, %rdx
with all of GNAT GPL 2015, FSF GCC 5.1.0, and FSF GCC 5.2.0.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: ANN: GCC 5.2.0 for OS X El Capitan
2015-11-29 11:50 ` Simon Wright
@ 2015-11-29 15:25 ` Simon Wright
2015-12-02 14:55 ` G.B.
0 siblings, 1 reply; 9+ messages in thread
From: Simon Wright @ 2015-11-29 15:25 UTC (permalink / raw)
Simon Wright <simon@pushface.org> writes:
> "G.B." <bauhaus@futureapps.invalid> writes:
>
>> Apparently, GNAT GPL 2015 puts a movd where the other compiler
>> puts a movq (with an xmm register). The unit below reproduces
>> the error. (It is a self-contained excerpt from soap-types.ad?
>> of AWS.)
>
> Compiling your package Fake on El Capitan, I get code like
>
> movq %xmm0, %rdx
>
> with all of GNAT GPL 2015, FSF GCC 5.1.0, and FSF GCC 5.2.0.
errm .. and all compile successfully.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: ANN: GCC 5.2.0 for OS X El Capitan
2015-11-29 15:25 ` Simon Wright
@ 2015-12-02 14:55 ` G.B.
0 siblings, 0 replies; 9+ messages in thread
From: G.B. @ 2015-12-02 14:55 UTC (permalink / raw)
On 29.11.15 16:25, Simon Wright wrote:
> Simon Wright <simon@pushface.org> writes:
>
>> "G.B." <bauhaus@futureapps.invalid> writes:
>>
>>> Apparently, GNAT GPL 2015 puts a movd where the other compiler
>>> puts a movq (with an xmm register). The unit below reproduces
>>> the error. (It is a self-contained excerpt from soap-types.ad?
>>> of AWS.)
>>
>> Compiling your package Fake on El Capitan, I get code like
>>
>> movq %xmm0, %rdx
>>
>> with all of GNAT GPL 2015, FSF GCC 5.1.0, and FSF GCC 5.2.0.
>
> errm .. and all compile successfully.
>
Good news, and my mistake! I had XCode 6.2 and XCode 7.0 beta
installed, the former being selected. Switching to the latter,
I don't get an error any more. (Also, no more movd from FSF GNAT.)
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2015-12-02 14:55 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-24 17:42 ANN: GCC 5.2.0 for OS X El Capitan Simon Wright
2015-11-24 17:52 ` Simon Wright
2015-11-27 17:27 ` G.B.
2015-11-27 18:19 ` Simon Wright
2015-11-27 18:20 ` Simon Wright
2015-11-27 18:22 ` G.B.
2015-11-29 11:50 ` Simon Wright
2015-11-29 15:25 ` Simon Wright
2015-12-02 14:55 ` G.B.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox