Enable use of --text-section-literals in Xtensa port (#485)

Patch submitted by customer on forums here: https://forums.freertos.org/t/cannot-compile-xtensa-port-assembly-with-text-section-literals/14838
This commit is contained in:
Archit Gupta 2022-04-11 15:07:08 -07:00 committed by GitHub
parent 40c37bd3ab
commit b00250372e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 0 deletions

View File

@ -62,6 +62,7 @@ NOERROR: .error "C preprocessor needed for this file: make sure its filename\
#endif #endif
.text .text
.literal_position
/******************************************************************************* /*******************************************************************************

View File

@ -306,6 +306,7 @@
.global _xt_panic .global _xt_panic
.type _xt_panic,@function .type _xt_panic,@function
.align 4 .align 4
.literal_position
_xt_panic: _xt_panic:
#ifdef XT_SIMULATOR #ifdef XT_SIMULATOR
@ -386,6 +387,7 @@ Debug Exception.
.section .DebugExceptionVector.text, "ax" .section .DebugExceptionVector.text, "ax"
.global _DebugExceptionVector .global _DebugExceptionVector
.align 4 .align 4
.literal_position
_DebugExceptionVector: _DebugExceptionVector:
@ -424,6 +426,7 @@ Double exceptions are not a normal occurrence. They indicate a bug of some kind.
.section .DoubleExceptionVector.text, "ax" .section .DoubleExceptionVector.text, "ax"
.global _DoubleExceptionVector .global _DoubleExceptionVector
.align 4 .align 4
.literal_position
_DoubleExceptionVector: _DoubleExceptionVector:
@ -447,6 +450,7 @@ Kernel Exception (including Level 1 Interrupt from kernel mode).
.section .KernelExceptionVector.text, "ax" .section .KernelExceptionVector.text, "ax"
.global _KernelExceptionVector .global _KernelExceptionVector
.align 4 .align 4
.literal_position
_KernelExceptionVector: _KernelExceptionVector:
@ -478,6 +482,7 @@ User Exception (including Level 1 Interrupt from user mode).
.global _UserExceptionVector .global _UserExceptionVector
.type _UserExceptionVector,@function .type _UserExceptionVector,@function
.align 4 .align 4
.literal_position
_UserExceptionVector: _UserExceptionVector:
@ -1032,6 +1037,8 @@ _xt_lowint1:
.global _Level2Vector .global _Level2Vector
.type _Level2Vector,@function .type _Level2Vector,@function
.align 4 .align 4
.literal_position
_Level2Vector: _Level2Vector:
wsr a0, EXCSAVE_2 /* preserve a0 */ wsr a0, EXCSAVE_2 /* preserve a0 */
call0 _xt_medint2 /* load interrupt handler */ call0 _xt_medint2 /* load interrupt handler */
@ -1103,6 +1110,8 @@ _xt_medint2_exit:
.global _Level3Vector .global _Level3Vector
.type _Level3Vector,@function .type _Level3Vector,@function
.align 4 .align 4
.literal_position
_Level3Vector: _Level3Vector:
wsr a0, EXCSAVE_3 /* preserve a0 */ wsr a0, EXCSAVE_3 /* preserve a0 */
call0 _xt_medint3 /* load interrupt handler */ call0 _xt_medint3 /* load interrupt handler */
@ -1174,6 +1183,8 @@ _xt_medint3_exit:
.global _Level4Vector .global _Level4Vector
.type _Level4Vector,@function .type _Level4Vector,@function
.align 4 .align 4
.literal_position
_Level4Vector: _Level4Vector:
wsr a0, EXCSAVE_4 /* preserve a0 */ wsr a0, EXCSAVE_4 /* preserve a0 */
call0 _xt_medint4 /* load interrupt handler */ call0 _xt_medint4 /* load interrupt handler */
@ -1244,6 +1255,8 @@ _xt_medint4_exit:
.global _Level5Vector .global _Level5Vector
.type _Level5Vector,@function .type _Level5Vector,@function
.align 4 .align 4
.literal_position
_Level5Vector: _Level5Vector:
wsr a0, EXCSAVE_5 /* preserve a0 */ wsr a0, EXCSAVE_5 /* preserve a0 */
call0 _xt_medint5 /* load interrupt handler */ call0 _xt_medint5 /* load interrupt handler */
@ -1314,6 +1327,8 @@ _xt_medint5_exit:
.global _Level6Vector .global _Level6Vector
.type _Level6Vector,@function .type _Level6Vector,@function
.align 4 .align 4
.literal_position
_Level6Vector: _Level6Vector:
wsr a0, EXCSAVE_6 /* preserve a0 */ wsr a0, EXCSAVE_6 /* preserve a0 */
call0 _xt_medint6 /* load interrupt handler */ call0 _xt_medint6 /* load interrupt handler */