diff options
| author | Andi Kleen <ak@suse.de> | 2006-09-26 04:52:39 -0400 |
|---|---|---|
| committer | Andi Kleen <andi@basil.nowhere.org> | 2006-09-26 04:52:39 -0400 |
| commit | baf5695dd1a49bb48a3daf08726d7f243f42e97e (patch) | |
| tree | 7479fb8562395e168654d931db0ad89ba8ccd39c /include | |
| parent | 96e540492ab54423f3693958329e095878f1f12b (diff) | |
[PATCH] Use %c instead of %P modifier in pda access
Apparently that is the more official way to get numbers without $ in inline
assembly
Signed-off-by: Andi Kleen <ak@suse.de>
Diffstat (limited to 'include')
| -rw-r--r-- | include/asm-x86_64/pda.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/include/asm-x86_64/pda.h b/include/asm-x86_64/pda.h index e7773e0af865..c2aac96ac323 100644 --- a/include/asm-x86_64/pda.h +++ b/include/asm-x86_64/pda.h | |||
| @@ -51,13 +51,13 @@ extern struct x8664_pda _proxy_pda; | |||
| 51 | typedef typeof(_proxy_pda.field) T__; \ | 51 | typedef typeof(_proxy_pda.field) T__; \ |
| 52 | switch (sizeof(_proxy_pda.field)) { \ | 52 | switch (sizeof(_proxy_pda.field)) { \ |
| 53 | case 2: \ | 53 | case 2: \ |
| 54 | asm(op "w %1,%%gs:%P2" : "+m" (_proxy_pda.field) : \ | 54 | asm(op "w %1,%%gs:%c2" : "+m" (_proxy_pda.field) : \ |
| 55 | "ri" ((T__)val),"i"(pda_offset(field))); break; \ | 55 | "ri" ((T__)val),"i"(pda_offset(field))); break; \ |
| 56 | case 4: \ | 56 | case 4: \ |
| 57 | asm(op "l %1,%%gs:%P2" : "+m" (_proxy_pda.field) : \ | 57 | asm(op "l %1,%%gs:%c2" : "+m" (_proxy_pda.field) : \ |
| 58 | "ri" ((T__)val),"i"(pda_offset(field))); break; \ | 58 | "ri" ((T__)val),"i"(pda_offset(field))); break; \ |
| 59 | case 8: \ | 59 | case 8: \ |
| 60 | asm(op "q %1,%%gs:%P2": "+m" (_proxy_pda.field) : \ | 60 | asm(op "q %1,%%gs:%c2": "+m" (_proxy_pda.field) : \ |
| 61 | "ri" ((T__)val),"i"(pda_offset(field))); break; \ | 61 | "ri" ((T__)val),"i"(pda_offset(field))); break; \ |
| 62 | default: __bad_pda_field(); \ | 62 | default: __bad_pda_field(); \ |
| 63 | } \ | 63 | } \ |
| @@ -67,13 +67,13 @@ default: __bad_pda_field(); \ | |||
| 67 | typeof(_proxy_pda.field) ret__; \ | 67 | typeof(_proxy_pda.field) ret__; \ |
| 68 | switch (sizeof(_proxy_pda.field)) { \ | 68 | switch (sizeof(_proxy_pda.field)) { \ |
| 69 | case 2: \ | 69 | case 2: \ |
| 70 | asm(op "w %%gs:%P1,%0":"=r" (ret__):\ | 70 | asm(op "w %%gs:%c1,%0":"=r" (ret__):\ |
| 71 | "i" (pda_offset(field)), "m" (_proxy_pda.field)); break;\ | 71 | "i" (pda_offset(field)), "m" (_proxy_pda.field)); break;\ |
| 72 | case 4: \ | 72 | case 4: \ |
| 73 | asm(op "l %%gs:%P1,%0":"=r" (ret__):\ | 73 | asm(op "l %%gs:%c1,%0":"=r" (ret__):\ |
| 74 | "i" (pda_offset(field)), "m" (_proxy_pda.field)); break;\ | 74 | "i" (pda_offset(field)), "m" (_proxy_pda.field)); break;\ |
| 75 | case 8: \ | 75 | case 8: \ |
| 76 | asm(op "q %%gs:%P1,%0":"=r" (ret__):\ | 76 | asm(op "q %%gs:%c1,%0":"=r" (ret__):\ |
| 77 | "i" (pda_offset(field)), "m" (_proxy_pda.field)); break;\ | 77 | "i" (pda_offset(field)), "m" (_proxy_pda.field)); break;\ |
| 78 | default: __bad_pda_field(); \ | 78 | default: __bad_pda_field(); \ |
| 79 | } \ | 79 | } \ |
