summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimothy Gu <timothygu99@gmail.com>2015-05-25 16:02:33 -0700
committerMichael Niedermayer <michaelni@gmx.at>2015-05-28 00:08:37 +0200
commit204b228a1d884343dbd974e6326a06901736b3b4 (patch)
treef9e6d4f853554bb6e929567b680554c4cfaecd58
parent2b388e6ddec8dd7a01105273fe47c6e93c762e34 (diff)
x86inc: Clear __SECT__
This commit silences warning(s) like: libavcodec/x86/fft.asm:93: warning: section flags ignored on section redeclaration The cause of this warning is that because `struc` and `endstruc` attempts to revert to the previous section state [1]. The section state is stored in the macro __SECT__, defined by x86inc.asm to be `.note.GNU-stack ...`, through the `SECTION` directive [2]. Thus, the `.note.GNU-stack` section is defined twice (once in x86inc.asm, once during `endstruc`), causing the warning. That is the first part of the commit: using the primitive `[section]` format for .note.GNU-stack etc., which does not update `__SECT__` [2]. That fixes only half of the problem. Even without any `SECTION` directives, `__SECT__` is predefined as `.text`, which conflicting with the later `SECTION_TEXT` (which expands to `.text align=16`). [1]: http://www.nasm.us/doc/nasmdoc6.html#section-6.4 [2]: http://www.nasm.us/doc/nasmdoc6.html#section-6.3 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavutil/x86/x86inc.asm6
1 files changed, 5 insertions, 1 deletions
diff --git a/libavutil/x86/x86inc.asm b/libavutil/x86/x86inc.asm
index f1b4b85a87..12779f57f3 100644
--- a/libavutil/x86/x86inc.asm
+++ b/libavutil/x86/x86inc.asm
@@ -722,9 +722,13 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg, jge, jng, jnge, ja, jae,
; This is needed for ELF, otherwise the GNU linker assumes the stack is
; executable by default.
%ifidn __OUTPUT_FORMAT__,elf
-SECTION .note.GNU-stack noalloc noexec nowrite progbits
+[section .note.GNU-stack noalloc noexec nowrite progbits]
%endif
+; Overrides the default .text section.
+; Silences warnings when defining structures.
+%define __SECT__
+
; cpuflags
%assign cpuflags_mmx (1<<0)