Discussion in 'Pyra OS (Debian GNU/Linux)' started by Linux-SWAT, May 1, 2015.
What are the recommended flags ?
You can use the same as for Pandora.
Neonfpu and armv7
I would suggest not using -mfloat-abi=softfp or -mfloat-abi=soft
I noticed there are platform specific flags with -mtune=cortex-a15 Not entirely sure what is set when using this.
Noticed this as well: " -march=armv7ve is the armv7-a architecture with virtualization extensions." I believe the kernel I am using has these enabled... I don't know what benefit it would be to use them though.
-O2 -pipe -march=armv7ve -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -fPIC
Well I don't think it will hurt to use just armv7-a , not sure armv7ve has been used by any of us yet, so it's kind of untested and not sure it has any use outside of using it for virtualization purposes.
I'm not an expert on compiler flags by all means, just found some interesting things in that document.
For normal programs armv7ve will only give the divide instruction, so should be useful regardless if you have virtualization enabled in kernel or not. It should have no other effects as the remaining instructions are for hypervisor use, so gcc should not be using them anyway.
For fpu you can use -mfpu=neon-vfpv4 to utilize vfpv4 instructions (and not just vfpv3 instructions as with -mfpu=neon).
Thanks, here's the latest flags :
-O2 -pipe -march=armv7ve -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon-vfpv4 -fPIC
Hopefully this also includes integer division and the other extensions in the instruction set. But especially that, which could make a significant difference for some code.
EDIT: notaz beat me to it.
Using these flags (With exemption to -O2 over -O3) Dosbox seems to compile ok but Trashy says it's not faster than my early january build which was just basic Dosbox things. Perhaps MH-T has some ideas for compilation flags for the Pyra with dosbox? I'm happy to let MH-T / others into my IGEP0050 board to play
First, it depends what version you are compling. If you have at least svn revision 3846, than you already have my latest dynrec patch, otherwise you apply it yourself.
Second, arm dynrec is not selected automatically, so after running configure you must edit config.h to enable it. See the link in my signature for details.
Yeah done all that stuff. Oh well, i'll try turning the USE_OPENGL option off, maybe that'll do something
Some basic reading :
Separate names with a comma.