mirror of
				https://github.com/Ryujinx/Ryujinx.git
				synced 2025-10-24 18:20:31 -07:00 
			
		
		
		
	* Get rid of Reflection.Emit dependency on CPU and Shader projects * Remove useless private sets * Missed those due to the alignment
		
			
				
	
	
		
			29 lines
		
	
	
		
			810 B
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			810 B
		
	
	
	
		
			C#
		
	
	
	
	
	
| namespace ARMeilleure.Decoders
 | |
| {
 | |
|     class OpCodeAluRs : OpCodeAlu, IOpCodeAluRs
 | |
|     {
 | |
|         public int Shift { get; }
 | |
|         public int Rm    { get; }
 | |
| 
 | |
|         public ShiftType ShiftType { get; }
 | |
| 
 | |
|         public new static OpCode Create(InstDescriptor inst, ulong address, int opCode) => new OpCodeAluRs(inst, address, opCode);
 | |
| 
 | |
|         public OpCodeAluRs(InstDescriptor inst, ulong address, int opCode) : base(inst, address, opCode)
 | |
|         {
 | |
|             int shift = (opCode >> 10) & 0x3f;
 | |
| 
 | |
|             if (shift >= GetBitsCount())
 | |
|             {
 | |
|                 Instruction = InstDescriptor.Undefined;
 | |
| 
 | |
|                 return;
 | |
|             }
 | |
| 
 | |
|             Shift = shift;
 | |
| 
 | |
|             Rm        =             (opCode >> 16) & 0x1f;
 | |
|             ShiftType = (ShiftType)((opCode >> 22) & 0x3);
 | |
|         }
 | |
|     }
 | |
| } |