diff options
author | Denys Vlasenko <dvlasenk@redhat.com> | 2015-03-31 13:00:10 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2015-04-01 07:17:39 -0400 |
commit | a734b4a23e4b5a5bba577d11b6e2ff21f6ca4fce (patch) | |
tree | 3f37abc5fe869f2f347d9cf93c14e78cdcaafd88 | |
parent | 36acef2510853e2831047ca9e22d333ba7a1047b (diff) |
x86/asm: Replace "MOVQ $imm, %reg" with MOVL
There is no reason to use MOVQ to load a non-negative immediate
constant value into a 64-bit register. MOVL does the same, since
the upper 32 bits are zero-extended by the CPU.
This makes the code a bit smaller, while leaving functionality
unchanged.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
Cc: Alexei Starovoitov <ast@plumgrid.com>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Will Drewry <wad@chromium.org>
Link: http://lkml.kernel.org/r/1427821211-25099-8-git-send-email-dvlasenk@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r-- | arch/x86/crypto/crc32c-pcl-intel-asm_64.S | 2 | ||||
-rw-r--r-- | arch/x86/crypto/twofish-x86_64-asm_64.S | 4 | ||||
-rw-r--r-- | arch/x86/kernel/relocate_kernel_64.S | 8 |
3 files changed, 7 insertions, 7 deletions
diff --git a/arch/x86/crypto/crc32c-pcl-intel-asm_64.S b/arch/x86/crypto/crc32c-pcl-intel-asm_64.S index 26d49ebae040..225be06edc80 100644 --- a/arch/x86/crypto/crc32c-pcl-intel-asm_64.S +++ b/arch/x86/crypto/crc32c-pcl-intel-asm_64.S | |||
@@ -178,7 +178,7 @@ continue_block: | |||
178 | ## 2a) PROCESS FULL BLOCKS: | 178 | ## 2a) PROCESS FULL BLOCKS: |
179 | ################################################################ | 179 | ################################################################ |
180 | full_block: | 180 | full_block: |
181 | movq $128,%rax | 181 | movl $128,%eax |
182 | lea 128*8*2(block_0), block_1 | 182 | lea 128*8*2(block_0), block_1 |
183 | lea 128*8*3(block_0), block_2 | 183 | lea 128*8*3(block_0), block_2 |
184 | add $128*8*1, block_0 | 184 | add $128*8*1, block_0 |
diff --git a/arch/x86/crypto/twofish-x86_64-asm_64.S b/arch/x86/crypto/twofish-x86_64-asm_64.S index a039d21986a2..a350c990dc86 100644 --- a/arch/x86/crypto/twofish-x86_64-asm_64.S +++ b/arch/x86/crypto/twofish-x86_64-asm_64.S | |||
@@ -264,7 +264,7 @@ ENTRY(twofish_enc_blk) | |||
264 | movq R1, 8(%rsi) | 264 | movq R1, 8(%rsi) |
265 | 265 | ||
266 | popq R1 | 266 | popq R1 |
267 | movq $1,%rax | 267 | movl $1,%eax |
268 | ret | 268 | ret |
269 | ENDPROC(twofish_enc_blk) | 269 | ENDPROC(twofish_enc_blk) |
270 | 270 | ||
@@ -316,6 +316,6 @@ ENTRY(twofish_dec_blk) | |||
316 | movq R1, 8(%rsi) | 316 | movq R1, 8(%rsi) |
317 | 317 | ||
318 | popq R1 | 318 | popq R1 |
319 | movq $1,%rax | 319 | movl $1,%eax |
320 | ret | 320 | ret |
321 | ENDPROC(twofish_dec_blk) | 321 | ENDPROC(twofish_dec_blk) |
diff --git a/arch/x86/kernel/relocate_kernel_64.S b/arch/x86/kernel/relocate_kernel_64.S index 04cb1790a596..98111b38ebfd 100644 --- a/arch/x86/kernel/relocate_kernel_64.S +++ b/arch/x86/kernel/relocate_kernel_64.S | |||
@@ -123,7 +123,7 @@ identity_mapped: | |||
123 | * Set cr4 to a known state: | 123 | * Set cr4 to a known state: |
124 | * - physical address extension enabled | 124 | * - physical address extension enabled |
125 | */ | 125 | */ |
126 | movq $X86_CR4_PAE, %rax | 126 | movl $X86_CR4_PAE, %eax |
127 | movq %rax, %cr4 | 127 | movq %rax, %cr4 |
128 | 128 | ||
129 | jmp 1f | 129 | jmp 1f |
@@ -246,17 +246,17 @@ swap_pages: | |||
246 | movq %rsi, %rax | 246 | movq %rsi, %rax |
247 | 247 | ||
248 | movq %r10, %rdi | 248 | movq %r10, %rdi |
249 | movq $512, %rcx | 249 | movl $512, %ecx |
250 | rep ; movsq | 250 | rep ; movsq |
251 | 251 | ||
252 | movq %rax, %rdi | 252 | movq %rax, %rdi |
253 | movq %rdx, %rsi | 253 | movq %rdx, %rsi |
254 | movq $512, %rcx | 254 | movl $512, %ecx |
255 | rep ; movsq | 255 | rep ; movsq |
256 | 256 | ||
257 | movq %rdx, %rdi | 257 | movq %rdx, %rdi |
258 | movq %r10, %rsi | 258 | movq %r10, %rsi |
259 | movq $512, %rcx | 259 | movl $512, %ecx |
260 | rep ; movsq | 260 | rep ; movsq |
261 | 261 | ||
262 | lea PAGE_SIZE(%rax), %rsi | 262 | lea PAGE_SIZE(%rax), %rsi |