public static void ParseAndUpdateVfprDestinationPrefix(int Index, string RegisterName, ref VfpuDestinationPrefix VfpuPrefix) { switch (RegisterName) { case "M": VfpuPrefix.DestinationMask(Index, true); break; case "0:1": VfpuPrefix.DestinationMask(Index, false); VfpuPrefix.DestinationSaturation(Index, 1); break; case "-1:1": VfpuPrefix.DestinationMask(Index, false); VfpuPrefix.DestinationSaturation(Index, 3); break; default: throw (new NotImplementedException(String.Format("Invalid RegisterName {0}", RegisterName))); } }
private void CheckPrefixUsage(ref VfpuDestinationPrefix Prefix, bool Debug = true) { // Disable the prefix once it have been used. if (Prefix.Enabled) { if (Prefix.UsedCount > 0 && Prefix.UsedPC != PC) { Prefix.Enabled = false; } } }