Changeset 138 for trunk/hal/x86_64/core/hal_kentry.S
- Timestamp:
- Jul 4, 2017, 12:05:39 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/hal/x86_64/core/hal_kentry.S
r89 r138 156 156 iretq 157 157 158 /* 159 * The XCU interrupt entries. 160 */ 161 162 #define XCU_WTI_ENTRY(n) \ 163 ASM_ENTRY(x86_xcu_wti_ ## n) \ 164 pushq $0 ; \ 165 pushq $T_ASTFLT ; \ 166 INTR_SAVE_REGS ; \ 167 ; \ 168 movq $(APIC_FAKE_STATUS_WTI|n),CPUVAR(APIC_FAKE_STATUS); \ 169 call hal_do_interrupt; \ 170 ; \ 171 INTR_RESTORE_REGS ; \ 172 addq $16,%rsp ; \ 173 iretq 174 175 #define XCU_HWI_ENTRY(n) \ 176 ASM_ENTRY(x86_xcu_hwi_ ## n) \ 177 pushq $0 ; \ 178 pushq $T_ASTFLT ; \ 179 INTR_SAVE_REGS ; \ 180 ; \ 181 movq $(APIC_FAKE_STATUS_HWI|n),CPUVAR(APIC_FAKE_STATUS); \ 182 call hal_do_interrupt; \ 183 ; \ 184 INTR_RESTORE_REGS ; \ 185 addq $16,%rsp ; \ 186 iretq 187 188 #define XCU_PTI_ENTRY(n) \ 189 ASM_ENTRY(x86_xcu_pti_ ## n) \ 190 pushq $0 ; \ 191 pushq $T_ASTFLT ; \ 192 INTR_SAVE_REGS ; \ 193 ; \ 194 movq $(APIC_FAKE_STATUS_PTI|n),CPUVAR(APIC_FAKE_STATUS); \ 195 call hal_do_interrupt; \ 196 ; \ 197 INTR_RESTORE_REGS ; \ 198 addq $16,%rsp ; \ 199 iretq 200 201 XCU_WTI_ENTRY(0) 202 XCU_HWI_ENTRY(0) 203 XCU_PTI_ENTRY(0) 204 158 205 /* 159 206 * Arguments pushed on the stack: … … 198 245 x86_intrs: 199 246 .quad x86_lapic_spurious 247 .quad x86_xcu_wti_0 248 .quad x86_xcu_hwi_0 249 .quad x86_xcu_pti_0 250 200 251 .quad x86_lapic_timer 201 252 .quad x86_ioapic_keyboard
Note: See TracChangeset
for help on using the changeset viewer.