Rev 2787 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2787 | Rev 3042 | ||
---|---|---|---|
Line 92... | Line 92... | ||
92 | "repe cmpsb\n\t" |
92 | "repe cmpsb\n\t" |
93 | "je 1f\n\t" |
93 | "je 1f\n\t" |
94 | "movl %3, %0\n\t" |
94 | "movl %3, %0\n\t" |
95 | "addl $1, %0\n\t" |
95 | "addl $1, %0\n\t" |
96 | "1:\n" |
96 | "1:\n" |
97 | : "=a" (ret), "=%S" (d0), "=&D" (d1), "=&c" (d2) |
97 | : "=a" (ret), "=&S" (d0), "=&D" (d1), "=&c" (d2) |
98 | : "0" (0), "1" ((unative_t) src), "2" ((unative_t) dst), "3" ((unative_t) cnt) |
98 | : "0" (0), "1" ((unative_t) src), "2" ((unative_t) dst), "3" ((unative_t) cnt) |
99 | ); |
99 | ); |
100 | 100 | ||
101 | return ret; |
101 | return ret; |
102 | } |
102 | } |
Line 114... | Line 114... | ||
114 | { |
114 | { |
115 | uint32_t d0, d1; |
115 | uint32_t d0, d1; |
116 | 116 | ||
117 | asm volatile ( |
117 | asm volatile ( |
118 | "rep stosw\n\t" |
118 | "rep stosw\n\t" |
119 | : "=&D" (d0), "=&c" (d1), "=a" (x) |
119 | : "=&D" (d0), "=&c" (d1), "=&a" (x) |
120 | : "0" (dst), "1" (cnt), "2" (x) |
120 | : "0" (dst), "1" (cnt), "2" (x) |
121 | : "memory" |
121 | : "memory" |
122 | ); |
122 | ); |
123 | 123 | ||
124 | } |
124 | } |
Line 136... | Line 136... | ||
136 | { |
136 | { |
137 | uint32_t d0, d1; |
137 | uint32_t d0, d1; |
138 | 138 | ||
139 | asm volatile ( |
139 | asm volatile ( |
140 | "rep stosb\n\t" |
140 | "rep stosb\n\t" |
141 | : "=&D" (d0), "=&c" (d1), "=a" (x) |
141 | : "=&D" (d0), "=&c" (d1), "=&a" (x) |
142 | : "0" (dst), "1" (cnt), "2" (x) |
142 | : "0" (dst), "1" (cnt), "2" (x) |
143 | : "memory" |
143 | : "memory" |
144 | ); |
144 | ); |
145 | 145 | ||
146 | } |
146 | } |