summaryrefslogtreecommitdiff
path: root/libavutil/x86
diff options
context:
space:
mode:
authorHenrik Gramner <henrik@gramner.com>2015-10-16 21:28:49 +0200
committerHenrik Gramner <henrik@gramner.com>2016-01-21 23:19:46 +0100
commitd3662777e070b297ead7c23883d1a7e77d37193f (patch)
treeb39265e83a90068942b1a61cdb361bf700e97867 /libavutil/x86
parent87b587d4fe91064325884bbd4130ef079e6c3abe (diff)
x86inc: Avoid creating unnecessary local labels
The REP_RET workaround is only needed on old AMD cpus, and the labels clutter up the symbol table and confuse debugging/profiling tools, so use EQU to create SHN_ABS symbols instead of creating local labels. Furthermore, skip the workaround completely in functions that definitely won't run on such cpus. Note that EQU is just creating a local label when using nasm instead of yasm. This is probably a bug, but at least it doesn't break anything.
Diffstat (limited to 'libavutil/x86')
-rw-r--r--libavutil/x86/x86inc.asm6
1 files changed, 4 insertions, 2 deletions
diff --git a/libavutil/x86/x86inc.asm b/libavutil/x86/x86inc.asm
index a4fce72a62..6259c69aa1 100644
--- a/libavutil/x86/x86inc.asm
+++ b/libavutil/x86/x86inc.asm
@@ -648,8 +648,10 @@ DECLARE_ARG 7, 8, 9, 10, 11, 12, 13, 14
%rep %0
%macro %1 1-2 %1
%2 %1
- %%branch_instr:
- %xdefine last_branch_adr %%branch_instr
+ %if notcpuflag(ssse3)
+ %%branch_instr equ $
+ %xdefine last_branch_adr %%branch_instr
+ %endif
%endmacro
%rotate 1
%endrep