Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/sparc32/src/trap_table.S

    r3efc35a rb6b02c0  
    118118#define TRAP(_vector, _handler) \
    119119        .org trap_table + _vector * TRAP_ENTRY_SIZE; \
    120         mov %psr, %l0 ; \
     120        mov   %psr, %l0 ; \
    121121        sethi %hi(_handler), %l4 ; \
    122         jmp %l4 + %lo(_handler); \
    123         mov _vector, %l3 ;
    124 
    125 #define INTERRUPT(_vector, _priority) \
    126         .org trap_table + _vector * TRAP_ENTRY_SIZE; \
    127         mov %psr, %l0 ; \
    128         mov _priority, %g2 ; \
    129         call exc_dispatch ; \
    130         nop ;
     122        jmp   %l4+%lo(_handler); \
     123        mov   _vector, %l3 ;
    131124
    132125#define BADTRAP(_vector) \
     
    136129.align TRAP_TABLE_SIZE
    137130trap_table:
    138         TRAP(0x0, reset_trap)
    139         TRAP(0x1, instruction_access_exception)
    140         TRAP(0x2, illegal_instruction)
    141         TRAP(0x3, privileged_instruction)
    142         TRAP(0x4, fp_disabled)
    143         TRAP(0x5, window_overflow_trap)
    144         TRAP(0x6, window_underflow_trap)
    145         TRAP(0x7, mem_address_not_aligned)
    146         TRAP(0x8, fp_exception)
    147         TRAP(0x9, data_access_exception)
    148         TRAP(0xa, tag_overflow)
    149         BADTRAP(0xb)
    150         BADTRAP(0xc)
    151         BADTRAP(0xd)
    152         BADTRAP(0xe)
    153         BADTRAP(0xf)
    154         BADTRAP(0x10)
    155         INTERRUPT(0x11, 1)
    156         INTERRUPT(0x12, 2)
    157         INTERRUPT(0x13, 3)
    158         INTERRUPT(0x14, 4)
    159         INTERRUPT(0x15, 5)
    160         INTERRUPT(0x16, 6)
    161         INTERRUPT(0x17, 7)
    162         INTERRUPT(0x18, 8)
    163         INTERRUPT(0x19, 9)
    164         INTERRUPT(0x1a, 10)
    165         INTERRUPT(0x1b, 11)
    166         INTERRUPT(0x1c, 12)
    167         INTERRUPT(0x1d, 13)
    168         INTERRUPT(0x1e, 14)
    169         INTERRUPT(0x1f, 15)
    170         TRAP(0x21, instruction_access_error)
    171         BADTRAP(0x22)
    172         BADTRAP(0x23)
    173         BADTRAP(0x24)
    174         BADTRAP(0x25)
    175         BADTRAP(0x26)
    176         BADTRAP(0x27)
    177         BADTRAP(0x28)
    178         TRAP(0x29, data_access_error)
    179         TRAP(0x2a, division_by_zero)
    180         TRAP(0x2b, data_store_error)
    181         TRAP(0x2c, data_access_mmu_miss)
    182         BADTRAP(0x2d)
    183         BADTRAP(0x2e)
    184         BADTRAP(0x2f)
    185         BADTRAP(0x30)
    186         BADTRAP(0x31)
    187         BADTRAP(0x32)
    188         BADTRAP(0x33)
    189         BADTRAP(0x34)
    190         BADTRAP(0x35)
    191         BADTRAP(0x36)
    192         BADTRAP(0x37)
    193         BADTRAP(0x38)
    194         BADTRAP(0x39)
    195         BADTRAP(0x3a)
    196         BADTRAP(0x3b)
    197         BADTRAP(0x3c)
    198         BADTRAP(0x3d)
    199         BADTRAP(0x3e)
    200         BADTRAP(0x3f)
    201         BADTRAP(0x40)
    202         BADTRAP(0x41)
    203         BADTRAP(0x42)
    204         BADTRAP(0x43)
    205         BADTRAP(0x44)
    206         BADTRAP(0x45)
    207         BADTRAP(0x46)
    208         BADTRAP(0x47)
    209         BADTRAP(0x48)
    210         BADTRAP(0x49)
    211         BADTRAP(0x4a)
    212         BADTRAP(0x4b)
    213         BADTRAP(0x4c)
    214         BADTRAP(0x4d)
    215         BADTRAP(0x4e)
    216         BADTRAP(0x4f)
    217         BADTRAP(0x50)
    218         BADTRAP(0x51)
    219         BADTRAP(0x52)
    220         BADTRAP(0x53)
    221         BADTRAP(0x54)
    222         BADTRAP(0x55)
    223         BADTRAP(0x56)
    224         BADTRAP(0x57)
    225         BADTRAP(0x58)
    226         BADTRAP(0x59)
    227         BADTRAP(0x5a)
    228         BADTRAP(0x5b)
    229         BADTRAP(0x5c)
    230         BADTRAP(0x5d)
    231         BADTRAP(0x5e)
    232         BADTRAP(0x5f)
    233         BADTRAP(0x60)
    234         BADTRAP(0x61)
    235         BADTRAP(0x62)
    236         BADTRAP(0x63)
    237         BADTRAP(0x64)
    238         BADTRAP(0x65)
    239         BADTRAP(0x66)
    240         BADTRAP(0x67)
    241         BADTRAP(0x68)
    242         BADTRAP(0x69)
    243         BADTRAP(0x6a)
    244         BADTRAP(0x6b)
    245         BADTRAP(0x6c)
    246         BADTRAP(0x6d)
    247         BADTRAP(0x6e)
    248         BADTRAP(0x6f)
    249         BADTRAP(0x70)
    250         BADTRAP(0x71)
    251         BADTRAP(0x72)
    252         BADTRAP(0x73)
    253         BADTRAP(0x74)
    254         BADTRAP(0x75)
    255         BADTRAP(0x76)
    256         BADTRAP(0x77)
    257         BADTRAP(0x78)
    258         BADTRAP(0x79)
    259         BADTRAP(0x7a)
    260         BADTRAP(0x7b)
    261         BADTRAP(0x7c)
    262         BADTRAP(0x7d)
    263         BADTRAP(0x7e)
    264         BADTRAP(0x7f)
    265 
     131        TRAP(0, reset_trap)
     132        BADTRAP(1)
     133        TRAP(2, illegal_instruction)
     134        TRAP(3, privileged_instruction)
     135        TRAP(4, fp_disabled)
     136        TRAP(5, window_overflow_trap)
     137        TRAP(6, window_underflow_trap)
     138        BADTRAP(7)
     139        BADTRAP(8)
     140        BADTRAP(9)
     141        BADTRAP(10)
     142        BADTRAP(11)
     143        BADTRAP(12)
     144        BADTRAP(13)
     145        BADTRAP(14)
     146        BADTRAP(15)
     147        BADTRAP(16)
     148        BADTRAP(17)
     149        BADTRAP(18)
     150        BADTRAP(19)
     151        BADTRAP(20)
     152        BADTRAP(21)
     153        BADTRAP(22)
     154        BADTRAP(23)
     155        BADTRAP(24)
     156        BADTRAP(25)
     157        BADTRAP(26)
     158        BADTRAP(27)
     159        BADTRAP(28)
     160        BADTRAP(29)
     161        BADTRAP(30)
     162        BADTRAP(31)
     163        BADTRAP(32)
     164        BADTRAP(33)
     165        BADTRAP(34)
     166        BADTRAP(35)
     167        BADTRAP(36)
     168        BADTRAP(37)
     169        BADTRAP(38)
     170        BADTRAP(39)
     171        BADTRAP(40)
     172        BADTRAP(41)
     173        BADTRAP(42)
     174        BADTRAP(43)
     175        BADTRAP(44)
     176        BADTRAP(45)
     177        BADTRAP(46)
     178        BADTRAP(47)
     179        BADTRAP(48)
     180        BADTRAP(49)
     181        BADTRAP(50)
     182        BADTRAP(51)
     183        BADTRAP(52)
     184        BADTRAP(53)
     185        BADTRAP(54)
     186        BADTRAP(55)
     187        BADTRAP(56)
     188        BADTRAP(57)
     189        BADTRAP(58)
     190        BADTRAP(59)
     191        BADTRAP(60)
     192        BADTRAP(61)
     193        BADTRAP(62)
     194        BADTRAP(63)
     195        BADTRAP(64)
     196        BADTRAP(65)
     197        BADTRAP(66)
     198        BADTRAP(67)
     199        BADTRAP(68)
     200        BADTRAP(69)
     201        BADTRAP(70)
     202        BADTRAP(71)
     203        BADTRAP(72)
     204        BADTRAP(73)
     205        BADTRAP(74)
     206        BADTRAP(75)
     207        BADTRAP(76)
     208        BADTRAP(77)
     209        BADTRAP(78)
     210        BADTRAP(79)
     211        BADTRAP(80)
     212        BADTRAP(81)
     213        BADTRAP(82)
     214        BADTRAP(83)
     215        BADTRAP(84)
     216        BADTRAP(85)
     217        BADTRAP(86)
     218        BADTRAP(87)
     219        BADTRAP(88)
     220        BADTRAP(89)
     221        BADTRAP(90)
     222        BADTRAP(91)
     223        BADTRAP(92)
     224        BADTRAP(93)
     225        BADTRAP(94)
     226        BADTRAP(95)
     227        BADTRAP(96)
     228        BADTRAP(97)
     229        BADTRAP(98)
     230        BADTRAP(99)
     231        BADTRAP(100)
     232        BADTRAP(101)
     233        BADTRAP(102)
     234        BADTRAP(103)
     235
Note: See TracChangeset for help on using the changeset viewer.