From: cr88192@gmail.com   
      
   On 9/5/2025 2:26 PM, BGB wrote:   
   > On 9/5/2025 10:03 AM, Anton Ertl wrote:   
   >> MitchAlsup writes:   
   >>>   
   >>> MitchAlsup posted:   
   >>>   
      
   ...   
      
   And, self-correction...   
      
   >   
   > For example:   
   >   
   > * 00in-nnnn-iiii-0000 ADD Imm5s, Rn5 //"ADD 0, R0" = TRAP   
   > * 01in-nnnn-iiii-0000 LI Imm5s, Rn5   
   > * 10mn-nnnn-mmmm-0000 ADD Rm5, Rn5   
   > * 11mn-nnnn-mmmm-0000 MV Rm5, Rn5   
   >   
   > * 0000-nnnn-iiii-0100 ADDW Imm4u, Rn4   
   > * 0001-nnnn-mmmm-0100 SUB Rm4, Rn4   
   > * 0010-nnnn-mmmm-0100 ADDW Imm4n, Rn4   
   > * 0011-nnnn-mmmm-0100 MVW Rm4, Rn4 //ADDW Rm, 0, Rn   
   > * 0100-nnnn-mmmm-0100 ADDW Rm4, Rn4   
   > * 0101-nnnn-mmmm-0100 AND Rm4, Rn4   
   > * 0110-nnnn-mmmm-0100 OR Rm4, Rn4   
   > * 0111-nnnn-mmmm-0100 XOR Rm4, Rn4   
   >   
   > * 0iii-0nnn-0mmm-1001 ? SLL Rm3, Imm3u, Rn3   
   > * 0iii-0nnn-1mmm-1001 ? SRL Rm3, Imm3u, Rn3   
   > * 0iii-1nnn-0mmm-1001 ? ADD Rm3, Imm3u, Rn3   
   > * 0iii-1nnn-1mmm-1001 ? ADDW Rm3, Imm3u, Rn3   
   > * 1iii-0nnn-0mmm-1001 ? AND Rm3, Imm3u, Rn3   
   > * 1iii-0nnn-1mmm-1001 ? SRA Rm3, Imm3u, Rn3   
   > * 1iii-1nnn-0mmm-1001 ? ADD Rm3, Imm3n, Rn3   
   > * 1iii-1nnn-1mmm-1001 ? ADDW Rm3, Imm3n, Rn3   
   >   
   > * 0ooo-0nnn-0mmm-1101 ? SLL Rm3, Ro3, Rn3   
   > * 0ooo-0nnn-1mmm-1101 ? SRL Rm3, Ro3, Rn3   
   > * 0ooo-1nnn-0mmm-1101 ? AND Rm3, Ro3, Rn3   
   > * 0ooo-1nnn-1mmm-1101 ? SRA Rm3, Ro3, Rn3   
   > * 1ooo-0nnn-0mmm-1101 ? ADD Rm3, Ro3, Rn3   
   > * 1ooo-0nnn-1mmm-1101 ? SUB Rm3, Ro3, Rn3   
   > * 1ooo-1nnn-0mmm-1101 ? ADDW Rm3, Ro3, Rn3   
   > * 1ooo-1nnn-1mmm-1101 ? SUBW Rm3, Ro3, Rn3   
   >   
      
   ^ flip the LSB for all of the 3R instructions there, it seemed to be a   
   screw up when coming up with my listing...   
      
   But, these were the newest and most uncertain addition, as they use a   
   big chunk of encoding space and aren't great for hit rate due to Reg3   
   and similar.   
      
      
   > * 0ddd-nnnn-mmmm-0001 LW Disp3u(Rm4), Rn4   
   > * 1ddd-nnnn-mmmm-0001 LD Disp3u(Rm4), Rn4   
   > * 0ddd-nnnn-mmmm-0101 SW Rn4, Disp3u(Rm4)   
   > * 1ddd-nnnn-mmmm-0101 SD Rn4, Disp3u(Rm4)   
   >   
   > * 00dn-nnnn-dddd-1001 LW Disp5u(SP), Rn5   
   > * 01dn-nnnn-dddd-1001 LD Disp5u(SP), Rn5   
   > * 10dn-nnnn-dddd-1001 SW Rn5, Disp5u(SP)   
   > * 11dn-nnnn-dddd-1001 SD Rn5, Disp5u(SP)   
   >   
   > * 00dd-dddd-dddd-1101 J Disp10   
   > * 01dn-nnnn-dddd-1101 LD Disp5u(SP), FRn5   
   > * 10in-nnnn-iiii-1101 LUI Imm5s, Rn5   
   > * 11dn-nnnn-dddd-1101 SD FRn5, Disp5u(SP)   
   >   
   > Could achieve a higher average hit-rate than RV-C while *also* using   
   > less encoding space.   
   >   
      
   Granted, more testing could be done.   
      
   This partly came up as another possibility for a "compressed" XG3, which   
   basically just trades the space used for predicated ops back for 16-bit ops.   
      
   But, alas, RV-C doesn't hold up as well if you try to trim it down to   
   2/3 the encoding space.   
      
   ...   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|