SNES cores

What is the difference between the SNES cores in retroarch?

bsnes* is mainline bsnes/higan, bsnes-mercury* is based on mainline but has some optimizations from Alcaro that don’t affect accuracy and they also have special chip HLE added back in (which is important if you want to play CX4 games with the performance profile, since they never got LLE, or if you want to play special chip games on a computer that is too slow for LLE at all), snes9x is snes9x, snes9x-next is snes9x with some speedhacks added that break some games (don’t use it if you don’t need the extra speed), CatSFC is based on an old snes9x and is in there for low-power devices (don’t use it if you don’t need the speed), mednafen-snes is based on a very old version of bsnes (nobody should use it via retroarch pretty much ever; it’s just there because it came with the rest of the mednafen cores)