Re: The future of Linux32 builds and tests

Terrence Cole <[email protected]>
Newsgroups gmane.comp.mozilla.devel.seamonkey
Message-ID <CADE9bc9SHUEJWcEuQVjEVMf24+t7ZOMseHtKA7DMBGJi_LNwmg@mail.gmail.com>
On Mon, Oct 12, 2015 at 9:56 AM, Steve Fink <[email protected]> wrote:

> On 10/12/2015 08:21 AM, Ryan VanderMeulen wrote:
>
>> On 10/8/2015 1:01 PM, [email protected] wrote:
>>
>>> We recently disabled Linux32 talos testing on all trees.
>>>
>>> Going forward, the question remains, do we need to run Linux32 tests at
>>> all?  This would reduce the complexity of our configs, as well as
>>> significantly reduce our AWS bill. Do the linux32 test results provide
>>> significant differences from the ones we run on on linux64? I see three
>>> options going forward
>>>
>>> 1) Run linux32 builds and tests periodically
>>> 2) Turn off tests but run the builds and make it a Tier 2 platform
>>> 3) Turn off Linux32 builds + tests entirely
>>>
>>> Your data-driven input is sought,
>>>
>>> cheers,
>>> Kim
>>>
>>> Bugs of note
>>> Disable all 32-bit linux testing
>>> https://bugzilla.mozilla.org/show_bug.cgi?id=1209932
>>> Do we need linux32 talos?
>>> https://bugzilla.mozilla.org/show_bug.cgi?id=1204920
>>> Disable linux32 talos testing and reimage machines for windows testing
>>> https://bugzilla.mozilla.org/show_bug.cgi?id=1208449
>>>
>>>
>> Note that SM(arm) builds run on linux32 build slaves (and AFAIK, they
>> have to). Not sure where SM builds fit in with all of this, but I figured
>> it was at least worth explicitly calling out.
>>
>
> I don't *think* they have to, since they run fine on my local (linux64)
> box. But cross-compilation always confuses me.
>
> When I run it locally, the arm-sim build (aka SM(arm)) uses my 64-bit gcc
> with -m32 to generate a 32-bit JS shell whose JIT generates 32-bit ARM
> code, and then runs it via a 32-bit ARM simulator. (I think that rest of
> the shell would be fine if it were compiled as 64-bit, but the simulator
> part only works when compiled as 32-bit x86 code?)
>

32bit arches use a different Value packing format than 64bit. The JITs
assume at a very low level that Values (and values in general) have the
same layout and alignment requirements everywhere. As Steve noted, however,
cross compilation with -m32 works just fine.


> Like I said, cross-compilation is confusing, especially when you mix in
> JIT and a simulator.
>
> Also note that as of very recently there is an SM(arm64) build, which is
> 64-bit all the way through (including generating ARM64 code). But that does
> not replace the need for the 32-bit ARM simulator. Generally speaking, we
> can't just ditch 32-bit architectures entirely because we need to be able
> to run on 32-bit ARM devices for the foreseeable future.
>
>
> _______________________________________________
> dev-planning mailing list
> [email protected]
> https://lists.mozilla.org/listinfo/dev-planning
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.