ia64_os_mca_dispatch:
// Serialize all MCA processing
-// movl r2=ia64_mca_serialize
mov r3=1;;
-// DATA_VA_TO_PA(r2);;
LOAD_PHYSICAL(p0,r2,ia64_mca_serialize);;
ia64_os_mca_spin:
xchg8 r4=[r2],r3;;
ia64_os_mca_done_dump:
-// movl r16=__pa(ia64_sal_to_os_handoff_state)+56
LOAD_PHYSICAL(p0,r16,ia64_sal_to_os_handoff_state+56)
;;
ld8 r18=[r16] // Get processor state parameter on existing PALE_CHECK.
// Purge percpu data TC entries.
begin_tlb_purge_and_reload:
mov r16=cr.lid
-// movl r17=__pa(ia64_mca_tlb_list) // Physical address of ia64_mca_tlb_list
LOAD_PHYSICAL(p0,r17,ia64_mca_tlb_list) // Physical address of ia64_mca_tlb_list
mov r19=0
mov r20=NR_CPUS
mov r23=r17 // save current ia64_mca_percpu_info addr pointer.
adds r17=16,r17
;;
- .global aegl
-aegl:
ld8 r18=[r17],8 // r18=ptce_base
;;
ld4 r19=[r17],4 // r19=ptce_count[0]
ia64_os_mca_proc_state_dump:
// Save bank 1 GRs 16-31 which will be used by c-language code when we switch
// to virtual addressing mode.
-// movl r2=ia64_mca_proc_state_dump;; // Os state dump area
-// DATA_VA_TO_PA(r2) // convert to to physical address
LOAD_PHYSICAL(p0,r2,ia64_mca_proc_state_dump)// convert OS state dump area to physical address
// save ar.NaT