mirror of
				https://github.com/Ryujinx/Ryujinx.git
				synced 2025-10-25 21:13:55 -07:00 
			
		
		
		
	* Get rid of Reflection.Emit dependency on CPU and Shader projects * Remove useless private sets * Missed those due to the alignment
		
			
				
	
	
		
			28 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| namespace ARMeilleure.Decoders
 | |
| {
 | |
|     class OpCodeMemLit : OpCode, IOpCodeLit
 | |
|     {
 | |
|         public int  Rt        { get; }
 | |
|         public long Immediate { get; }
 | |
|         public int  Size      { get; }
 | |
|         public bool Signed    { get; }
 | |
|         public bool Prefetch  { get; }
 | |
| 
 | |
|         public new static OpCode Create(InstDescriptor inst, ulong address, int opCode) => new OpCodeMemLit(inst, address, opCode);
 | |
| 
 | |
|         public OpCodeMemLit(InstDescriptor inst, ulong address, int opCode) : base(inst, address, opCode)
 | |
|         {
 | |
|             Rt = opCode & 0x1f;
 | |
| 
 | |
|             Immediate = (long)address + DecoderHelper.DecodeImmS19_2(opCode);
 | |
| 
 | |
|             switch ((opCode >> 30) & 3)
 | |
|             {
 | |
|                 case 0: Size = 2; Signed = false; Prefetch = false; break;
 | |
|                 case 1: Size = 3; Signed = false; Prefetch = false; break;
 | |
|                 case 2: Size = 2; Signed = true;  Prefetch = false; break;
 | |
|                 case 3: Size = 0; Signed = false; Prefetch = true;  break;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| } |