diff --git a/src/BizHawk.Emulation.Cores/CPUs/FairchildF8/F3850.cs b/src/BizHawk.Emulation.Cores/CPUs/FairchildF8/F3850.cs
index c799cd0667..4958d7a669 100644
--- a/src/BizHawk.Emulation.Cores/CPUs/FairchildF8/F3850.cs
+++ b/src/BizHawk.Emulation.Cores/CPUs/FairchildF8/F3850.cs
@@ -29,6 +29,11 @@ namespace BizHawk.Emulation.Cores.Components.FairchildF8
///
/// Note: Programmable timer and interrupt logic from the F3851 is not currently emulated
///
+ ///
+ /// this type parameter might look useless—and it is—but after monomorphisation,
+ /// this way happens to perform better than the alternative
+ ///
+ ///
public sealed partial class F3850 where TLink : IF3850Link
{
// operations that can take place in an instruction
diff --git a/src/BizHawk.Emulation.Cores/CPUs/MOS 6502X/MOS6502X.cs b/src/BizHawk.Emulation.Cores/CPUs/MOS 6502X/MOS6502X.cs
index deb90fe66d..9884a1fcf7 100644
--- a/src/BizHawk.Emulation.Cores/CPUs/MOS 6502X/MOS6502X.cs
+++ b/src/BizHawk.Emulation.Cores/CPUs/MOS 6502X/MOS6502X.cs
@@ -5,6 +5,11 @@ using BizHawk.Emulation.Common;
namespace BizHawk.Emulation.Cores.Components.M6502
{
+ ///
+ /// this type parameter might look useless—and it is—but after monomorphisation,
+ /// this way happens to perform better than the alternative
+ ///
+ ///
public sealed partial class MOS6502X where TLink : IMOS6502XLink
{
private readonly TLink _link;
diff --git a/src/BizHawk.Emulation.Cores/CPUs/Z80A/Z80A.cs b/src/BizHawk.Emulation.Cores/CPUs/Z80A/Z80A.cs
index 0ac66eec22..ecd548c333 100644
--- a/src/BizHawk.Emulation.Cores/CPUs/Z80A/Z80A.cs
+++ b/src/BizHawk.Emulation.Cores/CPUs/Z80A/Z80A.cs
@@ -7,6 +7,11 @@ using BizHawk.Common.NumberExtensions;
// Z80A CPU
namespace BizHawk.Emulation.Cores.Components.Z80A
{
+ ///
+ /// this type parameter might look useless—and it is—but after monomorphisation,
+ /// this way happens to perform better than the alternative
+ ///
+ ///
public sealed partial class Z80A where TLink : IZ80ALink
{
// operations that can take place in an instruction