RPCSX / rpcsx

GNU General Public License v2.0
1.23k stars 58 forks source link

About hardcoded options in rpcsx-os #33

Closed abouvier closed 1 year ago

abouvier commented 1 year ago

Is there a reason why these options are hardcoded? https://github.com/RPCSX/rpcsx/blob/2a505e81de7b9c933e5f0d38d8367bed04c6e5ee/rpcsx-os/CMakeLists.txt#L35-L36 This prevents users from injecting their own arch preferences/options during the build.

DHrpcs3 commented 1 year ago

It is not options, it is required features. text-segment starts just after addressable virtual memory of ps4, native arch needed for fsbase register set

abouvier commented 1 year ago

Wouldn't just -mfsgsbase suffice? With -march=native you enable features compatible with the building machine, possibly not present on a different machine running rpcsx.

DHrpcs3 commented 1 year ago

We require most modern CPU for running. Do you want to run PS4/PS5 emulator with CPU worse than build server has?

abouvier commented 1 year ago

It can be the other way around, building on a potato (where -march=native will disable many things) and running the emulator on a good CPU. You should explicitly list every feature required instead, or specify a fixed modern CPU.