diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2018-12-05 12:48:19 -0800 |
---|---|---|
committer | Max Filippov <jcmvbkbc@gmail.com> | 2018-12-05 12:53:07 -0800 |
commit | 037602705109ec2ab96340bea93ad87daa3ac046 (patch) | |
tree | 616c10e2e60b8a6bfbe388366ea1c1c3f170dafb /arch/xtensa/kernel/head.S | |
parent | f37598be4e3896359e87c824be57ddddc280cc3f (diff) | |
download | linux-037602705109ec2ab96340bea93ad87daa3ac046.tar.gz linux-037602705109ec2ab96340bea93ad87daa3ac046.tar.bz2 linux-037602705109ec2ab96340bea93ad87daa3ac046.zip |
xtensa: don't use l32r opcode directly
xtensa assembler is capable of representing register loads with either
movi + addmi, l32r or const16, depending on the core configuration.
Don't use '.literal' and 'l32r' directly in the code, use 'movi' and let
the assembler relax them.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Diffstat (limited to 'arch/xtensa/kernel/head.S')
-rw-r--r-- | arch/xtensa/kernel/head.S | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/arch/xtensa/kernel/head.S b/arch/xtensa/kernel/head.S index 9053a5622d2c..da08e75100ab 100644 --- a/arch/xtensa/kernel/head.S +++ b/arch/xtensa/kernel/head.S @@ -59,10 +59,6 @@ ENTRY(_start) .align 4 .literal_position -.Lstartup: - .word _startup - - .align 4 _SetupOCD: /* * Initialize WB, WS, and clear PS.EXCM (to allow loop instructions). @@ -99,12 +95,12 @@ _SetupMMU: 1: #endif #endif - .end no-absolute-literals - l32r a0, .Lstartup + movi a0, _startup jx a0 ENDPROC(_start) + .end no-absolute-literals __REF .literal_position |