pcsx_rearmed.git
19 months agolightrec: Disable threaded compiler by default
Paul Cercueil [Thu, 3 Nov 2022 18:26:45 +0000 (18:26 +0000)]
lightrec: Disable threaded compiler by default

It is still buggy so it's better to disable it by default until it
becomes usable.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
19 months agocdriso: fix up chd for separated subq reads
notaz [Thu, 3 Nov 2022 00:13:39 +0000 (02:13 +0200)]
cdriso: fix up chd for separated subq reads

19 months agocdriso: disable the async code
notaz [Wed, 2 Nov 2022 22:49:53 +0000 (00:49 +0200)]
cdriso: disable the async code

It will race with the new ISOgetBufferSub() and I have no desire to fix
this as this async stuff was never submitted upstread, and according to
the following report it's unstable:
https://github.com/notaz/pcsx_rearmed/issues/257

19 months agocdrom: change GetlocP handling
notaz [Wed, 2 Nov 2022 20:24:20 +0000 (22:24 +0200)]
cdrom: change GetlocP handling

maybe better?
notaz/pcsx_rearmed#268

19 months agocdrom: handle fifo overreads
notaz [Tue, 1 Nov 2022 23:20:50 +0000 (01:20 +0200)]
cdrom: handle fifo overreads

based on nocash doc
notaz/pcsx_rearmed#269

19 months agoMerge pull request #702 from pcercuei/update-lightrec-20221029
notaz [Tue, 1 Nov 2022 20:52:49 +0000 (22:52 +0200)]
Merge pull request #702 from pcercuei/update-lightrec-20221029

git subrepo pull --force deps/lightrec

19 months agogit subrepo pull --force deps/lightrec
Paul Cercueil [Sat, 29 Oct 2022 14:50:50 +0000 (15:50 +0100)]
git subrepo pull --force deps/lightrec

subrepo:
  subdir:   "deps/lightrec"
  merged:   "4e55a15656"
upstream:
  origin:   "https://github.com/pcercuei/lightrec.git"
  branch:   "master"
  commit:   "4e55a15656"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

19 months agocdrom: add a timing hack
notaz [Tue, 25 Oct 2022 19:08:12 +0000 (22:08 +0300)]
cdrom: add a timing hack

notaz/pcsx_rearmed#267

19 months agocdrom: report read errors correctly
notaz [Sat, 22 Oct 2022 16:20:26 +0000 (19:20 +0300)]
cdrom: report read errors correctly

19 months agopsxbios: use noninvasive print for -psxout
notaz [Sat, 22 Oct 2022 16:16:46 +0000 (19:16 +0300)]
psxbios: use noninvasive print for -psxout

19 months agoMerge pull request #700 from pcercuei/update-lightrec-20221019
notaz [Sat, 22 Oct 2022 15:52:54 +0000 (18:52 +0300)]
Merge pull request #700 from pcercuei/update-lightrec-20221019

Update lightrec 20221019

20 months agogit subrepo pull (merge) --force deps/lightning
Paul Cercueil [Wed, 19 Oct 2022 17:24:34 +0000 (18:24 +0100)]
git subrepo pull (merge) --force deps/lightning

subrepo:
  subdir:   "deps/lightning"
  merged:   "b910a469a9"
upstream:
  origin:   "https://github.com/pcercuei/gnu_lightning.git"
  branch:   "pcsx_rearmed"
  commit:   "b910a469a9"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

20 months agogit subrepo pull --force deps/lightrec
Paul Cercueil [Wed, 19 Oct 2022 17:24:29 +0000 (18:24 +0100)]
git subrepo pull --force deps/lightrec

subrepo:
  subdir:   "deps/lightrec"
  merged:   "782c220e5d"
upstream:
  origin:   "https://github.com/pcercuei/lightrec.git"
  branch:   "master"
  commit:   "782c220e5d"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

20 months agoadjust multitap code to interact with standalone better
notaz [Sat, 15 Oct 2022 20:08:09 +0000 (23:08 +0300)]
adjust multitap code to interact with standalone better

20 months agogpulib: update gpuinfo
notaz [Fri, 14 Oct 2022 21:37:43 +0000 (00:37 +0300)]
gpulib: update gpuinfo

according to nocash

20 months agoreduce differences from upstream
notaz [Fri, 14 Oct 2022 20:24:21 +0000 (23:24 +0300)]
reduce differences from upstream

because libretro-only breakage is too annoying to track down

20 months agoMerge pull request #698 from pcercuei/update-lightrec-20221012
notaz [Thu, 13 Oct 2022 21:34:30 +0000 (00:34 +0300)]
Merge pull request #698 from pcercuei/update-lightrec-20221012

Update lightrec 20221012

20 months agogit subrepo pull --force deps/lightning
Paul Cercueil [Wed, 12 Oct 2022 10:50:18 +0000 (11:50 +0100)]
git subrepo pull --force deps/lightning

subrepo:
  subdir:   "deps/lightning"
  merged:   "4941e101f8"
upstream:
  origin:   "https://github.com/pcercuei/gnu_lightning.git"
  branch:   "pcsx_rearmed"
  commit:   "4941e101f8"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

20 months agogit subrepo pull --force deps/lightrec
Paul Cercueil [Wed, 12 Oct 2022 09:50:32 +0000 (10:50 +0100)]
git subrepo pull --force deps/lightrec

subrepo:
  subdir:   "deps/lightrec"
  merged:   "75374fa374"
upstream:
  origin:   "https://github.com/pcercuei/lightrec.git"
  branch:   "master"
  commit:   "75374fa374"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

20 months agoallow debug build (make DEBUG=1)
notaz [Sat, 8 Oct 2022 18:26:23 +0000 (21:26 +0300)]
allow debug build (make DEBUG=1)

no need for PCSX's internal debugger (unmaintained here)

20 months agoremove a seemingly broken submodule
notaz [Sun, 2 Oct 2022 21:22:10 +0000 (00:22 +0300)]
remove a seemingly broken submodule

Committed unintentionally?
If not, please update .gitmodules next time.

20 months agolightrec: fix pcsx interpreter -> lightrec switch too
notaz [Sun, 2 Oct 2022 17:37:29 +0000 (20:37 +0300)]
lightrec: fix pcsx interpreter -> lightrec switch too

20 months agolightrec: allow to switch to pcsx's interpreter anytime
notaz [Sun, 2 Oct 2022 16:09:49 +0000 (19:09 +0300)]
lightrec: allow to switch to pcsx's interpreter anytime

20 months agolibretro: adjust options after recent changes
notaz [Sat, 1 Oct 2022 21:17:00 +0000 (00:17 +0300)]
libretro: adjust options after recent changes

20 months agopsxinterpreter: use cycle_multiplier also
notaz [Sat, 1 Oct 2022 20:43:39 +0000 (23:43 +0300)]
psxinterpreter: use cycle_multiplier also

not just ari64

20 months agoremove all the hack options
notaz [Sat, 1 Oct 2022 19:32:01 +0000 (22:32 +0300)]
remove all the hack options

They just confuse users, like:
libretro/pcsx_rearmed#693

For Parasite Eve 2 and others, adjust "PSX CPU clock" instead if needed.

20 months agocdrom: update status immediately after seek
notaz [Thu, 29 Sep 2022 19:45:23 +0000 (22:45 +0300)]
cdrom: update status immediately after seek

Philosoma wants it

20 months agocdrom: ignore repeated read cmds
notaz [Thu, 29 Sep 2022 18:36:54 +0000 (21:36 +0300)]
cdrom: ignore repeated read cmds

libretro/pcsx_rearmed#691

20 months agocdrom: change GetlocL behavior
notaz [Wed, 21 Sep 2022 21:35:28 +0000 (00:35 +0300)]
cdrom: change GetlocL behavior

notaz/pcsx_rearmed#263

21 months agocdrom: treat seek the same as other commands
notaz [Sat, 17 Sep 2022 20:28:46 +0000 (23:28 +0300)]
cdrom: treat seek the same as other commands

much simpler this way

21 months agocdrom: allow to interrupt initial scan sequence
notaz [Sat, 17 Sep 2022 20:18:47 +0000 (23:18 +0300)]
cdrom: allow to interrupt initial scan sequence

probably wrong but ohwell...

21 months agocdrom: actually reject commands when not ready
notaz [Sat, 17 Sep 2022 19:46:03 +0000 (22:46 +0300)]
cdrom: actually reject commands when not ready

before it would still execute them and just do an error response

21 months agomaybe fix x86 32bit detection for libretro's infra
notaz [Fri, 16 Sep 2022 20:45:15 +0000 (23:45 +0300)]
maybe fix x86 32bit detection for libretro's infra

21 months agomake: print what's going on
notaz [Fri, 16 Sep 2022 20:40:23 +0000 (23:40 +0300)]
make: print what's going on

21 months agotry to fix build
notaz [Fri, 16 Sep 2022 20:30:05 +0000 (23:30 +0300)]
try to fix build

21 months agotry to enable gpu_neon on 32bit x86
notaz [Fri, 16 Sep 2022 20:19:39 +0000 (23:19 +0300)]
try to enable gpu_neon on 32bit x86

21 months agomain: log missing CPU features
notaz [Fri, 16 Sep 2022 19:59:25 +0000 (22:59 +0300)]
main: log missing CPU features

will probably be too late but ohwell

21 months agogpu_neon: rm wrong cost qualifier
notaz [Thu, 15 Sep 2022 23:34:58 +0000 (02:34 +0300)]
gpu_neon: rm wrong cost qualifier

21 months agocdrom: adjust timing
notaz [Thu, 15 Sep 2022 23:31:37 +0000 (02:31 +0300)]
cdrom: adjust timing

21 months agodon't cast between long and pointers for win64
notaz [Thu, 15 Sep 2022 21:03:40 +0000 (00:03 +0300)]
don't cast between long and pointers for win64

long is 32 bit there

21 months agoenable gpu_neon on win64 too
notaz [Thu, 15 Sep 2022 20:38:40 +0000 (23:38 +0300)]
enable gpu_neon on win64 too

hope it works there

21 months agotry to enable gpu_neon on x86
notaz [Thu, 15 Sep 2022 18:48:14 +0000 (21:48 +0300)]
try to enable gpu_neon on x86

21 months agomisc: patch some issues indicated by clang
notaz [Thu, 15 Sep 2022 18:12:10 +0000 (21:12 +0300)]
misc: patch some issues indicated by clang

21 months agofrontend: handle double res rendering, enable on x86_64
notaz [Thu, 15 Sep 2022 16:11:11 +0000 (19:11 +0300)]
frontend: handle double res rendering, enable on x86_64

21 months agogpu_neon: brand new x86 SSE2+ implementation
notaz [Sun, 11 Sep 2022 22:40:24 +0000 (01:40 +0300)]
gpu_neon: brand new x86 SSE2+ implementation

21 months agogpu_neon: adjust some comments and things
notaz [Tue, 16 Aug 2022 21:11:39 +0000 (00:11 +0300)]
gpu_neon: adjust some comments and things

21 months agocdrom: delay the missed irq more
notaz [Thu, 15 Sep 2022 16:25:01 +0000 (19:25 +0300)]
cdrom: delay the missed irq more

21 months agoUpdate lightrec 20220912 (#688)
Paul Cercueil [Mon, 12 Sep 2022 20:26:25 +0000 (22:26 +0200)]
Update lightrec 20220912 (#688)

* lightrec: Remove leftover debug stuff

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
* lightrec: Fix lightrec_can_hw_direct() table

It was slightly wrong, which caused crashes in the intro FMV of
Sled Storm (and maybe other games).

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
* git subrepo pull --force deps/lightrec

subrepo:
  subdir:   "deps/lightrec"
  merged:   "962ba05793"
upstream:
  origin:   "https://github.com/pcercuei/lightrec.git"
  branch:   "master"
  commit:   "962ba05793"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
21 months agoUpdate lightrec 20220911 (#687)
Paul Cercueil [Sun, 11 Sep 2022 16:33:38 +0000 (18:33 +0200)]
Update lightrec 20220911 (#687)

* Fix <sys/mman.h> symlink

Using a symlink made it impossible to compile on Windows with MinGW.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
* lightrec: Fix crash on Windows and WiiU

Fix crash on platforms that don't use Lightrec's custom map.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
* lightrec: Fix has_interrupt() using PCSX' registers

It should use Lightrec's internal CP0 registers instead.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
* git subrepo pull --force deps/lightrec

subrepo:
  subdir:   "deps/lightrec"
  merged:   "071973e3ac"
upstream:
  origin:   "https://github.com/pcercuei/lightrec.git"
  branch:   "master"
  commit:   "071973e3ac"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
21 months agoUpdate lightrec 20220910 (#686)
Paul Cercueil [Sun, 11 Sep 2022 09:12:45 +0000 (11:12 +0200)]
Update lightrec 20220910 (#686)

* git subrepo pull --force deps/lightning

subrepo:
  subdir:   "deps/lightning"
  merged:   "b1dfc564e2"
upstream:
  origin:   "https://github.com/pcercuei/gnu_lightning.git"
  branch:   "pcsx_rearmed"
  commit:   "b1dfc564e2"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

* include: update lightning.h

Update lightning.h with a copy generated from the latest master.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
* git subrepo pull --force deps/lightrec

subrepo:
  subdir:   "deps/lightrec"
  merged:   "e122276183"
upstream:
  origin:   "https://github.com/pcercuei/lightrec.git"
  branch:   "master"
  commit:   "e122276183"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

* lightrec: Update to latest Lightrec API

Remove the debug features since they aren't really useful in the
libretro core.

Update the glue code to use the updated API functions; and implement
lightrec_can_hw_direct() for a slight performance increase.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
21 months agosome big endian fixes
notaz [Sat, 10 Sep 2022 14:53:54 +0000 (17:53 +0300)]
some big endian fixes

"kinda sucks but it works" kind of thing

21 months agospu: fix wrong volume shift
notaz [Sat, 10 Sep 2022 13:46:05 +0000 (16:46 +0300)]
spu: fix wrong volume shift

libretro/pcsx_rearmed#685

21 months agofix build
notaz [Fri, 9 Sep 2022 23:37:50 +0000 (02:37 +0300)]
fix build

forgot to add 'extern'

21 months agostandalone: allow lighrec for testing
notaz [Fri, 9 Sep 2022 23:26:04 +0000 (02:26 +0300)]
standalone: allow lighrec for testing

./configure
make DYNAREC=lightrec

21 months agopsxinterpreter: reduce the use of globals
notaz [Fri, 9 Sep 2022 19:11:30 +0000 (22:11 +0300)]
psxinterpreter: reduce the use of globals

they induce penalties with -fPIC

21 months agopsxinterpreter: sync with upstream
notaz [Fri, 9 Sep 2022 22:58:53 +0000 (01:58 +0300)]
psxinterpreter: sync with upstream

for easier merging

21 months agoeasier logging of unhandled stuff
notaz [Thu, 8 Sep 2022 17:09:04 +0000 (20:09 +0300)]
easier logging of unhandled stuff

21 months agocdrom: partially emulate the fifo
notaz [Thu, 8 Sep 2022 18:13:25 +0000 (21:13 +0300)]
cdrom: partially emulate the fifo

21 months agodma: try more accurate timings
notaz [Thu, 8 Sep 2022 15:17:06 +0000 (18:17 +0300)]
dma: try more accurate timings

seems to help Legend of Mana

21 months agocdrom: get rid of pTransfer
notaz [Thu, 8 Sep 2022 15:01:34 +0000 (18:01 +0300)]
cdrom: get rid of pTransfer

it could easily crash the emu (misbehaving game or even malicious ISO)

21 months agocdrom: don't reschedule irqs
notaz [Tue, 6 Sep 2022 21:47:55 +0000 (00:47 +0300)]
cdrom: don't reschedule irqs

trigger shortly after ack instead, like nocash describes

21 months agocdrom: clean up command handling
notaz [Mon, 5 Sep 2022 20:47:10 +0000 (23:47 +0300)]
cdrom: clean up command handling

21 months agocdrom: try to eliminate playback timing drifting
notaz [Mon, 5 Sep 2022 16:41:52 +0000 (19:41 +0300)]
cdrom: try to eliminate playback timing drifting

21 months agopsxcounters: try to eliminate another source of audio drift
notaz [Tue, 6 Sep 2022 23:09:08 +0000 (02:09 +0300)]
psxcounters: try to eliminate another source of audio drift

21 months agospu: cleanup some irq hacks
notaz [Wed, 7 Sep 2022 23:50:36 +0000 (02:50 +0300)]
spu: cleanup some irq hacks

Note that bIgnoreLoop is still needed or
"Misadventures Of Tron Bonne" may hang after cutscenes.
Before this commit the game will sometimes cut off dialogues.

21 months agospu: sync on xa playback start
notaz [Tue, 6 Sep 2022 15:25:42 +0000 (18:25 +0300)]
spu: sync on xa playback start

this avoids nasty underflows at the start of the stream

21 months agospu: support master volume
notaz [Sun, 4 Sep 2022 23:03:24 +0000 (02:03 +0300)]
spu: support master volume

21 months agospu: rename dwChannelOn to something more suitable
notaz [Sun, 4 Sep 2022 21:40:58 +0000 (00:40 +0300)]
spu: rename dwChannelOn to something more suitable

21 months agospu: remove some strange rounding
notaz [Sun, 4 Sep 2022 21:02:28 +0000 (00:02 +0300)]
spu: remove some strange rounding

Seems wrong.
Also deal with now possible div by 0 in scan_for_irq().

21 months agocdrom: remove confusing comment
notaz [Sat, 3 Sep 2022 15:37:53 +0000 (18:37 +0300)]
cdrom: remove confusing comment

No need for a wall-of-text comment for something as basic as seeking.
It also said "disabling it with `&& false` for now" when there is no
such code here.

21 months agocdrom: remove another hack
notaz [Sat, 3 Sep 2022 15:33:09 +0000 (18:33 +0300)]
cdrom: remove another hack

The hack just makes Worms Pinball unstable, and Crusaders of Might
and Magic no longer seems to need it.

21 months agocdrom: get rid of cdrPlayInterrupt
notaz [Fri, 2 Sep 2022 20:13:44 +0000 (23:13 +0300)]
cdrom: get rid of cdrPlayInterrupt

unify with cdrReadInterrupt and name it cdrPlaySeekReadInterrupt

... althoug these are not actually interrupts, more like events,
but keep this weird PCSX's naming convention

21 months agocdrom: try to clean up the seeking mess
notaz [Thu, 1 Sep 2022 21:47:56 +0000 (00:47 +0300)]
cdrom: try to clean up the seeking mess

regressions are likely (this is cdrom code - pcsx's weak spot),
so feel free to revert if I'm not responsive

21 months agocdrom: should use the last Setloc loc and SeekL
notaz [Wed, 31 Aug 2022 23:09:49 +0000 (02:09 +0300)]
cdrom: should use the last Setloc loc and SeekL

notaz/pcsx_rearmed#253

21 months agocdrom: some debugging aid
notaz [Wed, 31 Aug 2022 23:02:21 +0000 (02:02 +0300)]
cdrom: some debugging aid

21 months agocdrom: sync with upstream
notaz [Fri, 2 Sep 2022 23:09:14 +0000 (02:09 +0300)]
cdrom: sync with upstream

Without this can't cherry-pick stuff from there.

21 months agoRevert "Revert "misc: get rid of an unaligned read""
notaz [Tue, 30 Aug 2022 21:02:47 +0000 (00:02 +0300)]
Revert "Revert "misc: get rid of an unaligned read""

This reverts commit af0df01112a234b848be5fe87a2066bb938d356c.

21 months agoplugins: try to untangle the CALLBACK mess
notaz [Mon, 29 Aug 2022 23:58:32 +0000 (02:58 +0300)]
plugins: try to untangle the CALLBACK mess

on ARM it doesn't matter so calling conventions were never maintained,
so just get rid of __stdcall

21 months agospu: get rid of iXAPitch
notaz [Tue, 30 Aug 2022 00:00:51 +0000 (03:00 +0300)]
spu: get rid of iXAPitch

it makes no sense after SPU was fully synced to the core, and now it
just pulls unwanted windows.h dependency on win32.

21 months agoRevert "misc: get rid of an unaligned read"
LibretroAdmin [Mon, 29 Aug 2022 23:26:03 +0000 (01:26 +0200)]
Revert "misc: get rid of an unaligned read"

This reverts commit 5bb56b1a0ec9c4875a4b9f532d79ee477a5a6e8e.

21 months agomisc: get rid of an unaligned read
notaz [Sun, 28 Aug 2022 20:51:40 +0000 (23:51 +0300)]
misc: get rid of an unaligned read

96c6ec7055ecef55b3dd221c86b796512bf52107 introduced an unaligned read
which is undefined behavior in C, even if most hardware allows it
(but some very old ARMs don't). Perf. doesn't matter here so read
byte-by-byte.

notaz/pcsx_rearmed#261

22 months agogpu_neon: fix another abi violation
notaz [Sat, 13 Aug 2022 21:07:11 +0000 (00:07 +0300)]
gpu_neon: fix another abi violation

before the flush_render_block_buffer call the stack is misaligned,
so push an odd num of regs to realign

22 months agogpu_neon: fix wrong block counting
notaz [Sat, 13 Aug 2022 21:05:07 +0000 (00:05 +0300)]
gpu_neon: fix wrong block counting

22 months agodrc: fix a silly mistake of overwriting a reg
notaz [Thu, 11 Aug 2022 19:52:54 +0000 (22:52 +0300)]
drc: fix a silly mistake of overwriting a reg

22 months agodrc: rework smc checks again
notaz [Wed, 10 Aug 2022 19:39:41 +0000 (22:39 +0300)]
drc: rework smc checks again

the way it was done before wasn't good enough for
Mega Man Legends 2 at least

22 months agodrc: fix wrong masking in set_jump_target
notaz [Wed, 10 Aug 2022 19:32:11 +0000 (22:32 +0300)]
drc: fix wrong masking in set_jump_target

22 months agocspace: add forgotten length decrement
notaz [Tue, 9 Aug 2022 17:42:39 +0000 (20:42 +0300)]
cspace: add forgotten length decrement

22 months agomake: switch apple platforms to neon gpu too
notaz [Mon, 8 Aug 2022 23:56:05 +0000 (02:56 +0300)]
make: switch apple platforms to neon gpu too

let's see it it builds

22 months agoAndroid.mk: try enable neon gpu for arm64 Android too
notaz [Mon, 8 Aug 2022 23:44:32 +0000 (02:44 +0300)]
Android.mk: try enable neon gpu for arm64 Android too

22 months agomake: switch most arm64 platforms to neon gpu
notaz [Mon, 8 Aug 2022 23:38:59 +0000 (02:38 +0300)]
make: switch most arm64 platforms to neon gpu

22 months agomake: adjust in preparation to enable neon on arm64
notaz [Mon, 8 Aug 2022 23:05:19 +0000 (02:05 +0300)]
make: adjust in preparation to enable neon on arm64

22 months agocspace: generic implementation with vector extensions
notaz [Mon, 8 Aug 2022 21:07:27 +0000 (00:07 +0300)]
cspace: generic implementation with vector extensions

22 months agogpu_neon: integration for arm64
notaz [Mon, 8 Aug 2022 18:16:59 +0000 (21:16 +0300)]
gpu_neon: integration for arm64

22 months agogpu_neon: new intrinsics-only implementation
notaz [Sun, 17 Jul 2022 22:26:25 +0000 (01:26 +0300)]
gpu_neon: new intrinsics-only implementation

~80-95% performance of the asm version on cortex-a72,
but maybe less of a portability nightmare (+arm64 support)

22 months agogpu_neon: place asm func prototypes into a separate header
notaz [Sat, 23 Jul 2022 15:22:33 +0000 (18:22 +0300)]
gpu_neon: place asm func prototypes into a separate header

for the upcoming intrinsics implementation

22 months agogpu_neon: don't include vector_ops.h in the main header
notaz [Sun, 17 Jul 2022 22:18:52 +0000 (01:18 +0300)]
gpu_neon: don't include vector_ops.h in the main header

that stuff is only used in the C-only prototype

22 months agogpu_neon: fix some more abi violations
notaz [Mon, 1 Aug 2022 21:08:49 +0000 (00:08 +0300)]
gpu_neon: fix some more abi violations

22 months agodrc: patch up some potential issues on the switch
notaz [Tue, 2 Aug 2022 21:51:35 +0000 (00:51 +0300)]
drc: patch up some potential issues on the switch

22 months agogpu_neon: try to make the compiler save some callee-save regs
notaz [Sat, 23 Jul 2022 22:31:08 +0000 (01:31 +0300)]
gpu_neon: try to make the compiler save some callee-save regs

... which the asm isn't doing properly

22 months agodfxvideo: patch up some unsafe macros
notaz [Fri, 29 Jul 2022 22:07:21 +0000 (01:07 +0300)]
dfxvideo: patch up some unsafe macros

(old?)-ARM version of GETLE32() was causing wrong shifting due to
implicit signed int promotion.

libretro/pcsx_rearmed#676