On Windows and RPI3 platforms (at least), when you try to reset the core from the frontend, i.e. using RetroArch -> Quick Menu -> Reset/Restart, the core and frontend crash.
This is a known issue even in the old mupen64plus libretro core. I'm opening this issue to track the problem and provide more information for debugging.
Dynamic Recompiler
Pure Interpreter
[INFO] Reset.
[libretro INFO] mupen64plus-next: Entering retro_reset()
[libretro INFO] mupen64plus-next: *** M64CMD_RESET ***
*** Entering main_reset(1) ***
*** Entering hard_reset_device() ***
*** Calling call_interrupt_handler(&r4300->cp0, 11) ***
*** Entering call_interrupt_handler(cp0, 11) ***
*** Entering reset_hard_handler() ***
*** Calling poweron_device() ***
[libretro INFO] mupen64plus-next: Initializing 4 RDRAM modules for a total of 8 MB
*** Calling pif_bootrom_hle_execute() ***
*** Calling init_interrupt() ***
*** Calling invalidate_r4300_cached_code() ***
*** Calling generic_jump_to(a4000040) ***
Thread 1 "retroarch" received signal SIGSEGV, Segmentation fault.
0x64999100 in cached_interp_MTC0 () at mupen64plus-core/src/device/r4300/mips_instructions.def:1185
1185 switch(rfs)
Thread 1 (Thread 0x71b41000 (LWP 11149)):
#0 0x64999100 in cached_interp_MTC0 () at mupen64plus-core/src/device/r4300/mips_instructions.def:1185
r4300 = 0x6e0f7000 <g_dev>
cp0_regs = 0x705f8190 <g_dev+38801808>
cp0_next_interrupt = 0x705f8040 <g_dev+38801472>
__PRETTY_FUNCTION__ = "cached_interp_MTC0"
#1 0x64a51430 in MTC0_new (copr=13, count=20480, diff=0, pcaddr=-1543503808) at mupen64plus-core/src/device/r4300/new_dynarec/new_dynarec.c:11208
r4300 = 0x6e0f7000 <g_dev>
#2 0x6e5f8024 in g_dev () from /opt/retropie/libretrocores/lr-mupen64plus-next/mupen64plus_next_libretro.so
[INFO] Reset.
[libretro INFO] mupen64plus-next: Entering retro_reset()
[libretro INFO] mupen64plus-next: *** M64CMD_RESET ***
*** Entering main_reset(1) ***
*** Entering hard_reset_device() ***
*** Calling call_interrupt_handler(&r4300->cp0, 11) ***
*** Entering call_interrupt_handler(cp0, 11) ***
*** Entering reset_hard_handler() ***
*** Calling poweron_device() ***
[libretro INFO] mupen64plus-next: Initializing 4 RDRAM modules for a total of 8 MB
*** Calling pif_bootrom_hle_execute() ***
*** Calling init_interrupt() ***
*** Calling invalidate_r4300_cached_code() ***
*** Calling generic_jump_to(a4000040) ***
Thread 1 "retroarch" received signal SIGSEGV, Segmentation fault.
0x649bbd84 in generic_jump_to (r4300=0x6e0f7000 <g_dev>, address=2751463488) at mupen64plus-core/src/device/r4300/r4300_core.c:413
413 *r4300_pc(r4300) = address;
#0 0x649bbd84 in generic_jump_to (r4300=0x6e0f7000 <g_dev>, address=2751463488) at mupen64plus-core/src/device/r4300/r4300_core.c:413
No locals.
#1 0x649a75d0 in reset_hard_handler (opaque=0x6e0f7000 <g_dev>) at mupen64plus-core/src/device/r4300/interrupt.c:497
dev = 0x6e0f7000 <g_dev>
r4300 = 0x6e0f7000 <g_dev>
#2 0x649a7688 in call_interrupt_handler (cp0=0x709f86d4 <g_dev+42997460>, index=11) at mupen64plus-core/src/device/r4300/interrupt.c:511
__PRETTY_FUNCTION__ = "call_interrupt_handler"
handler = 0x709f8838 <g_dev+42997816>
#3 0x649a7770 in gen_interrupt (r4300=0x6e0f7000 <g_dev>) at mupen64plus-core/src/device/r4300/interrupt.c:540
cp0_regs = 0x705f8190 <g_dev+38801808>
cp0_next_interrupt = 0x705f8040 <g_dev+38801472>
#4 0x649ae73c in BEQ (r4300=0x6e0f7000 <g_dev>, op=325058571) at mupen64plus-core/src/device/r4300/mips_instructions.def:897
take_jump = 0
jump_target = 2148350228
link_register = 0x705f8080 <g_dev+38801536>
#5 0x649b9d28 in InterpretOpcode (r4300=0x6e0f7000 <g_dev>) at mupen64plus-core/src/device/r4300/pure_interp.c:393
op_address = 0x4215a8ec
op = 325058571
#6 0x649bb1b4 in run_pure_interpreter (r4300=0x6e0f7000 <g_dev>) at mupen64plus-core/src/device/r4300/pure_interp.c:730
No locals.
#7 0x649bb508 in run_r4300 (r4300=0x6e0f7000 <g_dev>) at mupen64plus-core/src/device/r4300/r4300_core.c:137
No locals.
#8 0x64982138 in run_device (dev=0x6e0f7000 <g_dev>) at mupen64plus-core/src/device/device.c:252
No locals.
#9 0x649c4794 in main_run () at mupen64plus-core/src/main/main.c:1259
i = 5
k = 2
rdram_size = 8388608
count_per_op = 2
disable_extra_mem = 0
si_dma_duration = 2304
no_compiled_jump = 0
randomize_interrupt = 0
eep = {data = 0x712bb3b0 <saved_memory> '\377' <repeats 200 times>..., size = 2048, filename = 0x0}
fla = {data = 0x712e3bb0 <saved_memory+165888> '\377' <repeats 200 times>..., size = 131072, filename = 0x0}
sra = {data = 0x712dbbb0 <saved_memory+133120> '\377' <repeats 200 times>..., size = 32768, filename = 0x0}
dd_rom_size = 0
dd_disk = {data = 0x0, size = 0, filename = 0x0}
audio_out_backend_libretro = {set_format = 0x64a59470 <set_audio_format_via_libretro>, push_samples = 0x64a59918 <push_audio_samples_via_libretro>}
control_ids = {0, 1, 2, 3}
cin_compats = {{control_id = 0, cont = 0x712b9c20 <g_dev+52177952>, tpk = 0x712b9ce0 <g_dev+52178144>, last_input = 0, last_pak_type = 2, main_switch_pak = 0x0,
pak_switch_delay = 0, gb_switch_delay = 0, gb_cart_switch_enabled = 0}, {control_id = 1, cont = 0x712b9c38 <g_dev+52177976>, tpk = 0x712b9cf4 <g_dev+52178164>,
last_input = 0, last_pak_type = 1, main_switch_pak = 0x0, pak_switch_delay = 0, gb_switch_delay = 0, gb_cart_switch_enabled = 0}, {control_id = 2,
cont = 0x712b9c50 <g_dev+52178000>, tpk = 0x712b9d08 <g_dev+52178184>, last_input = 0, last_pak_type = 1, main_switch_pak = 0x0, pak_switch_delay = 0,
gb_switch_delay = 0, gb_cart_switch_enabled = 0}, {control_id = 3, cont = 0x712b9c68 <g_dev+52178024>, tpk = 0x712b9d1c <g_dev+52178204>, last_input = 0,
last_pak_type = 1, main_switch_pak = 0x0, pak_switch_delay = 0, gb_switch_delay = 0, gb_cart_switch_enabled = 0}}
mpk_storages = {{
data = 0x712bbbb0 <saved_memory+2048> "\201\001\002\003\004\005\006\a\b\t\n\v\f\r\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037\377\377\377\377\005\032_\023", size = 32768, filename = 0x6488b354 "\260\273+q"}, {
data = 0x712c3bb0 <saved_memory+34816> "\201\001\002\003\004\005\006\a\b\t\n\v\f\r\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037\377\377\377\377\005\032_\023", size = 32768, filename = 0x6488b354 "\260\273+q"}, {
data = 0x712cbbb0 <saved_memory+67584> "\201\001\002\003\004\005\006\a\b\t\n\v\f\r\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037\377\377\377\377\005\032_\023", size = 32768, filename = 0x6488b354 "\260\273+q"}, {
data = 0x712d3bb0 <saved_memory+100352> "\201\001\002\003\004\005\006\a\b\t\n\v\f\r\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037\377\377\377\377\005\032_\023", size = 32768, filename = 0x6488b354 "\260\273+q"}}
mpk = {
data = 0x712bbbb0 <saved_memory+2048> "\201\001\002\003\004\005\006\a\b\t\n\v\f\r\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037\377\377\377\377\005\032_\023", size = 131072, filename = 0x0}
gbcam_backend = 0x0
igbcam_backend = 0x0
flashram_type = 12714014
dd_rtc_iclock = 0x0
dd_idisk = 0x0
joybus_devices = {0x712b9c20 <g_dev+52177952>, 0x712b9c38 <g_dev+52177976>, 0x712b9c50 <g_dev+52178000>, 0x712b9c68 <g_dev+52178024>, 0x712b9f90 <g_dev+52178832>}
ijoybus_devices = {0x64aa9d1c <g_ijoybus_device_controller>, 0x64aa9d1c <g_ijoybus_device_controller>, 0x64aa9d1c <g_ijoybus_device_controller>,
0x64aa9d1c <g_ijoybus_device_controller>, 0x64aa9cf8 <g_ijoybus_device_cart>}
#10 0x6497a0b4 in CoreDoCommand (Command=M64CMD_EXECUTE, ParamInt=0, ParamPtr=0x0) at mupen64plus-core/src/api/frontend.c:176
rval = M64ERR_SUCCESS
keysym = 0
keymod = 0
#11 0x64a53098 in EmuThreadFunction () at libretro/libretro.c:322
No locals.
#12 0x64a7518c in co_switch (handle=<error reading variable: Cannot access memory at address 0xfffffff0>) at libretro-common/libco/armeabi.c:101
co_previous_handle = <error reading variable co_previous_handle (Cannot access memory at address 0xfffffff8)>