JIT: remove "accurate fcmp" option

This doesn't seem to be necessary anymore now that FPRF is implemented in the
JIT. Technically, this isn't the same as before, since the JIT doesn't
implement the fcmp exception semantics, but as far as testing has shown, this
doesn't seem necessary.

This should make games that use FPRF a few percent faster (e.g. F-Zero GX)
since fcmpx no longer has to be fallbacked.
OGL: require GL version >= 3.0

This "fix" a crash because of glVertexAttribI only available on gl3+ contexts.
Fix wiimote connect hotkeys.
JIT: fix Force25BitPrecision with accurate single precision mode off

Doesn't affect anything now, but it's more correct (and should make setting
AccurateSinglePrecision to false work properly now).
JIT: remove "fast interrupts" option set and then used nowhere
JIT: fix fcmp+cror merging bug

Destination CR bit needs to be cleared if it's not one of the sources.
Merge pull request #1601 from RachelBryk/wiimote-hotkey2

Fix wiimote connect hotkeys.
Vertex loader: use ABI_CallFunction

Should result in faster/shorter code sequences on platforms where generated
code is close enough to the code segment (e.g. Windows).
Merge pull request #1595 from degasus/master

OGL: require GL version >= 3.0
Merge pull request #1603 from FioraAeterna/nofastinterrupts

JIT: remove "fast interrupts" option set and then used nowhere
Merge pull request #1605 from FioraAeterna/fixcrormerge

JIT: fix fcmp+cror merging bug
Merge pull request #1606 from FioraAeterna/vertexloadercall

Vertex loader: use ABI_CallFunction
Merge pull request #1602 from FioraAeterna/fixforce25bitimprecise

JIT: fix Force25BitPrecision with accurate single precision mode off
Merge pull request #1294 from FioraAeterna/noaccuratefcmp

JIT: remove "accurate fcmp" option
Fixes OpenGL ES rendering.
sampler2DArray doesn't have a default precision, so we need to set it ourselves.
Merge pull request #1608 from Sonicadvance1/fix-gles3-rendering

Fixes OpenGL ES rendering.
JIT: skip weird fmul rounding if the input is known to be single precision
JIT: minor cleanup, avoid MOVSD where MOVAPD will do

Avoids false dependencies.
JIT: float instruction attribute fixes, fix binding mistakes

These instructions modify only the bottom halves of the output register,
so the output register needs to be treated as an input too.
JIT: more optimizing of float ops based on known input characteristics

If the inputs are both float singles, and the top half is known to be identical
to the bottom half, we can use packed arithmetic instead of scalar to skip
the movddup.

This is slower on a few rather old CPUs, plus the Atom+Silvermont, so detect
Atom and disable it in that case.

Also avoid PPC_FP on stores if we know that the output came from a float op.