SNES game compatibility on PSP is very low or required a lot of thinkering with settings (and still, you have to got heavy frame-skipping), whereas on 3DS is virtually perfect. I remember having lots of problem running Super Metroid and Super Castlevania smootly with no graphical glitches, and those are not even special chip games.
Still, PSP has perfect PS1 compatibility via the official Sony emulator.
As a general rule of thumb:
NES: Both. Use VirtuaNES on 3DS, better compatibility than VC Injection. Some game were re-released as 3D Classic on 3DS
GB/C: Both
GBA: 3DS Injection is better, PSP emulation is good enough and has save states
SNES: 3DS Injection and for special chip or some hacked games Snes9X
MS+MD: Dunno, emulation on PSP was very good. Some games were re-released as 3D Classic on 3DS
PCE: Dunno, both I think. Use TemperPCE on 3DS, Injection compatibility is very low
PS1: PSP
DS: 3DS of course, with TWL Loader you get better sound and better framerate
N64: Non-existant on 3DS (but you have amazing remakes of Zelda and StarFox), a very very limited amount of games can somehow be played on PSP with DaedalusX64
Still, PSP has perfect PS1 compatibility via the official Sony emulator.
As a general rule of thumb:
NES: Both. Use VirtuaNES on 3DS, better compatibility than VC Injection. Some game were re-released as 3D Classic on 3DS
GB/C: Both
GBA: 3DS Injection is better, PSP emulation is good enough and has save states
SNES: 3DS Injection and for special chip or some hacked games Snes9X
MS+MD: Dunno, emulation on PSP was very good. Some games were re-released as 3D Classic on 3DS
PCE: Dunno, both I think. Use TemperPCE on 3DS, Injection compatibility is very low
PS1: PSP
DS: 3DS of course, with TWL Loader you get better sound and better framerate
N64: Non-existant on 3DS (but you have amazing remakes of Zelda and StarFox), a very very limited amount of games can somehow be played on PSP with DaedalusX64