diff options
Diffstat (limited to 'arch/ia64/include/asm/xen/inst.h')
| -rw-r--r-- | arch/ia64/include/asm/xen/inst.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/arch/ia64/include/asm/xen/inst.h b/arch/ia64/include/asm/xen/inst.h index 19c2ae1d878a..c53a47611208 100644 --- a/arch/ia64/include/asm/xen/inst.h +++ b/arch/ia64/include/asm/xen/inst.h | |||
| @@ -33,6 +33,9 @@ | |||
| 33 | #define __paravirt_work_processed_syscall_target \ | 33 | #define __paravirt_work_processed_syscall_target \ |
| 34 | xen_work_processed_syscall | 34 | xen_work_processed_syscall |
| 35 | 35 | ||
| 36 | #define paravirt_fsyscall_table xen_fsyscall_table | ||
| 37 | #define paravirt_fsys_bubble_down xen_fsys_bubble_down | ||
| 38 | |||
| 36 | #define MOV_FROM_IFA(reg) \ | 39 | #define MOV_FROM_IFA(reg) \ |
| 37 | movl reg = XSI_IFA; \ | 40 | movl reg = XSI_IFA; \ |
| 38 | ;; \ | 41 | ;; \ |
| @@ -110,6 +113,27 @@ | |||
| 110 | .endm | 113 | .endm |
| 111 | #define MOV_FROM_PSR(pred, reg, clob) __MOV_FROM_PSR pred, reg, clob | 114 | #define MOV_FROM_PSR(pred, reg, clob) __MOV_FROM_PSR pred, reg, clob |
| 112 | 115 | ||
| 116 | /* assuming ar.itc is read with interrupt disabled. */ | ||
| 117 | #define MOV_FROM_ITC(pred, pred_clob, reg, clob) \ | ||
| 118 | (pred) movl clob = XSI_ITC_OFFSET; \ | ||
| 119 | ;; \ | ||
| 120 | (pred) ld8 clob = [clob]; \ | ||
| 121 | (pred) mov reg = ar.itc; \ | ||
| 122 | ;; \ | ||
| 123 | (pred) add reg = reg, clob; \ | ||
| 124 | ;; \ | ||
| 125 | (pred) movl clob = XSI_ITC_LAST; \ | ||
| 126 | ;; \ | ||
| 127 | (pred) ld8 clob = [clob]; \ | ||
| 128 | ;; \ | ||
| 129 | (pred) cmp.geu.unc pred_clob, p0 = clob, reg; \ | ||
| 130 | ;; \ | ||
| 131 | (pred_clob) add reg = 1, clob; \ | ||
| 132 | ;; \ | ||
| 133 | (pred) movl clob = XSI_ITC_LAST; \ | ||
| 134 | ;; \ | ||
| 135 | (pred) st8 [clob] = reg | ||
| 136 | |||
| 113 | 137 | ||
| 114 | #define MOV_TO_IFA(reg, clob) \ | 138 | #define MOV_TO_IFA(reg, clob) \ |
| 115 | movl clob = XSI_IFA; \ | 139 | movl clob = XSI_IFA; \ |
| @@ -362,6 +386,10 @@ | |||
| 362 | #define RSM_PSR_DT \ | 386 | #define RSM_PSR_DT \ |
| 363 | XEN_HYPER_RSM_PSR_DT | 387 | XEN_HYPER_RSM_PSR_DT |
| 364 | 388 | ||
| 389 | #define RSM_PSR_BE_I(clob0, clob1) \ | ||
| 390 | RSM_PSR_I(p0, clob0, clob1); \ | ||
| 391 | rum psr.be | ||
| 392 | |||
| 365 | #define SSM_PSR_DT_AND_SRLZ_I \ | 393 | #define SSM_PSR_DT_AND_SRLZ_I \ |
| 366 | XEN_HYPER_SSM_PSR_DT | 394 | XEN_HYPER_SSM_PSR_DT |
| 367 | 395 | ||
