Build Goanna without SSE2?

Talk about code development, features, specific bugs, enhancements, patches, and similar things.
Forum rules
Please keep everything here strictly on-topic.
This board is meant for Pale Moon source code development related subjects only like code snippets, patches, specific bugs, git, the repositories, etc.

This is not for tech support! Please do not post tech support questions in the "Development" board!
Please make sure not to use this board for support questions. Please post issues with specific websites, extensions, etc. in the relevant boards for those topics.

Please keep things on-topic as this forum will be used for reference for Pale Moon development. Expect topics that aren't relevant as such to be moved or deleted.
roytam1

Build Goanna without SSE2?

Unread post by roytam1 » 2017-11-29, 03:39

I wonder if people can build Goanna without SSE2 using MSVC?

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35473
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: Build Goanna without SSE2?

Unread post by Moonchild » 2017-11-29, 08:59

Potentially, by adding -arch:IA32 to --enable-optimize={{flags}}
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

Mercury

Re: Build Goanna without SSE2?

Unread post by Mercury » 2017-11-29, 12:26

In theory, yes. From my experience with PM v26, the "--enable-optimize" option isn't quite enough. There's something deep in the build process that ignores it. I also set the "CL" variable. You can see my old .mozconfig file here. The key lines are:

Code: Select all

export CL="-O2 -arch:SSE"
ac_add_options --enable-optimize="-O2 -GL -GS- -fp:precise -Qfast_transcendentals -Qpar -arch:SSE"

roytam1

Re: Build Goanna without SSE2?

Unread post by roytam1 » 2017-11-29, 12:36

Mercury wrote:In theory, yes. From my experience with PM v26, the "--enable-optimize" option isn't quite enough. There's something deep in the build process that ignores it. I also set the "CL" variable. You can see my old .mozconfig file here. The key lines are:

Code: Select all

export CL="-O2 -arch:SSE"
ac_add_options --enable-optimize="-O2 -GL -GS- -fp:precise -Qfast_transcendentals -Qpar -arch:SSE"
Since pm26 is fx24esr based and pm27 is fx38esr based, I don't know if mozpeople will make use of SSE(2) with inline assembly or .asm/.s files. Some people says binary don't run on their Athlon XP/Pentium M but I can't test it as I don't have such systems now.

New Tobin Paradigm

Re: Build Goanna without SSE2?

Unread post by New Tobin Paradigm » 2017-11-29, 13:06

Application vs Platform unless you are talking about Quantum, This needs to be observed. Saying Pale Moon 27 is or was based on Firefox 38 is wholly incorrect because ONE Pale Moon 27's application specific code is drived from Pale Moon 26 which orginate mostly from Firefox 24esr but Pale Moon 27 builds on the platform we codenamed Tycho which is derived from Mozilla/gecko 38esr and TWO I physically obliterated Firefox 38's specific code from Tycho before I ported Pale Moon to it.

So you would properly say some platform components in Tycho are force built with sse2 as defined deeper in the codebase by the build files.

As an aside I have come to retroactively call the platform codebase that started life out as esr24, that Pale Moon 24 to 26 built on, the "liberation" codebase cause i like to name things.

Also see: http://xref.palemoon.org/palemoon-trunk/search?string=sse2

roytam1

Re: Build Goanna without SSE2?

Unread post by roytam1 » 2017-11-29, 14:14

If "based on fx38esr" hurts you, I can replace it with "based on xulrunner38esr" instead.

New Tobin Paradigm

Re: Build Goanna without SSE2?

Unread post by New Tobin Paradigm » 2017-11-29, 14:33

roytam1 wrote:If "based on fx38esr" hurts you, I can replace it with "based on xulrunner38esr" instead.
XUL Runner is merely an application Like Firefox, Basilisk, or Pale Moon (although nothing more than a stub it is treated as an application never the less). So that would also be incorrect. Dunno why people have such issues with the concept or take issue with me explaining it.. Maybe I should go back to obeying my soft-ban if no one is gonna find my unique insight and practical experience of any value. Nah go ahead of continue to cloud the issue and confuse people with misconceptions and falsehoods.

Peace.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35473
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: Build Goanna without SSE2?

Unread post by Moonchild » 2017-11-30, 17:58

@roytam1: please take the following as gospel from now on and stop preaching anything else to your congregation:

Pale Moon 24-26 is based on our diverging fork of Firefox 24ESR, which shares ancestral code with 24ESR (but is not equal to, because of previous application code development since 4.0), and is otherwise its own development.
Pale Moon 27 is based on Tycho, which is a hybrid of a collection of code from Mozilla 24 to 42 (roughly, more is back-ported from Mozilla code up to the current nightlies). Pale Moon's application code has nothing to do with Firefox 38, nor Xulrunner (which is just a platform shell application), nor ESR of any version of Firefox from that time.
Pale Moon 28 will be based on UXP, which will be a hybrid platform as well with no direct equal to Mozilla code at any specific point in time. More will be taken here from the Mozilla book to get a coherent unit of DOM+JS, discarding some of our previous work to move forward, but it will still have NO application code from Firefox-whatever version (unlike Basilisk).
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

roytam1

Re: Build Goanna without SSE2?

Unread post by roytam1 » 2017-12-05, 01:20

Moonchild wrote:Potentially, by adding -arch:IA32 to --enable-optimize={{flags}}
Alright I tried and it works even in emulator which has only 486-class CPU.

Fedor2

Re: Build Goanna without SSE2?

Unread post by Fedor2 » 2018-01-22, 22:53

roytam1 did you tried arch:sse?
Once i tried to build with it and it was failing.
you may want to know that arch:ia32 was still used on firefox 45, but on 52 are became sse2.

Locked