SDL-Hercules-390 / hyperion

The SDL Hercules 4.x Hyperion version of the System/370, ESA/390, and z/Architecture Emulator
Other
240 stars 90 forks source link

ICOUNT changes to accomodate E7xx family, PRINT_INST & qsort #620

Closed salva-rczero closed 7 months ago

salva-rczero commented 7 months ago

In preparation for possible changes that may become necessary for the vector facility (129) and as a practical exercise of how pulls requests work in this project, I request these changes in the behavior of icount:

  1. Counters & times tables in hstructs.h & opcode.h for E7xx instruction family.

  2. Add PRINT_INST to ouput line

    hscemode.c(2865)  HHC02292I Sorted icount display: 
    hscemode.c(2912)  HHC02292I Inst 'E371' count            2 (28%) time          617 (308.500000) LAY   0,0(0,0)               load_address_y  
    hscemode.c(2912)  HHC02292I Inst 'A704' count            1 (14%) time            5 (  5.000000) BRC   0,*+0                  branch_relative_on_condition                   
    hscemode.c(2912)  HHC02292I Inst '05'   count            1 (14%) time          724 (724.000000) BALR  0,0                    branch_and_link_register                       
    hscemode.c(2912)  HHC02292I Inst 'E706' count            1 (14%) time            0 (  0.000000) ????? ,                      ?                                              
    hscemode.c(2912)  HHC02292I Inst 'EB2F' count            1 (14%) time          347 (347.000000) LCTLG 0,0,0(0)               load_control_long                              
    hscemode.c(2912)  HHC02292I Inst '00'   count            1 (14%) time            0 (  0.000000) ????? ,                      ?                                              
    cmdtab.c(455)     HHC90000D DBG: RC = 0                                                               

3.- Change arrays to struct ICOUNT_INSTR and iterative sort to a cleanest qsort.

p.d. It's my first pull request. Please, be patient.

salva-rczero commented 7 months ago

bad commit