Who's Online
64 user(s) are online (
33 user(s) are browsing
Forums )
Members: 0
Guests: 64
more...
Topic options
View mode
Newest First
X5000 optimized code compile
Just can't stay away
Joined: 2023/4/7 6:13Last Login
: 2/25 10:01
From Deutschland
Group:
Registered Users
It seems that code compiled with the flag "-mcpu=750" works fine under X5000, but it is not optimal since we are using the CPU G3. G4 7450 crashes understandably, of course, since the X5000 does not have an AtiVec unit. Is there a way to compile optimized for the X5000, and what should the flags look like?
MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE / AmigaOne x5000/40 AmigaOs4.1 FE
Re: X5000 optimized code compile
Just popping in
Joined: 2017/5/18 11:12Last Login
: 2/23 21:24
From Audruicq, France
Group:
Registered Users
-mcpu=e5500 maybe?
Re: X5000 optimized code compile
Amigans Defender
Joined: 2006/12/2 13:27Last Login
: Today 11:09
From Taranto, Italy
Group:
Staff members Moderators Registered Users
Did you try to add -mno-altivec?
i'm really tired...
Re: X5000 optimized code compile
Just popping in
Joined: 2022/11/8 15:30Last Login
: Today 8:11
From Backnang
Group:
Registered Users
-mcpu=e5500 crashed, but I am trying now with -mcpu=e5500 -mno-altivec, if this works. Just sent the test exe to Maijestroy (don't have an x5000 myselves, I got a x1000). We'll see if this works. Thanks for your help.
Re: X5000 optimized code compile
Just can't stay away
Joined: 2023/4/7 6:13Last Login
: 2/25 10:01
From Deutschland
Group:
Registered Users
@TheMagicSN
Quote:
TheMagicSN wrote:-mcpu=e5500 crashed, but I am trying now with -mcpu=e5500 -mno-altivec, if this works. Just sent the test exe to Maijestroy (don't have an x5000 myselves, I got a x1000). We'll see if this works. The Test.exe unfortunately still crashes but in the GR-log it looks like "libgcc.so" which causes the crash. Does "libgcc.so" have to be compiled with the same flag?
Crash log for task "GemRB"
Generated by GrimReaper 53.19
Crash occured in module libgcc . so at address 0x7EA5BB54
Type of crash : DSI ( Data Storage Interrupt ) exception
Alert number : 0x80000003
Register dump :
GPR ( General Purpose Registers ):
0 : EF7ED198 53939B30 00000002 00000000 5C59FAC4 01839 BF8 7EBA37CC 530EE000
8 : 00000003 00000001 00000000 00001CE9 00001D10 5501D550 53F23388 00000001
16 : 54E7D410 EF9A7E50 5AFD84F0 53F242DC 53F242DC 5341DEB8 5341DCB8 53939BE8
24 : 00000000 5341DCB8 00000000 5341DCB8 02440000 00000000 6E248CC4 6E240D80
FPR ( Floating Point Registers , NaN = Not a Number ):
0 : - nan 55 1.6905e-17 0.5
4 : 4.76837e-07 4.5036e+15 4.5036e+15 4.5036e+15
8 : - 2.75573e-07 2.48016e-05 0.157079 0.5
12 : 0 32768 - 8.78552e-53 35.0171
16 : - 1.31476e-288 1.53045e-219 1.36261e-216 3.49813e-247
20 : 1.41487e-262 2.81927e+192 - 5.79946e-144 2.64491e-152
24 : 2.04061e-256 - 1.0027e-152 - 4.86937e-250 4.74844e-250
28 : 1.81868e-294 5.93591e-66 6.57077e-182 8.92326e-248
FPSCR ( Floating Point Status and Control Register ): 0x82008000
SPRs ( Special Purpose Registers ):
Machine State ( msr ) : 0x0002F030
Condition ( cr ) : 0x53A5DDC0
Instruction Pointer ( ip ) : 0x7EA5BB54
Xtended Exception ( xer ) : 0x018407B0
Count ( ctr ) : 0x00000000
Link ( lr ) : 0x00000000
DSI Status ( dsisr ) : 0x01860BA0
Data Address ( dar ) : 0x00000000
680x0 emulated registers :
DATA : 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
ADDR : 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
FPU0 : 0 0 0 0
FPU4 : 0 0 0 0
Symbol info :
Instruction pointer 0x7EA5BB54 belongs to module "libgcc.so" ( HUNK / Kickstart )
Stack trace :
module Games : BetaTestGemRB / BG2 / libgcc . so at 0x7EA5BB54 ( section 0 @ 0x7E54 )
module Games : BetaTestGemRB / BG2 / libgcc . so at 0x7EA5BB2C ( section 0 @ 0x7E2C )
GemRB : _ZN5GemRB13ToggleLoggingEb ()+ 0x318 ( section 7 @ 0xE9A44 )
GemRB : main ()+ 0xc0 ( section 7 @ 0xB502C )
native kernel module newlib . library . kmod + 0x00002614
native kernel module newlib . library . kmod + 0x00003340
native kernel module newlib . library . kmod + 0x00003864
GemRB : _start ()+ 0x1e0 ( section 7 @ 0x1C3C )
native kernel module dos . library . kmod + 0x0002a458
native kernel module kernel + 0x0005c18c
native kernel module kernel + 0x0005c204
PPC disassembly :
7ea5bb4c : 93a10014 stw r29 , 20 ( r1 )
7ea5bb50 : 813f0000 lwz r9 , 0 ( r31 )
* 7ea5bb54 : 83830000 lwz r28 , 0 ( r3 )
7ea5bb58 : 2c090000 cmpwi r9 , 0
7ea5bb5c : 83be8000 lwz r29 ,- 32768 ( r30 )
System information :
CPU
Model : Freescale P5040 ( E5500 core ) V1.2
CPU speed : 2200 MHz
FSB speed : 800 MHz
Extensions :
Machine
Machine name : AmigaOne X5000 / 40
Memory : 2097152 KB
Extensions : bus . pci bus . pcie
Expansion buses
PCI / AGP
00 : 00.0 Vendor 0x1957 Device 0x0451
01 : 00.0 Vendor 0x1002 Device 0x67DF
Range 0 : 80000000 - 90000000 ( PREF . MEM )
Range 2 : 90000000 - 90200000 ( PREF . MEM )
Range 4 : 00001000 - 00001100 ( IO )
01 : 00.1 Vendor 0x1002 Device 0xAAF0
Range 0 : 90240000 - 90244000 ( MEM )
02 : 00.0 Vendor 0x1957 Device 0x0451
03 : 00.0 Vendor 0x111D Device 0x8092
04 : 01.0 Vendor 0x111D Device 0x8092
04 : 02.0 Vendor 0x111D Device 0x8092
04 : 03.0 Vendor 0x111D Device 0x8092
04 : 08.0 Vendor 0x111D Device 0x8092
04 : 10.0 Vendor 0x111D Device 0x8092
05 : 00.0 Vendor 0x12D8 Device 0xE111
07 : 00.0 Vendor 0x1102 Device 0x0012
Range 0 : A0000000 - A0004000 ( MEM )
Range 2 : A0004000 - A0008000 ( MEM )
Libraries
0x5c6d5668 : german . language V52.1
0x0239ecc2 : exec . library V54.30
0x6fef99a8 : cgxvideo . library V42.1
0x55396ae8 : pthreads . library V53.12
0x58c61bb8 : RAMDock . docky V51.3
0x5c225148 : GFXDock . docky V51.6
0x59161318 : CPUDock . docky V51.2
0x58c52928 : NetDock . docky V52.0
0x591cc228 : AK - GIF . datatype V54.14
0x5906ab18 : toolbar . gadget V53.6
0x58c52e28 : infodata . gadget V53.3
0x583c8f40 : fuelgauge . gadget V53.8
0x58c701a8 : piechart . gadget V53.1
0x592f30b8 : infowindow .class V53.15
0x59160990 : texteditor . gadget V53.32
0x59161e20 : tabbed . gadget V54.455
0x59160280 : select . gadget V53.7
0x58be7f00 : datesheet . gadget V1.9
0x5812b9a8 : sliderbar . gadget V53.22
0x583c8df8 : tickbox . gadget V53.14
0x58be7970 : time . gadget V1.14
0x583c8b80 : clock . gadget V53.1
0x583c8d60 : gradientslider . gadget V53.7
0x58be70f0 : anim . gadget V53.7
0x5c67db58 : progressbar . gadget V53.12
0x583c6c68 : X5000Temp . docky V50.2
0x5aeba0b0 : shared . image V2.1
0x5c67d958 : Separator . docky V53.2
0x58c0b024 : clipview . library V1.12
0x5c67da58 : SubDock . docky V53.1
0x583c80e0 : arexx .class V53.6
0x583c8044 : colorwheel . gadget V53.7
0x6e249e90 : slider . gadget V53.17
0x6e249d50 : getfont . gadget V53.11
0x6e336a30 : getfile . gadget V53.12
0x5b386dc8 : clicktab . gadget V53.51
0x5aee0e98 : screenblanker . library V53.7
0x6e249c10 : checkbox . gadget V53.13
0x58142760 : requester .class V53.20
0x6e249b70 : space . gadget V53.7
0x5af66a18 : chooser . gadget V53.22
0x6e249ad0 : penmap . image V53.6
0x6e249990 : bitmap . image V53.9
0x6e249a30 : integer . gadget V53.13
0x6e246cc8 : listbrowser . gadget V53.79
0x5b386270 : scroller . gadget V53.16
0x5aee1020 : string . gadget V53.24
0x5bcd8d14 : device . audio V6.2
0x5be4ca98 : filesave . audio V6.5
0x6e316bc8 : hda . audio V6.11
0x5bc27c94 : asl . library V53.54
0x5c00faa4 : usergroup . library V4.30
0x5c1974a8 : bsdsocket . library V4.321
0x6e294144 : xpkmaster . library V5.2
0x5bf00758 : usbhidgate . library V53.3
0x5ca23a5c : xadmaster . library V13.1
0x5ca47e6c : hid . usbfd V53.14
0x6e39b1cc : textclip . library V53.4
0x5ca2baf0 : button . gadget V53.22
0x5ca2bb90 : glyph . image V53.4
0x5c30e9e0 : window .class V54.14
0x5c357708 : popupmenu .class V53.2
0x5c30b308 : popupmenu . library V53.14
0x5ca2b910 : label . image V53.14
0x5ca2b7d0 : drawlist . image V53.3
0x5c357358 : layout . gadget V54.10
0x5c357430 : bevel . image V53.6
0x5ca473d8 : AK - PNG . datatype V54.15
0x5ca48484 : picture . datatype V53.10
0x5ca2eb00 : Picasso96API . library V54.18
0x5ca2c9c4 : mpega . library V2.4
0x5ca47360 : mathieeedoubbas . library V53.1
0x5c6cf620 : datatypes . library V54.15
0x5cadab7c : ft2 . library V53.2
0x6ff1780c : workbench . library V53.62
0x5c6b0750 : gadtools . library V53.8
0x5ca8ec48 : timezone . library V53.11
0x5ca2c3f8 : application . library V53.30
0x5cad2cfc : commodities . library V53.10
0x5cc478cc : icon . library V54.6
0x6ff13820 : z . library V53.9
0x5caa65e0 : iffparse . library V53.3
0x5dd44458 : version . library V53.18
0x6ffb8ecc : locale . library V54.2
0x6fef87ac : diskfont . library V53.13
0x6ff9cc18 : petunia . library V53.6
0x6ff9cb58 : diskcache . library V3.31
0x6ff06948 : dos . library V54.112
0x6ff13184 : usbprivate . library V53.22
0x6ff114bc : massstorage . usbfd V53.84
0x6ff1303c : hub . usbfd V53.11
0x6ff11428 : bootkeyboard . usbfd V52.3
0x6ff113a8 : bootmouse . usbfd V53.3
0x6ff112a8 : mounter . library V53.20
0x6fef9e7c : usbresource . library V53.22
0x6ff91518 : hunk . library V53.4
0x6fef9c84 : elf . library V54.1
0x6e8ae4d0 : intuition . library V54.28
0x6ff587a0 : keymap . library V53.9
0x6ff5a544 : nonvolatile . library V54.7
0x6ff7e9f0 : cybergraphics . library V43.0
0x6ff90420 : RadeonRX . chip V2.12
0x6ffa3420 : graphics . library V54.248
0x6fffe4f0 : layers . library V54.12
0x6ff50150 : rtg . library V54.90
0x6ff902a4 : PCIGraphics . card V53.18
0x6ffaa258 : newlib . library V53.80
0x6ff9f1ac : utility . library V54.2
0x6ffa8398 : expansion . library V53.1
0x5c56c1fe : rexxsyslib . library V53.4 ( Legacy )
Devices
0x5aeba834 : clipboard . device V53.5
0x5c3e2024 : serial . device V54.6
0x6ff7eb34 : ahi . device V6.2
0x5b920024 : p50x0_eth . device V52.6
0x5c1d42b4 : diskimage . device V53.4
0x6ee89d20 : usbsys . device V53.22
0x6ff91984 : p50x0sata . device V54.79
0x6ff918d8 : vsata . device V54.8
0x6ff91870 : ehci . usbhcd V53.26
0x6ff917d0 : ohci . usbhcd V53.22
0x6ff91730 : uhci . usbhcd V53.15
0x6ee89658 : console . device V53.105
0x6ff5a670 : ramdrive . device V54.1
0x6ff589ec : input . device V53.6
0x6fef83b4 : keyboard . device V53.12
0x6ff5a050 : timer . device V53.4
Tasks
rx_pm ( Waiting )
Stack : 0x6e8de000 - 0x6e8e6000 , pointer @ 0x6e8e5f40 ( Cookie OK )
Signals : SigRec 0x80000001 , SigWait 0x00000000
State : Task ( Waiting )
rx_gc ( Waiting )
Stack : 0x6e8ea000 - 0x6e8f2000 , pointer @ 0x6e8f1f50 ( Cookie OK )
Signals : SigRec 0x80000001 , SigWait 0x00000000
State : Task ( Waiting )
Exec Command and Control ( Waiting )
Stack : 0x6e850000 - 0x6e854000 , pointer @ 0x6e853f50 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000000
State : Task ( Waiting )
ClickToFront ( Waiting )
Stack : 0x58489004 - 0x58498ffc , pointer @ 0x58498ef0 ( Cookie OK )
Signals : SigRec 0xe000d000 , SigWait 0x00000100
State : Process ( Waiting )
input . device ( Waiting )
Stack : 0x6e8be000 - 0x6e8ce000 , pointer @ 0x6e8cdf00 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000000
State : Task ( Waiting )
P50x0 Ethernet ( Waiting )
Stack : 0x5b8b9000 - 0x5b8ba000 , pointer @ 0x5b8b9f20 ( Cookie OK )
Signals : SigRec 0x00001000 , SigWait 0x00000000
State : Task ( Waiting )
SFS DosList handler ( Waiting )
Stack : 0x60c89004 - 0x60c90ffc , pointer @ 0x60c90f20 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000000
State : Process ( Waiting )
USB stack ( Waiting )
Stack : 0x6e858000 - 0x6e85c000 , pointer @ 0x6e85bf20 ( Cookie OK )
Signals : SigRec 0xf800d000 , SigWait 0x00000000
State : Task ( Waiting )
EHCI Controller Task Unit 1 ( Waiting )
Stack : 0x6e39e000 - 0x6e3a6000 , pointer @ 0x6e3a5f10 ( Cookie OK )
Signals : SigRec 0xbe009000 , SigWait 0x00000000
State : Task ( Waiting )
EHCI Controller Task Unit 0 ( Waiting )
Stack : 0x6e3e6000 - 0x6e3ee000 , pointer @ 0x6e3edf10 ( Cookie OK )
Signals : SigRec 0xbe009000 , SigWait 0x00000000
State : Task ( Waiting )
p50x0sata . device Port 0 ( Waiting )
Stack : 0x6e826000 - 0x6e834a60 , pointer @ 0x6e834900 ( Cookie OK )
Signals : SigRec 0xc0007000 , SigWait 0x10000000
State : Task ( Waiting )
p50x0sata . device Port 1 ( Waiting )
Stack : 0x6e60a000 - 0x6e618a60 , pointer @ 0x6e618900 ( Cookie OK )
Signals : SigRec 0xc0007000 , SigWait 0x00000000
State : Task ( Waiting )
hid . usbfd ( Waiting )
Stack : 0x5bff7004 - 0x5bffeffc , pointer @ 0x5bffeea0 ( Cookie OK )
Signals : SigRec 0xe0000000 , SigWait 0x00000100
State : Process ( Waiting )
HID Mouse ( Waiting )
Stack : 0x5be72004 - 0x5be81ffc , pointer @ 0x5be81ef0 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Process ( Waiting )
ERDH4 / NGFileSystem 54.107 ( Waiting )
Stack : 0x5dd5b004 - 0x5dd62ffc , pointer @ 0x5dd62d60 ( Cookie OK )
Signals : SigRec 0xf0000000 , SigWait 0x00000100
State : Process ( Waiting )
ERDH2 / NGFileSystem 54.107 ( Waiting )
Stack : 0x5fb62004 - 0x5fb69ffc , pointer @ 0x5fb69d60 ( Cookie OK )
Signals : SigRec 0xf0000000 , SigWait 0x00000100
State : Process ( Waiting )
ERDH1 / NGFileSystem 54.107 ( Waiting )
Stack : 0x60c68004 - 0x60c6fffc , pointer @ 0x60c6fd60 ( Cookie OK )
Signals : SigRec 0xf0000000 , SigWait 0x00000100
State : Process ( Waiting )
ERDH0 / SmartFilesystem 1.293 ( Waiting )
Stack : 0x6e225004 - 0x6e22cffc , pointer @ 0x6e22ceb0 ( Cookie OK )
Signals : SigRec 0xe0000100 , SigWait 0x00000000
State : Process ( Waiting )
ERDH3 / SmartFilesystem 1.293 ( Waiting )
Stack : 0x5ea78004 - 0x5ea7fffc , pointer @ 0x5ea7feb0 ( Cookie OK )
Signals : SigRec 0xe0000100 , SigWait 0x00000000
State : Process ( Waiting )
reaper . task ( Waiting )
Stack : 0x5cba2004 - 0x5cba9ffc , pointer @ 0x5cba9e50 ( Cookie OK )
Signals : SigRec 0x00007000 , SigWait 0x00000000
State : Process ( Waiting )
ICD1 / CDFileSystem 53.8 ( Waiting )
Stack : 0x5bde2004 - 0x5bdf1ffc , pointer @ 0x5bdf1f20 ( Cookie OK )
Signals : SigRec 0x00000100 , SigWait 0x00000000
State : Process ( Waiting )
ICD0 / CDFileSystem 53.8 ( Waiting )
Stack : 0x5bf7a004 - 0x5bf89ffc , pointer @ 0x5bf89f20 ( Cookie OK )
Signals : SigRec 0x00000100 , SigWait 0x00000000
State : Process ( Waiting )
HID Consumer ( Waiting )
Stack : 0x5be5e004 - 0x5be6dffc , pointer @ 0x5be6df20 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Process ( Waiting )
hid . usbfd ( Waiting )
Stack : 0x5bfeb004 - 0x5bff2ffc , pointer @ 0x5bff2ea0 ( Cookie OK )
Signals : SigRec 0xe0000000 , SigWait 0x00000100
State : Process ( Waiting )
HID Keyboard ( Waiting )
Stack : 0x5c0d9004 - 0x5c0e8ffc , pointer @ 0x5c0e8f00 ( Cookie OK )
Signals : SigRec 0x90001000 , SigWait 0x00000000
State : Process ( Waiting )
hid . usbfd ( Waiting )
Stack : 0x5c003004 - 0x5c00affc , pointer @ 0x5c00aea0 ( Cookie OK )
Signals : SigRec 0xe0000000 , SigWait 0x00000100
State : Process ( Waiting )
HID Consumer ( Waiting )
Stack : 0x5bea6004 - 0x5beb5ffc , pointer @ 0x5beb5f20 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Process ( Waiting )
hid . usbfd ( Waiting )
Stack : 0x5bfdf004 - 0x5bfe6ffc , pointer @ 0x5bfe6ea0 ( Cookie OK )
Signals : SigRec 0xe0000000 , SigWait 0x00000100
State : Process ( Waiting )
HID Keyboard ( Waiting )
Stack : 0x5c094004 - 0x5c0a3ffc , pointer @ 0x5c0a3f00 ( Cookie OK )
Signals : SigRec 0x90001000 , SigWait 0x00000000
State : Process ( Waiting )
HID Mouse ( Waiting )
Stack : 0x5beba004 - 0x5bec9ffc , pointer @ 0x5bec9ef0 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Process ( Waiting )
RAM / ram - handler 54.24 ( Waiting )
Stack : 0x5cb15004 - 0x5cb18ffc , pointer @ 0x5cb18d40 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000100
State : Process ( Waiting )
IDF1 / FastFileSystem 53.2 ( Waiting )
Stack : 0x5bd2a004 - 0x5bd39ffc , pointer @ 0x5bd39ed0 ( Cookie OK )
Signals : SigRec 0xa8000100 , SigWait 0x00000000
State : Process ( Waiting )
IDF0 / FastFileSystem 53.2 ( Waiting )
Stack : 0x5bd77004 - 0x5bd86ffc , pointer @ 0x5bd86ed0 ( Cookie OK )
Signals : SigRec 0xa8000100 , SigWait 0x00000000
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x53c28004 - 0x53c37ffc , pointer @ 0x53c37e20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
dos_filedir_notify ( Waiting )
Stack : 0x6e255004 - 0x6e259ffc , pointer @ 0x6e258eb0 ( Cookie OK )
Signals : SigRec 0x40001000 , SigWait 0x80000000
State : Process ( Waiting )
RANDOM / Random - Handler 52.1 ( Waiting )
Stack : 0x5bcdd004 - 0x5bcecffc , pointer @ 0x5bcecef0 ( Cookie OK )
Signals : SigRec 0x00000100 , SigWait 0x00000000
State : Process ( Waiting )
URL / launch - handler 53.39 ( Waiting )
Stack : 0x5c0fd004 - 0x5c177ffc , pointer @ 0x5c173fa0 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000100
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x5b075004 - 0x5b084ffc , pointer @ 0x5b084e20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x590a1004 - 0x590b0ffc , pointer @ 0x590b0e20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x59194004 - 0x591a3ffc , pointer @ 0x591a3e20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x591ec004 - 0x591fbffc , pointer @ 0x591fbe20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x59265004 - 0x59274ffc , pointer @ 0x59274e20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x59363004 - 0x59372ffc , pointer @ 0x59372e20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x58ca5004 - 0x58cb4ffc , pointer @ 0x58cb4e20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x58445004 - 0x58454ffc , pointer @ 0x58454e20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x58816004 - 0x58825ffc , pointer @ 0x58825e20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x580ce004 - 0x580ddffc , pointer @ 0x580dde20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x5814b004 - 0x5815affc , pointer @ 0x5815ae20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
AUDIO / AHI - Handler 6.2 ( Waiting )
Stack : 0x5bfc7004 - 0x5bfd7004 , pointer @ 0x5bfd6ed0 ( Cookie OK )
Signals : SigRec 0x00000100 , SigWait 0x00000000
State : Process ( Waiting )
ENV / env - handler 54.18 ( Waiting )
Stack : 0x5caf1004 - 0x5caf8ffc , pointer @ 0x5caf8ef0 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000100
State : Process ( Waiting )
APPDIR / appdir - handler 54.17 ( Waiting )
Stack : 0x5cb39004 - 0x5cb3fffc , pointer @ 0x5cb3fec0 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000100
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x5cc0e004 - 0x5cc15ffc , pointer @ 0x5cc15e20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
RAW / con - handler 53.82 ( Waiting )
Stack : 0x5cc32004 - 0x5cc39ffc , pointer @ 0x5cc39e20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
CON / con - handler 53.82 ( Waiting )
Stack : 0x5cc56004 - 0x5cc5dffc , pointer @ 0x5cc5de20 ( Cookie OK )
Signals : SigRec 0xa0000100 , SigWait 0x00000000
State : Process ( Waiting )
dos_nbmd_process ( Waiting )
Stack : 0x6e276004 - 0x6e279ffc , pointer @ 0x6e279f30 ( Cookie OK )
Signals : SigRec 0x00001100 , SigWait 0x00000000
State : Process ( Waiting )
dos_lock_handler ( Waiting )
Stack : 0x6e27e004 - 0x6e281ffc , pointer @ 0x6e281f00 ( Cookie OK )
Signals : SigRec 0x00001100 , SigWait 0x00000000
State : Process ( Waiting )
RexxMaster ( Waiting )
Stack : 0x5bcb0004 - 0x5bcbfffc , pointer @ 0x5bcbfec0 ( Cookie OK )
Signals : SigRec 0xc0000000 , SigWait 0x00000100
State : Process ( Waiting )
diskimage . device unit 1 ( Waiting )
Stack : 0x5bd0a004 - 0x5bd1dffc , pointer @ 0x5bd1dc50 ( Cookie OK )
Signals : SigRec 0xc0000000 , SigWait 0x00000100
State : Process ( Waiting )
diskimage . device unit 0 ( Waiting )
Stack : 0x5bd57004 - 0x5bd6affc , pointer @ 0x5bd6ac50 ( Cookie OK )
Signals : SigRec 0xc0000000 , SigWait 0x00000100
State : Process ( Waiting )
diskimage . device unit 5 ( Waiting )
Stack : 0x5bdb3004 - 0x5bdc6ffc , pointer @ 0x5bdc6c50 ( Cookie OK )
Signals : SigRec 0xc0000000 , SigWait 0x00000100
State : Process ( Waiting )
diskimage . device unit 4 ( Waiting )
Stack : 0x5be36004 - 0x5be49ffc , pointer @ 0x5be49c50 ( Cookie OK )
Signals : SigRec 0xc0000000 , SigWait 0x00000100
State : Process ( Waiting )
TEXTCLIP / textclip - handler 53.4 ( Waiting )
Stack : 0x5c1b0004 - 0x5c1bfffc , pointer @ 0x5c1bfec0 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000100
State : Process ( Waiting )
Bildschirmschoner - Bibliothek . ( Waiting )
Stack : 0x58b85004 - 0x58b95ffc , pointer @ 0x58b95f00 ( Cookie OK )
Signals : SigRec 0xb4001000 , SigWait 0x00000100
State : Process ( Waiting )
compose . task ( Waiting )
Stack : 0x5b403000 - 0x5b40b000 , pointer @ 0x5b40af30 ( Cookie OK )
Signals : SigRec 0x00000021 , SigWait 0x00000000
State : Task ( Waiting )
Workbench ( Waiting )
Stack : 0x5b888004 - 0x5b897ffc , pointer @ 0x5b897e50 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000100
State : Process ( Waiting )
Workbench DosList Notify ( Waiting )
Stack : 0x5aee8004 - 0x5aef7ffc , pointer @ 0x5aef7f40 ( Cookie OK )
Signals : SigRec 0x00003000 , SigWait 0x00000100
State : Process ( Waiting )
serial . device ( Waiting )
Stack : 0x59316000 - 0x5931e000 , pointer @ 0x5931df30 ( Cookie OK )
Signals : SigRec 0x7e000000 , SigWait 0x00000000
State : Task ( Waiting )
ramlib ( Waiting )
Stack : 0x5cb60004 - 0x5cb78ffc , pointer @ 0x5cb78f20 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Process ( Waiting )
ContextMenus Command Dispatcher ( Waiting )
Stack : 0x554c5004 - 0x554d4ffc , pointer @ 0x554d4f30 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Process ( Waiting )
texteditor . gadget Clipboard Server ( Waiting )
Stack : 0x57257004 - 0x5726fffc , pointer @ 0x5726ff00 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000100
State : Process ( Waiting )
string . gadget server ( Waiting )
Stack : 0x5aec0004 - 0x5aecfffc , pointer @ 0x5aecfdb0 ( Cookie OK )
Signals : SigRec 0x40000000 , SigWait 0x00000100
State : Process ( Waiting )
Workbench Clipboard Server ( Waiting )
Stack : 0x5af6d004 - 0x5af7cffc , pointer @ 0x5af7cef0 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000100
State : Process ( Waiting )
AmiDock ( Waiting )
Stack : 0x58167004 - 0x58176ffc , pointer @ 0x58176740 ( Cookie OK )
Signals : SigRec 0x00000100 , SigWait 0x00200000
State : Process ( Waiting )
NotificationServer ( Waiting )
Stack : 0x59377004 - 0x59396ffc , pointer @ 0x59396b10 ( Cookie OK )
Signals : SigRec 0xbc001000 , SigWait 0x00000000
State : Process ( Waiting )
TCP / IP Control ( Waiting )
Stack : 0x5b473004 - 0x5b567ffc , pointer @ 0x5b567dc0 ( Cookie OK )
Signals : SigRec 0xf8009080 , SigWait 0x00000000
State : Process ( Waiting )
TimeGuard ( Waiting )
Stack : 0x59322004 - 0x59331ffc , pointer @ 0x59331e00 ( Cookie OK )
Signals : SigRec 0xf0001000 , SigWait 0x00000100
State : Process ( Waiting )
hub . usbfd ( Waiting )
Stack : 0x6e35e004 - 0x6e365ffc , pointer @ 0x6e365eb0 ( Cookie OK )
Signals : SigRec 0x30000000 , SigWait 0x00000000
State : Task ( Waiting )
hub . usbfd ( Waiting )
Stack : 0x6e36a004 - 0x6e371ffc , pointer @ 0x6e371eb0 ( Cookie OK )
Signals : SigRec 0x30000000 , SigWait 0x00000000
State : Task ( Waiting )
Clock ( Waiting )
Stack : 0x58cc1004 - 0x58cd0ffc , pointer @ 0x58cd0820 ( Cookie OK )
Signals : SigRec 0x6e001000 , SigWait 0x00000000
State : Process ( Waiting )
DigiClock ( Waiting )
Stack : 0x592c9004 - 0x592d8ffc , pointer @ 0x592d8120 ( Cookie OK )
Signals : SigRec 0xe0001000 , SigWait 0x00000100
State : Process ( Waiting )
vsata disk changer ( Waiting )
Stack : 0x6e3ee000 - 0x6e3fca60 , pointer @ 0x6e3fc9b0 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000000
State : Task ( Waiting )
Mounter GUI ( Waiting )
Stack : 0x5c240004 - 0x5c253ffc , pointer @ 0x5c253e10 ( Cookie OK )
Signals : SigRec 0x80007000 , SigWait 0x00000000
State : Process ( Waiting )
New Process ( Waiting )
Stack : 0x53564004 - 0x5374cffc , pointer @ 0x5374cd90 ( Cookie OK )
Signals : SigRec 0x00000010 , SigWait 0x00000000
State : Process ( Waiting )
Sys : C / IconX ( Waiting )
Stack : 0x53c3c004 - 0x53e24ffc , pointer @ 0x53e24ad0 ( Cookie OK )
Signals : SigRec 0x00000100 , SigWait 0x00000000
State : Process ( Waiting )
ContextMenus ( Waiting )
Stack : 0x58461004 - 0x58470ffc , pointer @ 0x58470c90 ( Cookie OK )
Signals : SigRec 0xe0001000 , SigWait 0x00000100
State : Process ( Waiting )
TCP / IP Superserver ( Waiting )
Stack : 0x5b56c004 - 0x5b660ffc , pointer @ 0x5b6609f0 ( Cookie OK )
Signals : SigRec 0xd0000080 , SigWait 0x00000000
State : Process ( Waiting )
New Process ( Waiting )
Stack : 0x54639004 - 0x54821ffc , pointer @ 0x54821d90 ( Cookie OK )
Signals : SigRec 0x00000010 , SigWait 0x00000000
State : Process ( Waiting )
Sys : C / IconX ( Waiting )
Stack : 0x5b18d004 - 0x5b375ffc , pointer @ 0x5b375ad0 ( Cookie OK )
Signals : SigRec 0x00000100 , SigWait 0x00000000
State : Process ( Waiting )
application . library messageserver ( Waiting )
Stack : 0x5c6d1000 - 0x5c6d1fa0 , pointer @ 0x5c6d1f10 ( Cookie OK )
Signals : SigRec 0xc0000000 , SigWait 0x00000000
State : Task ( Waiting )
ScreenBlankerEngine ( Waiting )
Stack : 0x58832004 - 0x58841ffc , pointer @ 0x58841c00 ( Cookie OK )
Signals : SigRec 0xd8001000 , SigWait 0x00000100
State : Process ( Waiting )
TCP / IP Configuration ( Waiting )
Stack : 0x5b665004 - 0x5b759ffc , pointer @ 0x5b759e10 ( Cookie OK )
Signals : SigRec 0xf8003000 , SigWait 0x00000000
State : Process ( Waiting )
AsyncWB ( Waiting )
Stack : 0x580fe004 - 0x5810dffc , pointer @ 0x5810de90 ( Cookie OK )
Signals : SigRec 0xc0001000 , SigWait 0x00000100
State : Process ( Waiting )
´ IPrefs ª ( Waiting )
Stack : 0x5c657004 - 0x5c666ffc , pointer @ 0x5c666a20 ( Cookie OK )
Signals : SigRec 0x0000f000 , SigWait 0x00000000
State : Process ( Waiting )
clipview . library server ( Waiting )
Stack : 0x59137004 - 0x59156ffc , pointer @ 0x59156df0 ( Cookie OK )
Signals : SigRec 0xd8003000 , SigWait 0x00000000
State : Process ( Waiting )
InfoWB ( Waiting )
Stack : 0x59281004 - 0x59290ffc , pointer @ 0x59290c90 ( Cookie OK )
Signals : SigRec 0xf8001000 , SigWait 0x00000100
State : Process ( Waiting )
select . gadget prefs ( Waiting )
Stack : 0x56f29004 - 0x56f38ffc , pointer @ 0x56f38ca0 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Process ( Waiting )
CaBoom ( Waiting )
Stack : 0x59219004 - 0x59228ffc , pointer @ 0x59228c20 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000100
State : Process ( Waiting )
DefIcons ( Waiting )
Stack : 0x580ea004 - 0x580f9ffc , pointer @ 0x580f9db0 ( Cookie OK )
Signals : SigRec 0x80009000 , SigWait 0x00000100
State : Process ( Waiting )
TCP / IP Log ( Waiting )
Stack : 0x5b75e004 - 0x5b852ffc , pointer @ 0x5b852f00 ( Cookie OK )
Signals : SigRec 0x80003000 , SigWait 0x00000000
State : Process ( Waiting )
ConClip ( Waiting )
Stack : 0x5c1f0004 - 0x5c1ffffc , pointer @ 0x5c1ffeb0 ( Cookie OK )
Signals : SigRec 0x80000000 , SigWait 0x00000000
State : Process ( Waiting )
USB stack Process ( Waiting )
Stack : 0x5c26c004 - 0x5c27bffc , pointer @ 0x5c27bee0 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Process ( Waiting )
MassStorage Notifier ( Waiting )
Stack : 0x6e835000 - 0x6e83cd00 , pointer @ 0x6e83cc70 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Task ( Waiting )
DST watcher ( Waiting )
Stack : 0x5c613004 - 0x5c622ffc , pointer @ 0x5c622f10 ( Cookie OK )
Signals : SigRec 0xc0000000 , SigWait 0x00000000
State : Process ( Waiting )
hub . usbfd ( Waiting )
Stack : 0x6e30e004 - 0x6e315ffc , pointer @ 0x6e315eb0 ( Cookie OK )
Signals : SigRec 0x30000000 , SigWait 0x00000000
State : Task ( Waiting )
hub . usbfd ( Waiting )
Stack : 0x6e2f2004 - 0x6e2f9ffc , pointer @ 0x6e2f9eb0 ( Cookie OK )
Signals : SigRec 0x30000000 , SigWait 0x00000000
State : Task ( Waiting )
hub . usbfd ( Waiting )
Stack : 0x6e31e004 - 0x6e325ffc , pointer @ 0x6e325eb0 ( Cookie OK )
Signals : SigRec 0x30000000 , SigWait 0x00000000
State : Task ( Waiting )
DMA2 Channel 4 Handler ( Waiting )
Stack : 0x6e84c000 - 0x6e850000 , pointer @ 0x6e84fee0 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Task ( Waiting )
DMA1 Channel 4 Handler ( Waiting )
Stack : 0x6e868000 - 0x6e86c000 , pointer @ 0x6e86bee0 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Task ( Waiting )
DMA2 Channel 3 Handler ( Waiting )
Stack : 0x6e864000 - 0x6e868000 , pointer @ 0x6e867ee0 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Task ( Waiting )
DMA1 Channel 3 Handler ( Waiting )
Stack : 0x6e860000 - 0x6e864000 , pointer @ 0x6e863ee0 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Task ( Waiting )
DMA2 Channel 2 Handler ( Waiting )
Stack : 0x6e85c000 - 0x6e860000 , pointer @ 0x6e85fee0 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Task ( Waiting )
DMA1 Channel 2 Handler ( Waiting )
Stack : 0x6e8da000 - 0x6e8de000 , pointer @ 0x6e8ddee0 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Task ( Waiting )
DMA2 Channel 1 Handler ( Waiting )
Stack : 0x6e8d6000 - 0x6e8da000 , pointer @ 0x6e8d9ee0 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Task ( Waiting )
DMA1 Channel 1 Handler ( Waiting )
Stack : 0x6e8d2000 - 0x6e8d6000 , pointer @ 0x6e8d5ee0 ( Cookie OK )
Signals : SigRec 0x80001000 , SigWait 0x00000000
State : Task ( Waiting )
Background CLI [ GemRB ] ( Crashed )
Stack : 0x53751004 - 0x53939ffc , pointer @ 0x53939b30 ( Cookie OK )
Signals : SigRec 0x00000010 , SigWait 0x00000110
State : Process ( Crashed )
Mounter Task ( Waiting )
Stack : 0x6e83d000 - 0x6e84ba60 , pointer @ 0x6e84b970 ( Cookie OK )
Signals : SigRec 0xb0001000 , SigWait 0x00000000
State : Task ( Waiting )
Mounter Companion Process ( Waiting )
Stack : 0x5c258004 - 0x5c267ffc , pointer @ 0x5c267f40 ( Cookie OK )
Signals : SigRec 0x80003000 , SigWait 0x00000000
State : Process ( Waiting )
ramlib . support ( Waiting )
Stack : 0x5cb85004 - 0x5cb9dffc , pointer @ 0x5cb9df00 ( Cookie OK )
Signals : SigRec 0x80005000 , SigWait 0x00000000
State : Process ( Waiting )
ELF Collector ( Waiting )
Stack : 0x60c74004 - 0x60c84ffc , pointer @ 0x60c84e70 ( Cookie OK )
Signals : SigRec 0x00000100 , SigWait 0x00000000
State : Process ( Waiting )
dos_signal_server ( Waiting )
Stack : 0x6e25e004 - 0x6e261ffc , pointer @ 0x6e261f20 ( Cookie OK )
Signals : SigRec 0x0000f000 , SigWait 0x00000000
State : Process ( Waiting )
FuelGauge ( Waiting )
Stack : 0x590bd004 - 0x590d0ffc , pointer @ 0x590d0c00 ( Cookie OK )
Signals : SigRec 0xb5008000 , SigWait 0x00000100
State : Process ( Waiting )
appdir envarc manager ( Waiting )
Stack : 0x5cb25004 - 0x5cb2cffc , pointer @ 0x5cb2bb40 ( Cookie OK )
Signals : SigRec 0x00000100 , SigWait 0x00000000
State : Process ( Waiting )
CPUDock_idleTask ( Ready )
Stack : 0x5bc38000 - 0x5bc3a000 , pointer @ 0x5bc39f60 ( Cookie OK )
Signals : SigRec 0x40000000 , SigWait 0x00000000
State : Task ( Ready )
idle . task ( Ready )
Stack : 0x6ff7f000 - 0x6ff80000 , pointer @ 0x6ff7ffc0 ( Cookie OK )
Signals : SigRec 0x00000000 , SigWait 0x00000000
State : Task ( Ready )
Does anyone have any idea what is going wrong here?
MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE / AmigaOne x5000/40 AmigaOs4.1 FE
Re: X5000 optimized code compile
Just popping in
Joined: 2022/11/8 15:30Last Login
: Today 8:11
From Backnang
Group:
Registered Users
I do not think libgcc.so is the problem but simply that the setting did not work. And libgcc.so is not compiled by me and for all the other versions (x1000/ Sam440/Sam460 Versions) working fine. All use the same libgcc.so (so library from os). Sounds to me we have to go back to -mcpu=750 for x5000 which works.
Re: X5000 optimized code compile
Quite a regular
Joined: 2021/4/23 7:00Last Login
: Today 11:33
From Central Bohemia, Czech Republic
Group:
Registered Users
@TheMagicSN I have no X5000, so I cannot test it. You can try also -mcpu=e5500 -mno-powerpc64
AmigaOS3: Amiga 1200AmigaOS4: Micro A1-C, AmigaOne XE, Pegasos II, Sam440ep, Sam440ep-flex, AmigaOne X1000MorphOS: Efika 5200b, Pegasos I, Pegasos II, Powerbook, Mac Mini, iMac, Powermac Quad
Re: X5000 optimized code compile
Just popping in
Joined: 2018/3/1 21:08Last Login
: Today 7:31
From italy
Group:
Registered Users
IMHO if you want avoid specific binaries for specific cpus, or you want avoid dinamic runtime code paths for specific cpus, maybe the best practice is to use following gcc switches to generate code for general OS4 use, considering also Amiga classic 1200/4000 accellerators -mcpu=604e -mtune=604e or use standard base code with specific tuning for superscalar cpus and their caches -mcpu=604e -mtune=604e/7400/8540/etc.. With a focus on Amiga systems, PowerPC ISA is the same for all PowerPC family, there are very few instructions different and all them are not so much revelant for size/speed code. Maybe the most revelant is the ISEL instruction to avoid jumps, but it works only on e5500/440 cpu (Power ISA v2.06) For G4 specific code of course you can use -mcpu=7400 -mtune=7400 -maltivec -mabi=altivec but in this case your code will run only on G4, if altivec code is generated. One switch I suggest to use always is -fomit-frame-pointer to free one register and use it for calculations Last, I use always -O3 to highly optimize code and -O2 if I want to read generated assembler against C code
Edited by flash on 2025/2/25 15:44:13
Memento audere semper!
Re: X5000 optimized code compile
Just popping in
Joined: 2022/11/8 15:30Last Login
: Today 8:11
From Backnang
Group:
Registered Users
In the case of the program i do 604e is too slow to run it. I already use -Ofast which is beyond-O3. Using -mcpu=750 improved speed on G3 systems (WarpOS exe, not os4) a lot so i wondered if for other Cpu targets speedup can also be reached. Altivec specific code is not used. I will try the no 64 bit thing. In worst case i will go back to -mcpu=750.
Re: X5000 optimized code compile
Posted on:
2/26 10:24
#10
Just popping in
Joined: 2018/3/1 21:08Last Login
: Today 7:31
From italy
Group:
Registered Users
@TheMagicSN if you look inside asm code generated with -mcpu=750 and compare it with code generated by -mcpu=604e, you'll see almost no change in instructions used. What should do a major difference is -mtune parameter and its instrucion rescheduling for supercalar cpus, allowing more instruction execution in one clock cycle, and caches size. At least these are results of my experiments. So IMHO for standard apps should be better use common codebase granted by -mcpu=604e and a adopt a rescheduling for specific target with -mtune=7400 just as example. The best solution is to implement a runtime different code path for different cpus, but I know it's quite complex.
Re: X5000 optimized code compile
Posted on:
2/26 12:25
#11
Just popping in
Joined: 2022/11/8 15:30Last Login
: Today 8:11
From Backnang
Group:
Registered Users
Okay, -mcpu=e5500 -mno-altivec -mno-powerpc64 worked
According to my tester on the x5000 we are now at (though he also modified some settings) 29-30 fps in 1024x768 with Baldur's Gate 2 (30 fps is the max speed of the engine, so there might be potential for higher speed theoretically).
Re: X5000 optimized code compile
Posted on:
Yesterday 6:51
#12
Just popping in
Joined: 2022/1/18 6:29Last Login
: Yesterday 6:55
From California
Group:
Registered Users
@flash It's a bit off-topic, but since the question has been answered for the X5000 and since you seem to have some experience with the subject, I've always wondered which would be the best option for the X1000. There's no "-mcpu=pa6t" option, so which of the options that are available would be the best?
Re: X5000 optimized code compile
Posted on:
Yesterday 11:41
#13
Just popping in
Joined: 2022/11/8 15:30Last Login
: Today 8:11
From Backnang
Group:
Registered Users
At my knowledge that should be -mcpu=7400 -maltivec (Altivec only used if vectors are used in case of GemRB they aren’t)
Re: X5000 optimized code compile
Posted on:
Yesterday 13:30
#14
Quite a regular
Joined: 2021/4/23 7:00Last Login
: Today 11:33
From Central Bohemia, Czech Republic
Group:
Registered Users
@TheMagicSN
Quote:
TheMagicSN wrote:At my knowledge that should be -mcpu=7400 -maltivec (Altivec only used if vectors are used in case of GemRB they aren’t) I also suggest to try:
-G5 -mno-powerpc64 , or simply
-G5 ?
I can test on weekend.
AltiVec instruction are used also with gcc auto-vectotization feature, it is no need for programming with vectors.
For example
-maltivec -O3 or
-maltivec -ftree-vectorize automatically uses AltiVec, if there are suitable loops.
AmigaOS3: Amiga 1200AmigaOS4: Micro A1-C, AmigaOne XE, Pegasos II, Sam440ep, Sam440ep-flex, AmigaOne X1000MorphOS: Efika 5200b, Pegasos I, Pegasos II, Powerbook, Mac Mini, iMac, Powermac Quad
Re: X5000 optimized code compile
Posted on:
Today 1:57
#15
Quite a regular
Joined: 2021/12/20 2:52Last Login
: Today 1:56
From UK
Group:
Registered Users
@walkero Should we make a pinned thread / guide for optimised gcc flags for the different targets?
If liberty means anything at all, it means the right to tell people what they do not want to hear. George Orwell.
Re: X5000 optimized code compile
Posted on:
Today 6:11
#16
Just popping in
Joined: 2018/3/1 21:08Last Login
: Today 7:31
From italy
Group:
Registered Users
@msteed For X1000 you can go with this -mcpu=7400 -mtune=7400 -maltivec -mabi=altivec -fomit-frame-pointer -O3 but if your code is executed on different cpus (without Altivec) it will crash. So you can go with conditional compilation and build binaries for specific models or use runtime dinamic codepath for highly optimized specific code, just like altivec or spe units. If you want produce a good job you need to go with assembler or lowlevel C code using intrinsics for SIMD. For SIMD you have to rethink the whole algorithm and for loops go with steps of multiple of 4 (for altivec). Autovectorization can't do miracles, maybe with modern IA you can ask for a help rearranging code. I don't know -Ofast GCC switch and need to go inside it further.
Re: X5000 optimized code compile
Posted on:
Today 6:29
#17
Just popping in
Joined: 2022/11/8 15:30Last Login
: Today 8:11
From Backnang
Group:
Registered Users
-Ofast is Basically a shortcut for -O3 -fomit-frame-pointer -ffast-math -fno-math-errno -fno-trapping-math (Possibly some other optimization options not sure what is all included but the ones above are). Not all code works with -Ofast some code breaks but GemRB definitely works with it ;) What is this tune option btw? I use most the options you list above for x1000 but not the tune one
Re: X5000 optimized code compile
Posted on:
Today 6:35
#18
Just popping in
Joined: 2022/11/8 15:30Last Login
: Today 8:11
From Backnang
Group:
Registered Users
Just looked it up. Providing both cpu and tune options makes the same as only cpu option. Principially tune is an alternative to cpu so the exe still runs on other cpu (but less specific optimization).
Re: X5000 optimized code compile
Posted on:
Today 7:34
#19
Just popping in
Joined: 2018/3/1 21:08Last Login
: Today 7:31
From italy
Group:
Registered Users
Tune option is for instruction rescheduling and yess it don't break compatibility but optimize code for superscalar CPU and their caches to run multiple instructions at same time.
Memento audere semper!
Re: X5000 optimized code compile
Posted on:
Today 7:47
#20
Quite a regular
Joined: 2021/4/23 7:00Last Login
: Today 11:33
From Central Bohemia, Czech Republic
Group:
Registered Users
@flashQuote:
flash wrote:@msteed For X1000 you can go with this -mcpu=7400 -mtune=7400 -maltivec -mabi=altivec -fomit-frame-pointer -O3 Did somebody tested if -mtune=7400 is really the best for PA6T X1000 CPU?
Because it is about scheduling instructions, i.e. how many execution pipelines CPU has and how many instructions can be scheduled / dispatched / completed per cycle and probably other things..
I am not sure if G4 is closest to PA6T in this, maybe -mtune=G5 is better?
If nobody knows the right value, I can test it a little. PA6T is PowerISA 2.04 - the same like Power5++ and G5/970 (PowerISA 2.01) is derived from Power4 (PowerISA 2.00-2.01) - so I think that possible values are between this:
-mtune= 7400 | 7450 | G4 | 970 | G5 | power4 | power5 | power5+
I also will look into CPU docs, which pipeline model is closer to PA6T. Unfortunatelly, PA6T is not upgraded G5, but own new design...
AmigaOS3: Amiga 1200AmigaOS4: Micro A1-C, AmigaOne XE, Pegasos II, Sam440ep, Sam440ep-flex, AmigaOne X1000MorphOS: Efika 5200b, Pegasos I, Pegasos II, Powerbook, Mac Mini, iMac, Powermac Quad
Currently Active Users Viewing This Thread:
1
(
0 members
and 1 Anonymous Users
)