summaryrefslogtreecommitdiffstats
path: root/lib/libz/contrib/asm686
diff options
context:
space:
mode:
authordelphij <delphij@FreeBSD.org>2012-06-21 21:47:08 +0000
committerdelphij <delphij@FreeBSD.org>2012-06-21 21:47:08 +0000
commitf1aa6057552263943bc055b803d1254994d5f139 (patch)
tree77406785fe7cd37081c5a9cabb2dc128be5b4716 /lib/libz/contrib/asm686
parent47822f6690f1e74d6e808a2d97e6ed1ce4ad5089 (diff)
parent5ecec51ae55e160069af12ac1c8fb3c4612e498d (diff)
downloadFreeBSD-src-f1aa6057552263943bc055b803d1254994d5f139.zip
FreeBSD-src-f1aa6057552263943bc055b803d1254994d5f139.tar.gz
MFV: Update zlib to 1.2.7.
(x86 assembler optimization disabled for now because it requires the new .cfi_* directives that is not supported by base system binutils). MFC after: 1 week
Diffstat (limited to 'lib/libz/contrib/asm686')
-rw-r--r--lib/libz/contrib/asm686/match.S16
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/libz/contrib/asm686/match.S b/lib/libz/contrib/asm686/match.S
index 06817e1..fa42109 100644
--- a/lib/libz/contrib/asm686/match.S
+++ b/lib/libz/contrib/asm686/match.S
@@ -83,17 +83,25 @@
.text
/* uInt longest_match(deflate_state *deflatestate, IPos curmatch) */
+.cfi_sections .debug_frame
longest_match:
+.cfi_startproc
/* Save registers that the compiler may be using, and adjust %esp to */
/* make room for our stack frame. */
pushl %ebp
+ .cfi_def_cfa_offset 8
+ .cfi_offset ebp, -8
pushl %edi
+ .cfi_def_cfa_offset 12
pushl %esi
+ .cfi_def_cfa_offset 16
pushl %ebx
+ .cfi_def_cfa_offset 20
subl $LocalVarsSize, %esp
+ .cfi_def_cfa_offset LocalVarsSize+20
/* Retrieve the function arguments. %ecx will hold cur_match */
/* throughout the entire function. %edx will hold the pointer to the */
@@ -108,7 +116,7 @@ longest_match:
/* if (s->prev_length >= s->good_match) { */
/* chain_length >>= 2; */
/* } */
-
+
movl dsPrevLen(%edx), %eax
movl dsGoodMatch(%edx), %ebx
cmpl %ebx, %eax
@@ -336,8 +344,14 @@ LookaheadRet:
/* Restore the stack and return from whence we came. */
addl $LocalVarsSize, %esp
+ .cfi_def_cfa_offset 20
popl %ebx
+ .cfi_def_cfa_offset 16
popl %esi
+ .cfi_def_cfa_offset 12
popl %edi
+ .cfi_def_cfa_offset 8
popl %ebp
+ .cfi_def_cfa_offset 4
+.cfi_endproc
match_init: ret
OpenPOWER on IntegriCloud