From patchwork Thu Sep 22 09:51:36 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 76732 Delivered-To: patch@linaro.org Received: by 10.140.106.72 with SMTP id d66csp2511879qgf; Thu, 22 Sep 2016 03:16:13 -0700 (PDT) X-Received: by 10.55.157.11 with SMTP id g11mr1017491qke.207.1474539373540; Thu, 22 Sep 2016 03:16:13 -0700 (PDT) Return-Path: Received: from lists.gnu.org (lists.gnu.org. [208.118.235.17]) by mx.google.com with ESMTPS id z195si614715qka.155.2016.09.22.03.16.13 for (version=TLS1 cipher=AES128-SHA bits=128/128); Thu, 22 Sep 2016 03:16:13 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+patch=linaro.org@nongnu.org; dmarc=fail (p=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:35999 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bn136-0008Sy-QR for patch@linaro.org; Thu, 22 Sep 2016 06:16:12 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44654) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bn0gX-000529-1U for qemu-devel@nongnu.org; Thu, 22 Sep 2016 05:53:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bn0gK-0000L6-2n for qemu-devel@nongnu.org; Thu, 22 Sep 2016 05:52:52 -0400 Received: from mail-wm0-f52.google.com ([74.125.82.52]:38053) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bn0gJ-0000Kj-3N for qemu-devel@nongnu.org; Thu, 22 Sep 2016 05:52:40 -0400 Received: by mail-wm0-f52.google.com with SMTP id l132so138202264wmf.1 for ; Thu, 22 Sep 2016 02:52:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=references:user-agent:from:to:cc:subject:in-reply-to:date :message-id:mime-version; bh=cb2RK48lR1ucCi+T7CTzn0La44tqT2uBA+ocLmGZ+M8=; b=hGlHlfvIvszWVeam6o63Qipj81UNAP5ALW/QJ8DxFJGmxO/9TWW1d78TR6Y8nukoMl T0MLdN8uP1SJr/0AZiwZs2QvjujzGChTKH3hS9p3oC+6YC8+FFpZBSXTzEq2kpoX5tyk 0VaXP/aeN6rGiCANCsqyvhLYrt2TPiiiAxdOg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:references:user-agent:from:to:cc:subject :in-reply-to:date:message-id:mime-version; bh=cb2RK48lR1ucCi+T7CTzn0La44tqT2uBA+ocLmGZ+M8=; b=deCY5rWumbjZF/sox4nkjfM3Vrnbt3O5MZaPccYlcC+qu++GG0KfjzJY51aVfBmGOj XchSW8A7CGhln5rFG7gquQcJxWizGGQAJM4rj1TFjv81PAYdFiGEbBXv3JgsJQYozBJd Qo3pmviwCqLe6iP1O7dmMoiNOHVEj7rxJz6U7F22BRnYNtdXW4KqVcJwm7sKtBiFBO2j WdS/MhP1aCbUOyGPpsi6MOvq3I7V78+6EXqam21bAS6StBqNIeTkVp96EKWigHOxWPmT 4dY9GUsCNM5v+GiT5sdTdeHUzT3PwdFP3loCDC3ie5Hzs2Y0TJU30KyQ0+E2WEh+3Tvd 3nFQ== X-Gm-Message-State: AE9vXwMqdTUXdO0+HJsH7UHMlUFqjtUoR08LwDjuXw6dM0cz+Q1M0M6meVtxraBnDW89iw3d X-Received: by 10.28.170.73 with SMTP id t70mr6978358wme.32.1474537897858; Thu, 22 Sep 2016 02:51:37 -0700 (PDT) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id vs7sm1238445wjb.10.2016.09.22.02.51.36 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 22 Sep 2016 02:51:36 -0700 (PDT) Received: from zen (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTPS id 4D4613E019C; Thu, 22 Sep 2016 10:51:36 +0100 (BST) References: <20160919155139.28371-1-alex.bennee@linaro.org> <20160919155139.28371-8-alex.bennee@linaro.org> <20160919180614.GA8713@flamenco> <704acb80-5680-c375-7437-25b3230af599@redhat.com> <20160919190604.GA11819@flamenco> <94f52b22-3167-27d3-da60-7765b34d7c51@redhat.com> User-agent: mu4e 0.9.17; emacs 25.1.14 From: Alex =?utf-8?Q?Benn=C3=A9e?= To: Paolo Bonzini In-reply-to: <94f52b22-3167-27d3-da60-7765b34d7c51@redhat.com> Date: Thu, 22 Sep 2016 10:51:36 +0100 Message-ID: <87eg4cb6tz.fsf@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 74.125.82.52 Subject: Re: [Qemu-devel] [RFC 7/8] util/qht: atomically set b->hashes X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, mttcg@greensocs.com, nikunj@linux.vnet.ibm.com, peter.maydell@linaro.org, jan.kiszka@siemens.com, claudio.fontana@huawei.com, qemu-devel@nongnu.org, a.rigo@virtualopensystems.com, "Emilio G. Cota" , stefanha@redhat.com, mark.burton@greensocs.com, serge.fdrv@gmail.com, bobby.prani@gmail.com, fred.konrad@greensocs.com, rth@twiddle.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Paolo Bonzini writes: > On 19/09/2016 21:06, Emilio G. Cota wrote: >> Let me then just point out that this comes at a small perf loss. >> >> Running 'taskset -c 0 tests/qht-bench -n 1 -d 10' (i.e. all lookups) 10 times, >> we get: >> >> before the patch: >> $ ./mean.pl 34.04 34.24 34.38 34.25 34.18 34.51 34.46 34.44 34.29 34.08 >> 34.287 +- 0.160072900059109 >> after: >> $ ./mean.pl 33.94 34.00 33.52 33.46 33.55 33.71 34.27 34.06 34.28 34.58 >> 33.937 +- 0.374731014640279 >> >> But hey we can live with that. > > Hmm it shouldn't. I'll take a look at the generated assembly... AFAICT the main change is: cmp 0x0(%rbp),%ecx Becomes: mov 0x0(%rbp),%eax cmp %eax,%ecx There is a bunch of associated code motion and register changes also associated with it but that seems to be the sum change of the using atomic on x86. See the attached for the full side-by-side diff. -- Alex Bennée pre-atomic-qht.o -> pre-atomic-qht.o -> /tmp/pre-atomic-qht.o.S /tmp/pre-atomic-qht.o.S util/qht.o -> qht.o -> /tmp/qht.o.S /tmp/pre-atomic-qht.o.S pre-atomic-qht.o: file format elf64-x86-64 | util/qht.o: file format elf64-x86-64 Disassembly of section .text: Disassembly of section .text: 0000000000000000 : 0000000000000000 : qht_map_create(): qht_map_create(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:329 /home/alex/lsrc/qemu/qemu.git/util/qht.----:329 ----: push %rbp ----: push %rbp ----: push %rbx ----: push %rbx ----: mov %rdi,%rbp ----: mov %rdi,%rbp /home/alex/lsrc/qemu/qemu.git/util/qht.----:333 /home/alex/lsrc/qemu/qemu.git/util/qht.----:333 ----: mov $0x30,%edi ----: mov $0x30,%edi /home/alex/lsrc/qemu/qemu.git/util/qht.----:329 /home/alex/lsrc/qemu/qemu.git/util/qht.----:329 ----: sub $0x8,%rsp ----: sub $0x8,%rsp /home/alex/lsrc/qemu/qemu.git/util/qht.----:333 /home/alex/lsrc/qemu/qemu.git/util/qht.----:333 ----: callq 13 ----: callq 13 ----: mov %rax,%rbx ----: mov %rax,%rbx /home/alex/lsrc/qemu/qemu.git/util/qht.----:334 /home/alex/lsrc/qemu/qemu.git/util/qht.----:334 ----: mov %rbp,0x18(%rax) ----: mov %rbp,0x18(%rax) /home/alex/lsrc/qemu/qemu.git/util/qht.----:336 /home/alex/lsrc/qemu/qemu.git/util/qht.----:336 ----: movq $0x0,0x20(%rax) ----: movq $0x0,0x20(%rax) /home/alex/lsrc/qemu/qemu.git/util/qht.----:337 /home/alex/lsrc/qemu/qemu.git/util/qht.----:337 ----: mov %rbp,%rax ----: mov %rbp,%rax ----: shr $0x3,%rax ----: shr $0x3,%rax /home/alex/lsrc/qemu/qemu.git/util/qht.----:341 /home/alex/lsrc/qemu/qemu.git/util/qht.----:341 ----: test %rax,%rax ----: test %rax,%rax /home/alex/lsrc/qemu/qemu.git/util/qht.----:337 /home/alex/lsrc/qemu/qemu.git/util/qht.----:337 ----: mov %rax,0x28(%rbx) ----: mov %rax,0x28(%rbx) /home/alex/lsrc/qemu/qemu.git/util/qht.----:341 /home/alex/lsrc/qemu/qemu.git/util/qht.----:341 ----: je 9d ----: je 9d /home/alex/lsrc/qemu/qemu.git/util/qht.----:345 /home/alex/lsrc/qemu/qemu.git/util/qht.----:345 ----: mov %rbp,%rsi ----: mov %rbp,%rsi ----: mov $0x40,%edi ----: mov $0x40,%edi ----: shl $0x6,%rsi ----: shl $0x6,%rsi ----: callq 43 ----: callq 43 ----: mov %rax,0x10(%rbx) ----: mov %rax,0x10(%rbx) /home/alex/lsrc/qemu/qemu.git/util/qht.----:329 (discriminator 3) /home/alex/lsrc/qemu/qemu.git/util/qht.----:329 (discriminator 3) ----: mov %rax,%rdx ----: mov %rax,%rdx ----: xor %esi,%esi ----: xor %esi,%esi memset(): memset(): /usr/include/x86_64-linux-gnu/bits/string3.h:90 (discriminator 3) /usr/include/x86_64-linux-gnu/bits/string3.h:90 (discriminator 3) ----: xor %eax,%eax ----: xor %eax,%eax ----: jmp 54 ----: jmp 54 ----: mov 0x10(%rbx),%rdx ----: mov 0x10(%rbx),%rdx qht_map_create(): qht_map_create(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:348 (discriminator 3) /home/alex/lsrc/qemu/qemu.git/util/qht.----:348 (discriminator 3) ----: mov %rsi,%rcx ----: mov %rsi,%rcx /home/alex/lsrc/qemu/qemu.git/util/qht.----:347 (discriminator 3) /home/alex/lsrc/qemu/qemu.git/util/qht.----:347 (discriminator 3) ----: add $0x1,%rsi ----: add $0x1,%rsi /home/alex/lsrc/qemu/qemu.git/util/qht.----:348 (discriminator 3) /home/alex/lsrc/qemu/qemu.git/util/qht.----:348 (discriminator 3) ----: shl $0x6,%rcx ----: shl $0x6,%rcx ----: add %rcx,%rdx ----: add %rcx,%rdx memset(): memset(): /usr/include/x86_64-linux-gnu/bits/string3.h:90 (discriminator 3) /usr/include/x86_64-linux-gnu/bits/string3.h:90 (discriminator 3) ----: lea 0x8(%rdx),%rdi ----: lea 0x8(%rdx),%rdi ----: mov %rdx,%rcx ----: mov %rdx,%rcx ----: movq $0x0,0x38(%rdx) ----: movq $0x0,0x38(%rdx) ----: and $0xfffffffffffffff8,%rdi ----: and $0xfffffffffffffff8,%rdi ----: sub %rdi,%rcx ----: sub %rdi,%rcx ----: add $0x40,%ecx ----: add $0x40,%ecx ----: shr $0x3,%ecx ----: shr $0x3,%ecx qht_map_create(): qht_map_create(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:347 (discriminator 3) /home/alex/lsrc/qemu/qemu.git/util/qht.----:347 (discriminator 3) ----: cmp %rsi,%rbp ----: cmp %rsi,%rbp memset(): memset(): /usr/include/x86_64-linux-gnu/bits/string3.h:90 (discriminator 3) /usr/include/x86_64-linux-gnu/bits/string3.h:90 (discriminator 3) ----: rep stos %rax,%es:(%rdi) ----: rep stos %rax,%es:(%rdi) qemu_spin_init(): qemu_spin_init(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:71 (discriminator 3) /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:71 (discriminator 3) ----: movl $0x0,(%rdx) ----: movl $0x0,(%rdx) seqlock_init(): seqlock_init(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:28 (discriminator 3) /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:28 (discriminator 3) ----: movl $0x0,0x4(%rdx) ----: movl $0x0,0x4(%rdx) qht_map_create(): qht_map_create(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:347 (discriminator 3) /home/alex/lsrc/qemu/qemu.git/util/qht.----:347 (discriminator 3) ----: jne 50 ----: jne 50 /home/alex/lsrc/qemu/qemu.git/util/qht.----:351 /home/alex/lsrc/qemu/qemu.git/util/qht.----:351 ----: add $0x8,%rsp ----: add $0x8,%rsp ----: mov %rbx,%rax ----: mov %rbx,%rax ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: retq ----: retq /home/alex/lsrc/qemu/qemu.git/util/qht.----:345 /home/alex/lsrc/qemu/qemu.git/util/qht.----:345 ----: mov %rbp,%rsi ----: mov %rbp,%rsi ----: mov $0x40,%edi ----: mov $0x40,%edi /home/alex/lsrc/qemu/qemu.git/util/qht.----:342 /home/alex/lsrc/qemu/qemu.git/util/qht.----:342 ----: movq $0x1,0x28(%rbx) ----: movq $0x1,0x28(%rbx) /home/alex/lsrc/qemu/qemu.git/util/qht.----:345 /home/alex/lsrc/qemu/qemu.git/util/qht.----:345 ----: shl $0x6,%rsi ----: shl $0x6,%rsi ----: callq b6 ----: callq b6 /home/alex/lsrc/qemu/qemu.git/util/qht.----:347 /home/alex/lsrc/qemu/qemu.git/util/qht.----:347 ----: test %rbp,%rbp ----: test %rbp,%rbp /home/alex/lsrc/qemu/qemu.git/util/qht.----:345 /home/alex/lsrc/qemu/qemu.git/util/qht.----:345 ----: mov %rax,0x10(%rbx) ----: mov %rax,0x10(%rbx) /home/alex/lsrc/qemu/qemu.git/util/qht.----:347 /home/alex/lsrc/qemu/qemu.git/util/qht.----:347 ----: je 93 ----: je 93 ----: jmp 47 ----: jmp 47 ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) ----: nopw %cs:0x0(%rax,%rax,1) ----: nopw %cs:0x0(%rax,%rax,1) 00000000000000d0 : 00000000000000d0 : qht_map_destroy(): qht_map_destroy(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:318 /home/alex/lsrc/qemu/qemu.git/util/qht.----:318 ----: push %r12 ----: push %r12 ----: push %rbp ----: push %rbp ----: mov %rdi,%r12 ----: mov %rdi,%r12 ----: push %rbx ----: push %rbx /home/alex/lsrc/qemu/qemu.git/util/qht.----:321 /home/alex/lsrc/qemu/qemu.git/util/qht.----:321 ----: cmpq $0x0,0x18(%rdi) ----: cmpq $0x0,0x18(%rdi) ----: mov 0x10(%rdi),%rax ----: mov 0x10(%rdi),%rax ----: je 121 ----: je 121 ----: xor %ebp,%ebp ----: xor %ebp,%ebp ----: nopl 0x0(%rax) ----: nopl 0x0(%rax) ----: mov %rbp,%rdx ----: mov %rbp,%rdx ----: shl $0x6,%rdx ----: shl $0x6,%rdx ----: mov 0x38(%rax,%rdx,1),%rdi ----: mov 0x38(%rax,%rdx,1),%rdi qht_chain_destroy(): qht_chain_destroy(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:309 (discriminator 3) /home/alex/lsrc/qemu/qemu.git/util/qht.----:309 (discriminator 3) ----: test %rdi,%rdi ----: test %rdi,%rdi ----: je 116 ----: je 116 ----: nopl 0x0(%rax) ----: nopl 0x0(%rax) /home/alex/lsrc/qemu/qemu.git/util/qht.----:311 /home/alex/lsrc/qemu/qemu.git/util/qht.----:311 ----: mov 0x38(%rdi),%rbx ----: mov 0x38(%rdi),%rbx /home/alex/lsrc/qemu/qemu.git/util/qht.----:312 /home/alex/lsrc/qemu/qemu.git/util/qht.----:312 ----: callq 109 ----: callq 109 /home/alex/lsrc/qemu/qemu.git/util/qht.----:309 /home/alex/lsrc/qemu/qemu.git/util/qht.----:309 ----: test %rbx,%rbx ----: test %rbx,%rbx ----: mov %rbx,%rdi ----: mov %rbx,%rdi ----: jne 100 ----: jne 100 ----: mov 0x10(%r12),%rax ----: mov 0x10(%r12),%rax qht_map_destroy(): qht_map_destroy(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:321 (discriminator 3) /home/alex/lsrc/qemu/qemu.git/util/qht.----:321 (discriminator 3) ----: add $0x1,%rbp ----: add $0x1,%rbp ----: cmp %rbp,0x18(%r12) ----: cmp %rbp,0x18(%r12) ----: ja e8 ----: ja e8 /home/alex/lsrc/qemu/qemu.git/util/qht.----:324 /home/alex/lsrc/qemu/qemu.git/util/qht.----:324 ----: mov %rax,%rdi ----: mov %rax,%rdi ----: callq 129 ----: callq 129 /home/alex/lsrc/qemu/qemu.git/util/qht.----:326 /home/alex/lsrc/qemu/qemu.git/util/qht.----:326 ----: pop %rbx ----: pop %rbx /home/alex/lsrc/qemu/qemu.git/util/qht.----:325 /home/alex/lsrc/qemu/qemu.git/util/qht.----:325 ----: mov %r12,%rdi ----: mov %r12,%rdi /home/alex/lsrc/qemu/qemu.git/util/qht.----:326 /home/alex/lsrc/qemu/qemu.git/util/qht.----:326 ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 /home/alex/lsrc/qemu/qemu.git/util/qht.----:325 /home/alex/lsrc/qemu/qemu.git/util/qht.----:325 ----: jmpq 135 ----: jmpq 135 ----: nop ----: nop ----: nopw %cs:0x0(%rax,%rax,1) ----: nopw %cs:0x0(%rax,%rax,1) 0000000000000140 : | 0000000000000140 : > qht_entry_move(): > /home/alex/lsrc/qemu/qemu.git/util/qht.----:610 > ----: movslq %ecx,%rcx > ----: movslq %esi,%rsi > ----: mov 0x8(%rdx,%rcx,4),%r8d > ----: lea 0x0(,%rsi,4),%rax > /home/alex/lsrc/qemu/qemu.git/util/qht.----:611 > ----: shl $0x3,%rsi > /home/alex/lsrc/qemu/qemu.git/util/qht.----:610 > ----: mov %r8d,0x8(%rdi,%rax,1) > /home/alex/lsrc/qemu/qemu.git/util/qht.----:611 > ----: mov 0x18(%rdx,%rcx,8),%rax > ----: mov %rax,0x18(%rdi,%rsi,1) > /home/alex/lsrc/qemu/qemu.git/util/qht.----:613 > ----: lea 0x0(,%rcx,4),%rax > /home/alex/lsrc/qemu/qemu.git/util/qht.----:614 > ----: shl $0x3,%rcx > /home/alex/lsrc/qemu/qemu.git/util/qht.----:613 > ----: movl $0x0,0x8(%rdx,%rax,1) > /home/alex/lsrc/qemu/qemu.git/util/qht.----:614 > ----: movq $0x0,0x18(%rdx,%rcx,1) > ----: retq > ----: xchg %ax,%ax > ----: nopw %cs:0x0(%rax,%rax,1) > > 0000000000000190 : qht_insert__locked(): qht_insert__locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:503 /home/alex/lsrc/qemu/qemu.git/util/qht.----:503 ----: push %r14 ----: push %r14 ----: push %r13 ----: push %r13 ----: mov %rdi,%r14 ----: mov %rdi,%r14 ----: push %r12 ----: push %r12 ----: push %rbp ----: push %rbp ----: mov %rsi,%r12 ----: mov %rsi,%r12 ----: push %rbx ----: push %rbx ----: mov %ecx,%r13d ----: mov %ecx,%r13d ----: mov %rsi,%rbx ----: mov %rsi,%rbx /home/alex/lsrc/qemu/qemu.git/util/qht.----:508 /home/alex/lsrc/qemu/qemu.git/util/qht.----:508 ----: xor %edi,%edi ----: xor %edi,%edi /home/alex/lsrc/qemu/qemu.git/util/qht.----:503 /home/alex/lsrc/qemu/qemu.git/util/qht.----:503 ----: sub $0x10,%rsp ----: sub $0x10,%rsp /home/alex/lsrc/qemu/qemu.git/util/qht.----:524 /home/alex/lsrc/qemu/qemu.git/util/qht.----:524 ----: xor %eax,%eax ----: xor %eax,%eax /home/alex/lsrc/qemu/qemu.git/util/qht.----:514 /home/alex/lsrc/qemu/qemu.git/util/qht.----:514 ----: mov 0x18(%rbx,%rax,8),%rcx ----: mov 0x18(%rbx,%rax,8),%rcx ----: movslq %eax,%rsi ----: movslq %eax,%rsi ----: test %rcx,%rcx ----: test %rcx,%rcx ----: je 1a0 | ----: je 1f0 /home/alex/lsrc/qemu/qemu.git/util/qht.----:515 /home/alex/lsrc/qemu/qemu.git/util/qht.----:515 ----: cmp %rdx,%rcx ----: cmp %rdx,%rcx ----: je 190 | ----: je 1e0 ----: add $0x1,%rax ----: add $0x1,%rax /home/alex/lsrc/qemu/qemu.git/util/qht.----:513 /home/alex/lsrc/qemu/qemu.git/util/qht.----:513 ----: cmp $0x4,%rax ----: cmp $0x4,%rax ----: jne 15c | ----: jne 1ac /home/alex/lsrc/qemu/qemu.git/util/qht.----:523 /home/alex/lsrc/qemu/qemu.git/util/qht.----:523 ----: mov 0x38(%rbx),%rbp ----: mov 0x38(%rbx),%rbp ----: mov %rbx,%rdi ----: mov %rbx,%rdi /home/alex/lsrc/qemu/qemu.git/util/qht.----:524 /home/alex/lsrc/qemu/qemu.git/util/qht.----:524 ----: test %rbp,%rbp ----: test %rbp,%rbp ----: je 1e6 | ----: je 23e ----: mov %rbp,%rbx ----: mov %rbp,%rbx ----: jmp 15a | ----: jmp 1aa ----: nopl 0x0(%rax) ----: nopl 0x0(%rax) /home/alex/lsrc/qemu/qemu.git/util/qht.----:546 /home/alex/lsrc/qemu/qemu.git/util/qht.----:546 ----: add $0x10,%rsp ----: add $0x10,%rsp /home/alex/lsrc/qemu/qemu.git/util/qht.----:516 /home/alex/lsrc/qemu/qemu.git/util/qht.----:516 ----: xor %eax,%eax ----: xor %eax,%eax /home/alex/lsrc/qemu/qemu.git/util/qht.----:546 /home/alex/lsrc/qemu/qemu.git/util/qht.----:546 ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: pop %r14 ----: pop %r14 ----: retq ----: retq ----: nop ----: nop /home/alex/lsrc/qemu/qemu.git/util/qht.----:509 /home/alex/lsrc/qemu/qemu.git/util/qht.----:509 ----: xor %r9d,%r9d ----: xor %r9d,%r9d seqlock_write_begin(): seqlock_write_begin(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:34 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:34 ----: mov 0x4(%r12),%eax ----: mov 0x4(%r12),%eax ----: add $0x1,%eax ----: add $0x1,%eax ----: mov %eax,0x4(%r12) ----: mov %eax,0x4(%r12) qht_insert__locked(): qht_insert__locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:538 /home/alex/lsrc/qemu/qemu.git/util/qht.----:538 ----: test %r9,%r9 ----: test %r9,%r9 ----: je 1b9 | ----: je 209 /home/alex/lsrc/qemu/qemu.git/util/qht.----:539 /home/alex/lsrc/qemu/qemu.git/util/qht.----:539 ----: mov %rbx,0x38(%rdi) ----: mov %rbx,0x38(%rdi) /home/alex/lsrc/qemu/qemu.git/util/qht.----:541 | /home/alex/lsrc/qemu/qemu.git/util/qht.----:542 ----: mov %r13d,0x8(%rbx,%rsi,4) | ----: lea 0x0(,%rsi,4),%rax /home/alex/lsrc/qemu/qemu.git/util/qht.----:543 /home/alex/lsrc/qemu/qemu.git/util/qht.----:543 ----: shl $0x3,%rsi ----: shl $0x3,%rsi > /home/alex/lsrc/qemu/qemu.git/util/qht.----:542 > ----: mov %r13d,0x8(%rbx,%rax,1) > /home/alex/lsrc/qemu/qemu.git/util/qht.----:543 ----: mov %rdx,0x18(%rbx,%rsi,1) ----: mov %rdx,0x18(%rbx,%rsi,1) seqlock_write_end(): seqlock_write_end(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:45 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:45 ----: mov 0x4(%r12),%eax ----: mov 0x4(%r12),%eax ----: add $0x1,%eax ----: add $0x1,%eax ----: mov %eax,0x4(%r12) ----: mov %eax,0x4(%r12) qht_insert__locked(): qht_insert__locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:546 /home/alex/lsrc/qemu/qemu.git/util/qht.----:546 ----: add $0x10,%rsp ----: add $0x10,%rsp /home/alex/lsrc/qemu/qemu.git/util/qht.----:545 /home/alex/lsrc/qemu/qemu.git/util/qht.----:545 ----: mov $0x1,%eax ----: mov $0x1,%eax /home/alex/lsrc/qemu/qemu.git/util/qht.----:546 /home/alex/lsrc/qemu/qemu.git/util/qht.----:546 ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: pop %r14 ----: pop %r14 ----: retq ----: retq /home/alex/lsrc/qemu/qemu.git/util/qht.----:526 /home/alex/lsrc/qemu/qemu.git/util/qht.----:526 ----: mov $0x40,%esi ----: mov $0x40,%esi ----: mov $0x40,%edi ----: mov $0x40,%edi ----: mov %r8,0x8(%rsp) ----: mov %r8,0x8(%rsp) ----: mov %rdx,(%rsp) ----: mov %rdx,(%rsp) ----: callq 1fe | ----: callq 256 memset(): memset(): /usr/include/x86_64-linux-gnu/bits/string3.h:90 /usr/include/x86_64-linux-gnu/bits/string3.h:90 ----: lea 0x8(%rax),%rdi ----: lea 0x8(%rax),%rdi ----: mov %rax,%rcx ----: mov %rax,%rcx ----: movq $0x0,(%rax) ----: movq $0x0,(%rax) ----: movq $0x0,0x38(%rax) ----: movq $0x0,0x38(%rax) qht_insert__locked(): qht_insert__locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:526 /home/alex/lsrc/qemu/qemu.git/util/qht.----:526 ----: mov %rax,%r9 ----: mov %rax,%r9 memset(): memset(): /usr/include/x86_64-linux-gnu/bits/string3.h:90 /usr/include/x86_64-linux-gnu/bits/string3.h:90 ----: mov %rbp,%rax ----: mov %rbp,%rax ----: and $0xfffffffffffffff8,%rdi ----: and $0xfffffffffffffff8,%rdi ----: sub %rdi,%rcx ----: sub %rdi,%rcx ----: add $0x40,%ecx ----: add $0x40,%ecx ----: shr $0x3,%ecx ----: shr $0x3,%ecx ----: rep stos %rax,%es:(%rdi) ----: rep stos %rax,%es:(%rdi) qht_insert__locked(): qht_insert__locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:530 /home/alex/lsrc/qemu/qemu.git/util/qht.----:530 ----: lea 0x20(%r14),%rax ----: lea 0x20(%r14),%rax ----: lock addq $0x1,(%rax) ----: lock addq $0x1,(%rax) qht_map_needs_resize(): qht_map_needs_resize(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:301 /home/alex/lsrc/qemu/qemu.git/util/qht.----:301 ----: mov 0x20(%r14),%rax ----: mov 0x20(%r14),%rax qht_insert__locked(): qht_insert__locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:531 /home/alex/lsrc/qemu/qemu.git/util/qht.----:531 ----: cmp 0x28(%r14),%rax ----: cmp 0x28(%r14),%rax ----: mov (%rsp),%rdx ----: mov (%rsp),%rdx ----: jbe 25c | ----: jbe 2b4 ----: mov 0x8(%rsp),%r8 ----: mov 0x8(%rsp),%r8 ----: test %r8,%r8 ----: test %r8,%r8 ----: je 25c | ----: je 2b4 /home/alex/lsrc/qemu/qemu.git/util/qht.----:532 /home/alex/lsrc/qemu/qemu.git/util/qht.----:532 ----: mov %rbx,%rdi ----: mov %rbx,%rdi ----: movb $0x1,(%r8) ----: movb $0x1,(%r8) ----: mov %r9,%rbx ----: mov %r9,%rbx /home/alex/lsrc/qemu/qemu.git/util/qht.----:529 /home/alex/lsrc/qemu/qemu.git/util/qht.----:529 ----: xor %esi,%esi ----: xor %esi,%esi ----: jmpq 1a3 | ----: jmpq 1f3 /home/alex/lsrc/qemu/qemu.git/util/qht.----:531 /home/alex/lsrc/qemu/qemu.git/util/qht.----:531 ----: mov %rbx,%rdi ----: mov %rbx,%rdi /home/alex/lsrc/qemu/qemu.git/util/qht.----:529 /home/alex/lsrc/qemu/qemu.git/util/qht.----:529 ----: xor %esi,%esi ----: xor %esi,%esi /home/alex/lsrc/qemu/qemu.git/util/qht.----:531 /home/alex/lsrc/qemu/qemu.git/util/qht.----:531 ----: mov %r9,%rbx ----: mov %r9,%rbx ----: jmpq 1a3 | ----: jmpq 1f3 qht_insert__locked.isra.10(): qht_insert__locked.isra.10(): ----: nopl 0x0(%rax) | ----: nopl 0x0(%rax,%rax,1) > ----: nopw %cs:0x0(%rax,%rax,1) 0000000000000270 : | 00000000000002d0 : qht_do_resize(): qht_do_resize(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:750 /home/alex/lsrc/qemu/qemu.git/util/qht.----:750 ----: push %r15 ----: push %r15 ----: push %r14 ----: push %r14 ----: mov %rsi,%r14 ----: mov %rsi,%r14 ----: push %r13 ----: push %r13 ----: push %r12 ----: push %r12 ----: mov %rdi,%r12 ----: mov %rdi,%r12 ----: push %rbp ----: push %rbp ----: push %rbx ----: push %rbx ----: sub $0x18,%rsp ----: sub $0x18,%rsp /home/alex/lsrc/qemu/qemu.git/util/qht.----:753 /home/alex/lsrc/qemu/qemu.git/util/qht.----:753 ----: mov (%rdi),%rbp ----: mov (%rdi),%rbp /home/alex/lsrc/qemu/qemu.git/util/qht.----:754 /home/alex/lsrc/qemu/qemu.git/util/qht.----:754 ----: mov 0x18(%rsi),%rdx ----: mov 0x18(%rsi),%rdx ----: mov 0x18(%rbp),%rax ----: mov 0x18(%rbp),%rax ----: cmp %rax,%rdx ----: cmp %rax,%rdx ----: je 31d | ----: je 37d qht_map_iter__all_locked(): qht_map_iter__all_locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:716 /home/alex/lsrc/qemu/qemu.git/util/qht.----:716 ----: xor %ebx,%ebx ----: xor %ebx,%ebx ----: test %rax,%rax ----: test %rax,%rax ----: je 2fc | ----: je 35c ----: nop ----: nop /home/alex/lsrc/qemu/qemu.git/util/qht.----:717 /home/alex/lsrc/qemu/qemu.git/util/qht.----:717 ----: mov %rbx,%r15 ----: mov %rbx,%r15 ----: shl $0x6,%r15 ----: shl $0x6,%r15 ----: add 0x10(%rbp),%r15 ----: add 0x10(%rbp),%r15 ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) /home/alex/lsrc/qemu/qemu.git/util/qht.----:716 /home/alex/lsrc/qemu/qemu.git/util/qht.----:716 ----: xor %r13d,%r13d ----: xor %r13d,%r13d qht_bucket_iter(): qht_bucket_iter(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:701 /home/alex/lsrc/qemu/qemu.git/util/qht.----:701 ----: mov 0x18(%r15,%r13,2),%rdx ----: mov 0x18(%r15,%r13,2),%rdx ----: test %rdx,%rdx ----: test %rdx,%rdx ----: je 2f2 | ----: je 352 qht_map_copy(): qht_map_copy(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:738 /home/alex/lsrc/qemu/qemu.git/util/qht.----:738 ----: mov 0x18(%r14),%rax ----: mov 0x18(%r14),%rax qht_bucket_iter(): qht_bucket_iter(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:704 /home/alex/lsrc/qemu/qemu.git/util/qht.----:704 ----: mov 0x8(%r15,%r13,1),%ecx ----: mov 0x8(%r15,%r13,1),%ecx qht_map_copy(): qht_map_copy(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:738 /home/alex/lsrc/qemu/qemu.git/util/qht.----:738 ----: xor %r8d,%r8d ----: xor %r8d,%r8d ----: mov %r14,%rdi ----: mov %r14,%rdi ----: add $0x4,%r13 ----: add $0x4,%r13 ----: lea -0x1(%rax),%rsi ----: lea -0x1(%rax),%rsi ----: and %ecx,%esi ----: and %ecx,%esi ----: shl $0x6,%rsi ----: shl $0x6,%rsi ----: add 0x10(%r14),%rsi ----: add 0x10(%r14),%rsi ----: callq 140 | ----: callq 190 qht_bucket_iter(): qht_bucket_iter(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:700 /home/alex/lsrc/qemu/qemu.git/util/qht.----:700 ----: cmp $0x10,%r13 ----: cmp $0x10,%r13 ----: jne 2b3 | ----: jne 313 /home/alex/lsrc/qemu/qemu.git/util/qht.----:706 /home/alex/lsrc/qemu/qemu.git/util/qht.----:706 ----: mov 0x38(%r15),%r15 ----: mov 0x38(%r15),%r15 /home/alex/lsrc/qemu/qemu.git/util/qht.----:707 /home/alex/lsrc/qemu/qemu.git/util/qht.----:707 ----: test %r15,%r15 ----: test %r15,%r15 ----: jne 2b0 | ----: jne 310 qht_map_iter__all_locked(): qht_map_iter__all_locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:716 /home/alex/lsrc/qemu/qemu.git/util/qht.----:716 ----: add $0x1,%rbx ----: add $0x1,%rbx ----: cmp 0x18(%rbp),%rbx ----: cmp 0x18(%rbp),%rbx ----: jb 2a0 | ----: jb 300 qht_do_resize(): qht_do_resize(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:759 /home/alex/lsrc/qemu/qemu.git/util/qht.----:759 ----: mov %r14,(%r12) ----: mov %r14,(%r12) /home/alex/lsrc/qemu/qemu.git/util/qht.----:761 /home/alex/lsrc/qemu/qemu.git/util/qht.----:761 ----: add $0x18,%rsp ----: add $0x18,%rsp /home/alex/lsrc/qemu/qemu.git/util/qht.----:760 /home/alex/lsrc/qemu/qemu.git/util/qht.----:760 ----: mov %rbp,%rdi ----: mov %rbp,%rdi ----: lea -0x23e(%rip),%rsi # d0 | ----: lea -0x29e(%rip),%rsi # d0 /home/alex/lsrc/qemu/qemu.git/util/qht.----:761 /home/alex/lsrc/qemu/qemu.git/util/qht.----:761 ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: pop %r14 ----: pop %r14 ----: pop %r15 ----: pop %r15 /home/alex/lsrc/qemu/qemu.git/util/qht.----:760 /home/alex/lsrc/qemu/qemu.git/util/qht.----:760 ----: jmpq 31d | ----: jmpq 37d /home/alex/lsrc/qemu/qemu.git/util/qht.----:754 (discriminator 1) /home/alex/lsrc/qemu/qemu.git/util/qht.----:754 (discriminator 1) ----: mov %rdx,0x8(%rsp) ----: mov %rdx,0x8(%rsp) ----: test %rdx,%rdx ----: test %rdx,%rdx ----: fildll 0x8(%rsp) ----: fildll 0x8(%rsp) ----: js 373 | ----: js 3d3 ----: sub $0x8,%rsp ----: sub $0x8,%rsp ----: lea 0x0(%rip),%r9 # 336 | ----: lea 0x0(%rip),%r9 # 396 ----: lea 0x0(%rip),%r8 # 33d | ----: lea 0x0(%rip),%r8 # 39d ----: pushq $0x69 ----: pushq $0x69 ----: lea 0x0(%rip),%rcx # 346 | ----: lea 0x0(%rip),%rcx # 3a6 ----: lea 0x0(%rip),%rsi # 34d | ----: lea 0x0(%rip),%rsi # 3ad ----: mov $0x2f2,%edx ----: mov $0x2f2,%edx ----: xor %edi,%edi ----: xor %edi,%edi ----: sub $0x20,%rsp ----: sub $0x20,%rsp ----: fld %st(0) ----: fld %st(0) ----: fstpt 0x10(%rsp) ----: fstpt 0x10(%rsp) ----: fstpt (%rsp) ----: fstpt (%rsp) ----: callq 366 | ----: callq 3c6 ----: add $0x30,%rsp ----: add $0x30,%rsp ----: mov 0x18(%rbp),%rax ----: mov 0x18(%rbp),%rax ----: jmpq 298 | ----: jmpq 2f8 ----: fadds 0x0(%rip) # 379 | ----: fadds 0x0(%rip) # 3d9 ----: jmp 32b | ----: jmp 38b ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) 0000000000000380 : | 00000000000003e0 : seqlock_write_begin(): seqlock_write_begin(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:34 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:34 ----: mov 0x4(%rdi),%eax ----: mov 0x4(%rdi),%eax ----: add $0x1,%eax ----: add $0x1,%eax ----: mov %eax,0x4(%rdi) ----: mov %eax,0x4(%rdi) /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:37 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:37 ----: mov %rdi,%rcx ----: mov %rdi,%rcx ----: nopl 0x0(%rax) ----: nopl 0x0(%rax) ----: lea 0x18(%rcx),%rax ----: lea 0x18(%rcx),%rax ----: lea 0x8(%rcx),%rdx ----: lea 0x8(%rcx),%rdx ----: lea 0x38(%rcx),%rsi ----: lea 0x38(%rcx),%rsi qht_bucket_reset__locked(): qht_bucket_reset__locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:379 /home/alex/lsrc/qemu/qemu.git/util/qht.----:379 ----: cmpq $0x0,(%rax) ----: cmpq $0x0,(%rax) ----: je 3c6 | ----: je 426 /home/alex/lsrc/qemu/qemu.git/util/qht.----:382 (discriminator 2) /home/alex/lsrc/qemu/qemu.git/util/qht.----:382 (discriminator 2) ----: movl $0x0,(%rdx) ----: movl $0x0,(%rdx) ----: add $0x8,%rax ----: add $0x8,%rax ----: add $0x4,%rdx ----: add $0x4,%rdx /home/alex/lsrc/qemu/qemu.git/util/qht.----:383 (discriminator 2) /home/alex/lsrc/qemu/qemu.git/util/qht.----:383 (discriminator 2) ----: movq $0x0,-0x8(%rax) ----: movq $0x0,-0x8(%rax) /home/alex/lsrc/qemu/qemu.git/util/qht.----:378 (discriminator 2) /home/alex/lsrc/qemu/qemu.git/util/qht.----:378 (discriminator 2) ----: cmp %rsi,%rax ----: cmp %rsi,%rax ----: jne 39c | ----: jne 3fc /home/alex/lsrc/qemu/qemu.git/util/qht.----:385 /home/alex/lsrc/qemu/qemu.git/util/qht.----:385 ----: mov 0x38(%rcx),%rcx ----: mov 0x38(%rcx),%rcx /home/alex/lsrc/qemu/qemu.git/util/qht.----:386 /home/alex/lsrc/qemu/qemu.git/util/qht.----:386 ----: test %rcx,%rcx ----: test %rcx,%rcx ----: jne 390 | ----: jne 3f0 seqlock_write_end(): seqlock_write_end(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:45 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:45 ----: mov 0x4(%rdi),%eax ----: mov 0x4(%rdi),%eax ----: add $0x1,%eax ----: add $0x1,%eax ----: mov %eax,0x4(%rdi) ----: mov %eax,0x4(%rdi) qht_bucket_reset__locked(): qht_bucket_reset__locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:389 /home/alex/lsrc/qemu/qemu.git/util/qht.----:389 ----: retq ----: retq 00000000000003d0 : | 0000000000000430 : qht_lookup__slowpath(): qht_lookup__slowpath(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:468 /home/alex/lsrc/qemu/qemu.git/util/qht.----:468 ----: push %r15 ----: push %r15 ----: push %r14 ----: push %r14 ----: lea 0x4(%rdi),%r15 ----: lea 0x4(%rdi),%r15 ----: push %r13 ----: push %r13 ----: push %r12 ----: push %r12 ----: mov %rdi,%r9 | ----: mov %rdi,%r14 ----: push %rbp ----: push %rbp ----: push %rbx ----: push %rbx ----: sub $0x28,%rsp ----: sub $0x28,%rsp ----: mov %rsi,0x18(%rsp) | ----: mov %rsi,0x10(%rsp) > ----: mov %rdx,0x18(%rsp) seqlock_read_begin(): seqlock_read_begin(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:51 (discriminator 1) /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:51 (discriminator 1) ----: mov (%r15),%r14d | ----: mov (%r15),%r13d /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:55 (discriminator 1) /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:55 (discriminator 1) ----: and $0xfffffffe,%r14d | ----: and $0xfffffffe,%r13d qht_do_lookup(): qht_do_lookup(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:442 (discriminator 1) /home/alex/lsrc/qemu/qemu.git/util/qht.----:442 (discriminator 1) ----: mov %r9,%r12 | ----: mov %r14,%r12 seqlock_read_begin(): seqlock_read_begin(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:55 (discriminator 1) /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:55 (discriminator 1) ----: mov %r14d,0x14(%rsp) | ----: mov %r13d,0xc(%rsp) ----: lea 0x8(%r12),%rbp ----: lea 0x8(%r12),%rbp ----: lea 0x18(%r12),%rbx ----: lea 0x18(%r12),%rbx ----: lea 0x38(%r12),%r13 | ----: lea 0x38(%r12),%rdx qht_do_lookup(): qht_do_lookup(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:447 /home/alex/lsrc/qemu/qemu.git/util/qht.----:447 ----: cmp 0x0(%rbp),%ecx | ----: mov 0x0(%rbp),%eax ----: je 430 | ----: cmp %eax,%ecx > ----: je 490 ----: add $0x8,%rbx ----: add $0x8,%rbx ----: add $0x4,%rbp ----: add $0x4,%rbp /home/alex/lsrc/qemu/qemu.git/util/qht.----:446 /home/alex/lsrc/qemu/qemu.git/util/qht.----:446 ----: cmp %r13,%rbx | ----: cmp %rdx,%rbx ----: jne 408 | ----: jne 46d /home/alex/lsrc/qemu/qemu.git/util/qht.----:459 /home/alex/lsrc/qemu/qemu.git/util/qht.----:459 ----: mov 0x38(%r12),%r12 ----: mov 0x38(%r12),%r12 /home/alex/lsrc/qemu/qemu.git/util/qht.----:460 /home/alex/lsrc/qemu/qemu.git/util/qht.----:460 ----: test %r12,%r12 ----: test %r12,%r12 ----: jne 3f9 | ----: jne 45e /home/alex/lsrc/qemu/qemu.git/util/qht.----:462 /home/alex/lsrc/qemu/qemu.git/util/qht.----:462 ----: xor %r14d,%r14d | ----: xor %r13d,%r13d ----: jmp 463 | ----: jmp 4bb ----: nopl 0x0(%rax) < /home/alex/lsrc/qemu/qemu.git/util/qht.----:452 /home/alex/lsrc/qemu/qemu.git/util/qht.----:452 ----: mov (%rbx),%r14 | ----: mov (%rbx),%r13 /home/alex/lsrc/qemu/qemu.git/util/qht.----:454 /home/alex/lsrc/qemu/qemu.git/util/qht.----:454 ----: test %r14,%r14 | ----: test %r13,%r13 ----: je 40d | ----: je 474 ----: mov %ecx,0x10(%rsp) | ----: mov %ecx,0x8(%rsp) ----: mov %r9,0x8(%rsp) < ----: mov %rdx,%rsi < ----: mov %rdx,(%rsp) ----: mov %rdx,(%rsp) ----: mov %r14,%rdi | ----: mov %r13,%rdi ----: mov 0x18(%rsp),%rax | ----: mov 0x18(%rsp),%rsi > ----: mov 0x10(%rsp),%rax ----: callq *%rax ----: callq *%rax ----: test %al,%al ----: test %al,%al ----: mov (%rsp),%rdx ----: mov (%rsp),%rdx ----: mov 0x8(%rsp),%r9 | ----: mov 0x8(%rsp),%ecx ----: mov 0x10(%rsp),%ecx | ----: je 474 ----: je 40d < seqlock_read_retry(): seqlock_read_retry(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:62 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:62 ----: mov (%r15),%eax ----: mov (%r15),%eax qht_lookup__slowpath(): qht_lookup__slowpath(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:475 /home/alex/lsrc/qemu/qemu.git/util/qht.----:475 ----: cmp 0x14(%rsp),%eax | ----: cmp 0xc(%rsp),%eax ----: jne 3ea | ----: jne 44f /home/alex/lsrc/qemu/qemu.git/util/qht.----:477 /home/alex/lsrc/qemu/qemu.git/util/qht.----:477 ----: add $0x28,%rsp ----: add $0x28,%rsp ----: mov %r14,%rax | ----: mov %r13,%rax ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: pop %r14 ----: pop %r14 ----: pop %r15 ----: pop %r15 ----: retq ----: retq ----: nopl 0x0(%rax) < ----: nopw %cs:0x0(%rax,%rax,1) ----: nopw %cs:0x0(%rax,%rax,1) 0000000000000490 : | 00000000000004e0 : qht_grow_maybe(): qht_grow_maybe(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:549 /home/alex/lsrc/qemu/qemu.git/util/qht.----:549 ----: push %r12 ----: push %r12 ----: push %rbp ----: push %rbp /home/alex/lsrc/qemu/qemu.git/util/qht.----:556 /home/alex/lsrc/qemu/qemu.git/util/qht.----:556 ----: lea 0x8(%rdi),%rbp ----: lea 0x8(%rdi),%rbp /home/alex/lsrc/qemu/qemu.git/util/qht.----:549 /home/alex/lsrc/qemu/qemu.git/util/qht.----:549 ----: push %rbx ----: push %rbx ----: mov %rdi,%r12 ----: mov %rdi,%r12 /home/alex/lsrc/qemu/qemu.git/util/qht.----:556 /home/alex/lsrc/qemu/qemu.git/util/qht.----:556 ----: mov %rbp,%rdi ----: mov %rbp,%rdi ----: callq 4a3 | ----: callq 4f3 ----: test %eax,%eax ----: test %eax,%eax ----: je 4b0 | ----: je 500 /home/alex/lsrc/qemu/qemu.git/util/qht.----:569 /home/alex/lsrc/qemu/qemu.git/util/qht.----:569 ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: retq ----: retq ----: nopl 0x0(%rax) ----: nopl 0x0(%rax) /home/alex/lsrc/qemu/qemu.git/util/qht.----:559 /home/alex/lsrc/qemu/qemu.git/util/qht.----:559 ----: mov (%r12),%rbx ----: mov (%r12),%rbx qht_map_needs_resize(): qht_map_needs_resize(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:301 /home/alex/lsrc/qemu/qemu.git/util/qht.----:301 ----: mov 0x20(%rbx),%rax ----: mov 0x20(%rbx),%rax qht_grow_maybe(): qht_grow_maybe(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:561 /home/alex/lsrc/qemu/qemu.git/util/qht.----:561 ----: cmp 0x28(%rbx),%rax ----: cmp 0x28(%rbx),%rax ----: ja 4d0 | ----: ja 520 /home/alex/lsrc/qemu/qemu.git/util/qht.----:569 /home/alex/lsrc/qemu/qemu.git/util/qht.----:569 ----: pop %rbx ----: pop %rbx /home/alex/lsrc/qemu/qemu.git/util/qht.----:568 /home/alex/lsrc/qemu/qemu.git/util/qht.----:568 ----: mov %rbp,%rdi ----: mov %rbp,%rdi /home/alex/lsrc/qemu/qemu.git/util/qht.----:569 /home/alex/lsrc/qemu/qemu.git/util/qht.----:569 ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 /home/alex/lsrc/qemu/qemu.git/util/qht.----:568 /home/alex/lsrc/qemu/qemu.git/util/qht.----:568 ----: jmpq 4ca | ----: jmpq 51a ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) /home/alex/lsrc/qemu/qemu.git/util/qht.----:562 /home/alex/lsrc/qemu/qemu.git/util/qht.----:562 ----: mov 0x18(%rbx),%rax ----: mov 0x18(%rbx),%rax ----: lea (%rax,%rax,1),%rdi ----: lea (%rax,%rax,1),%rdi ----: callq 0 ----: callq 0 qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: xor %ecx,%ecx ----: xor %ecx,%ecx ----: cmpq $0x0,0x18(%rbx) ----: cmpq $0x0,0x18(%rbx) qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov $0x1,%r8d ----: mov $0x1,%r8d qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: jne 4fa | ----: jne 54a ----: jmp 520 | ----: jmp 570 ----: xchg %ax,%ax ----: xchg %ax,%ax ----: add $0x1,%rcx ----: add $0x1,%rcx ----: cmp 0x18(%rbx),%rcx ----: cmp 0x18(%rbx),%rcx ----: jae 520 | ----: jae 570 ----: mov %rcx,%rdx ----: mov %rcx,%rdx ----: shl $0x6,%rdx ----: shl $0x6,%rdx ----: add 0x10(%rbx),%rdx ----: add 0x10(%rbx),%rdx qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov %r8d,%edi ----: mov %r8d,%edi ----: xchg %edi,(%rdx) ----: xchg %edi,(%rdx) ----: test %edi,%edi ----: test %edi,%edi ----: je 4f0 | ----: je 540 ----: jmp 512 | ----: jmp 562 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 ----: pause ----: pause /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 ----: mov (%rdx),%edi ----: mov (%rdx),%edi ----: test %edi,%edi ----: test %edi,%edi ----: jne 510 | ----: jne 560 ----: jmp 505 | ----: jmp 555 ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) qht_grow_maybe(): qht_grow_maybe(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:565 /home/alex/lsrc/qemu/qemu.git/util/qht.----:565 ----: mov %rax,%rsi ----: mov %rax,%rsi ----: mov %r12,%rdi ----: mov %r12,%rdi ----: callq 270 | ----: callq 2d0 qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: xor %eax,%eax ----: xor %eax,%eax ----: cmpq $0x0,0x18(%rbx) ----: cmpq $0x0,0x18(%rbx) ----: je 4be | ----: je 50e ----: nopl 0x0(%rax) ----: nopl 0x0(%rax) qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: mov %rax,%rdx ----: mov %rax,%rdx qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: add $0x1,%rax ----: add $0x1,%rax qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: shl $0x6,%rdx ----: shl $0x6,%rdx ----: add 0x10(%rbx),%rdx ----: add 0x10(%rbx),%rdx ----: movl $0x0,(%rdx) ----: movl $0x0,(%rdx) qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: cmp 0x18(%rbx),%rax ----: cmp 0x18(%rbx),%rax ----: jb 538 | ----: jb 588 qht_grow_maybe(): qht_grow_maybe(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:569 /home/alex/lsrc/qemu/qemu.git/util/qht.----:569 ----: pop %rbx ----: pop %rbx /home/alex/lsrc/qemu/qemu.git/util/qht.----:568 /home/alex/lsrc/qemu/qemu.git/util/qht.----:568 ----: mov %rbp,%rdi ----: mov %rbp,%rdi /home/alex/lsrc/qemu/qemu.git/util/qht.----:569 /home/alex/lsrc/qemu/qemu.git/util/qht.----:569 ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 /home/alex/lsrc/qemu/qemu.git/util/qht.----:568 /home/alex/lsrc/qemu/qemu.git/util/qht.----:568 ----: jmpq 55f | ----: jmpq 5af ----: nop ----: nop 0000000000000560 : | 00000000000005b0 : qht_init(): qht_init(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:354 /home/alex/lsrc/qemu/qemu.git/util/qht.----:354 ----: push %rbp ----: push %rbp ----: push %rbx ----: push %rbx qht_elems_to_buckets(): qht_elems_to_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:187 /home/alex/lsrc/qemu/qemu.git/util/qht.----:187 ----: shr $0x2,%rsi ----: shr $0x2,%rsi qht_init(): qht_init(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:354 /home/alex/lsrc/qemu/qemu.git/util/qht.----:354 ----: mov %rdi,%rbp ----: mov %rdi,%rbp clz64(): clz64(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 ----: mov $0x1,%ebx ----: mov $0x1,%ebx qht_init(): qht_init(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:354 /home/alex/lsrc/qemu/qemu.git/util/qht.----:354 ----: sub $0x8,%rsp ----: sub $0x8,%rsp clz64(): clz64(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 ----: test %rsi,%rsi ----: test %rsi,%rsi ----: je 58b | ----: je 5db pow2ceil(): pow2ceil(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:510 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:510 ----: lea -0x1(%rsi),%rcx ----: lea -0x1(%rsi),%rcx clz64(): clz64(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 ----: bsr %rsi,%rax ----: bsr %rsi,%rax ----: mov %rsi,%rbx ----: mov %rsi,%rbx ----: xor $0x3f,%rax ----: xor $0x3f,%rax pow2ceil(): pow2ceil(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:510 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:510 ----: test %rsi,%rcx ----: test %rsi,%rcx ----: jne 5aa | ----: jne 5fa qht_init(): qht_init(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:359 /home/alex/lsrc/qemu/qemu.git/util/qht.----:359 ----: lea 0x8(%rbp),%rdi ----: lea 0x8(%rbp),%rdi /home/alex/lsrc/qemu/qemu.git/util/qht.----:358 /home/alex/lsrc/qemu/qemu.git/util/qht.----:358 ----: mov %edx,0x30(%rbp) ----: mov %edx,0x30(%rbp) /home/alex/lsrc/qemu/qemu.git/util/qht.----:359 /home/alex/lsrc/qemu/qemu.git/util/qht.----:359 ----: callq 597 | ----: callq 5e7 /home/alex/lsrc/qemu/qemu.git/util/qht.----:360 /home/alex/lsrc/qemu/qemu.git/util/qht.----:360 ----: mov %rbx,%rdi ----: mov %rbx,%rdi ----: callq 0 ----: callq 0 /home/alex/lsrc/qemu/qemu.git/util/qht.----:361 /home/alex/lsrc/qemu/qemu.git/util/qht.----:361 ----: mov %rax,0x0(%rbp) ----: mov %rax,0x0(%rbp) /home/alex/lsrc/qemu/qemu.git/util/qht.----:362 /home/alex/lsrc/qemu/qemu.git/util/qht.----:362 ----: add $0x8,%rsp ----: add $0x8,%rsp ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: retq ----: retq ----: mov $0x40,%ecx ----: mov $0x40,%ecx ----: mov $0x1,%ebx ----: mov $0x1,%ebx ----: sub %eax,%ecx ----: sub %eax,%ecx ----: shl %cl,%rbx ----: shl %cl,%rbx ----: jmp 58b | ----: jmp 5db ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) 00000000000005c0 : | 0000000000000610 : qht_destroy(): qht_destroy(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:366 /home/alex/lsrc/qemu/qemu.git/util/qht.----:366 ----: push %rbx ----: push %rbx ----: mov %rdi,%rbx ----: mov %rdi,%rbx /home/alex/lsrc/qemu/qemu.git/util/qht.----:367 /home/alex/lsrc/qemu/qemu.git/util/qht.----:367 ----: mov (%rdi),%rdi ----: mov (%rdi),%rdi ----: callq d0 ----: callq d0 memset(): memset(): /usr/include/x86_64-linux-gnu/bits/string3.h:90 /usr/include/x86_64-linux-gnu/bits/string3.h:90 ----: lea 0x8(%rbx),%rdi ----: lea 0x8(%rbx),%rdi ----: movq $0x0,(%rbx) ----: movq $0x0,(%rbx) ----: movq $0x0,0x30(%rbx) ----: movq $0x0,0x30(%rbx) ----: xor %eax,%eax ----: xor %eax,%eax ----: and $0xfffffffffffffff8,%rdi ----: and $0xfffffffffffffff8,%rdi ----: sub %rdi,%rbx ----: sub %rdi,%rbx ----: lea 0x38(%rbx),%ecx ----: lea 0x38(%rbx),%ecx ----: shr $0x3,%ecx ----: shr $0x3,%ecx ----: rep stos %rax,%es:(%rdi) ----: rep stos %rax,%es:(%rdi) qht_destroy(): qht_destroy(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:369 /home/alex/lsrc/qemu/qemu.git/util/qht.----:369 ----: pop %rbx ----: pop %rbx ----: retq ----: retq ----: nopl (%rax) ----: nopl (%rax) ----: nopw %cs:0x0(%rax,%rax,1) ----: nopw %cs:0x0(%rax,%rax,1) 0000000000000600 : | 0000000000000650 : qht_reset(): qht_reset(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:403 /home/alex/lsrc/qemu/qemu.git/util/qht.----:403 ----: push %r12 ----: push %r12 ----: push %rbp ----: push %rbp ----: mov %rdi,%rbp ----: mov %rdi,%rbp ----: push %rbx ----: push %rbx qht_map_lock_buckets__no_stale(): qht_map_lock_buckets__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:247 /home/alex/lsrc/qemu/qemu.git/util/qht.----:247 ----: mov (%rdi),%rcx ----: mov (%rdi),%rcx qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: cmpq $0x0,0x18(%rcx) ----: cmpq $0x0,0x18(%rcx) ----: je 73f | ----: je 78f ----: xor %edx,%edx ----: xor %edx,%edx qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov $0x1,%edi ----: mov $0x1,%edi ----: jmp 62d | ----: jmp 67d ----: xchg %ax,%ax ----: xchg %ax,%ax qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: mov 0x18(%rcx),%rax ----: mov 0x18(%rcx),%rax ----: add $0x1,%rdx ----: add $0x1,%rdx ----: cmp %rax,%rdx ----: cmp %rax,%rdx ----: jae 658 | ----: jae 6a8 ----: mov %rdx,%rax ----: mov %rdx,%rax ----: shl $0x6,%rax ----: shl $0x6,%rax ----: add 0x10(%rcx),%rax ----: add 0x10(%rcx),%rax qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov %edi,%esi ----: mov %edi,%esi ----: xchg %esi,(%rax) ----: xchg %esi,(%rax) ----: test %esi,%esi ----: test %esi,%esi ----: je 620 | ----: je 670 ----: jmp 64a | ----: jmp 69a ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 ----: pause ----: pause /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 ----: mov (%rax),%esi ----: mov (%rax),%esi ----: test %esi,%esi ----: test %esi,%esi ----: jne 648 | ----: jne 698 ----: jmp 638 | ----: jmp 688 ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) ----: mov 0x0(%rbp),%rbx ----: mov 0x0(%rbp),%rbx qht_map_lock_buckets__no_stale(): qht_map_lock_buckets__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:249 /home/alex/lsrc/qemu/qemu.git/util/qht.----:249 ----: cmp %rbx,%rcx ----: cmp %rbx,%rcx ----: jne 6b8 | ----: jne 708 qht_map_reset__all_locked(): qht_map_reset__all_locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:396 /home/alex/lsrc/qemu/qemu.git/util/qht.----:396 ----: xor %r8d,%r8d ----: xor %r8d,%r8d ----: cmpq $0x0,0x18(%rbx) ----: cmpq $0x0,0x18(%rbx) ----: je 6b3 | ----: je 703 ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) /home/alex/lsrc/qemu/qemu.git/util/qht.----:397 /home/alex/lsrc/qemu/qemu.git/util/qht.----:397 ----: mov %r8,%rdi ----: mov %r8,%rdi ----: shl $0x6,%rdi ----: shl $0x6,%rdi ----: add 0x10(%rbx),%rdi ----: add 0x10(%rbx),%rdi ----: callq 380 | ----: callq 3e0 /home/alex/lsrc/qemu/qemu.git/util/qht.----:396 /home/alex/lsrc/qemu/qemu.git/util/qht.----:396 ----: mov 0x18(%rbx),%rax ----: mov 0x18(%rbx),%rax ----: add $0x1,%r8 ----: add $0x1,%r8 ----: cmp %rax,%r8 ----: cmp %rax,%r8 ----: jb 670 | ----: jb 6c0 qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: test %rax,%rax ----: test %rax,%rax ----: je 6b3 | ----: je 703 ----: xor %eax,%eax ----: xor %eax,%eax ----: nopl 0x0(%rax) ----: nopl 0x0(%rax) qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: mov %rax,%rdx ----: mov %rax,%rdx qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: add $0x1,%rax ----: add $0x1,%rax qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: shl $0x6,%rdx ----: shl $0x6,%rdx ----: add 0x10(%rbx),%rdx ----: add 0x10(%rbx),%rdx ----: movl $0x0,(%rdx) ----: movl $0x0,(%rdx) qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: cmp 0x18(%rbx),%rax ----: cmp 0x18(%rbx),%rax ----: jb 698 | ----: jb 6e8 qht_reset(): qht_reset(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:409 /home/alex/lsrc/qemu/qemu.git/util/qht.----:409 ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: retq ----: retq qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: test %rax,%rax ----: test %rax,%rax ----: je 6db | ----: je 72b ----: xor %eax,%eax ----: xor %eax,%eax ----: nop ----: nop qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: mov %rax,%rdx ----: mov %rax,%rdx qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: add $0x1,%rax ----: add $0x1,%rax qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: shl $0x6,%rdx ----: shl $0x6,%rdx ----: add 0x10(%rcx),%rdx ----: add 0x10(%rcx),%rdx ----: movl $0x0,(%rdx) ----: movl $0x0,(%rdx) qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: cmp 0x18(%rcx),%rax ----: cmp 0x18(%rcx),%rax ----: jb 6c0 | ----: jb 710 qht_map_lock_buckets__no_stale(): qht_map_lock_buckets__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:256 /home/alex/lsrc/qemu/qemu.git/util/qht.----:256 ----: lea 0x8(%rbp),%r12 ----: lea 0x8(%rbp),%r12 ----: mov %r12,%rdi ----: mov %r12,%rdi ----: callq 6e7 | ----: callq 737 /home/alex/lsrc/qemu/qemu.git/util/qht.----:257 /home/alex/lsrc/qemu/qemu.git/util/qht.----:257 ----: mov 0x0(%rbp),%rbx ----: mov 0x0(%rbp),%rbx qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: xor %edx,%edx ----: xor %edx,%edx qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov $0x1,%esi ----: mov $0x1,%esi qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: cmpq $0x0,0x18(%rbx) ----: cmpq $0x0,0x18(%rbx) ----: jne 70a | ----: jne 75a ----: jmp 732 | ----: jmp 782 ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) ----: add $0x1,%rdx ----: add $0x1,%rdx ----: cmp 0x18(%rbx),%rdx ----: cmp 0x18(%rbx),%rdx ----: jae 732 | ----: jae 782 ----: mov %rdx,%rax ----: mov %rdx,%rax ----: shl $0x6,%rax ----: shl $0x6,%rax ----: add 0x10(%rbx),%rax ----: add 0x10(%rbx),%rax qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov %esi,%ecx ----: mov %esi,%ecx ----: xchg %ecx,(%rax) ----: xchg %ecx,(%rax) ----: test %ecx,%ecx ----: test %ecx,%ecx ----: je 700 | ----: je 750 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 ----: mov (%rax),%ecx ----: mov (%rax),%ecx ----: test %ecx,%ecx ----: test %ecx,%ecx ----: je 715 | ----: je 765 ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 ----: pause ----: pause /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 ----: mov (%rax),%ecx ----: mov (%rax),%ecx ----: test %ecx,%ecx ----: test %ecx,%ecx ----: jne 728 | ----: jne 778 ----: jmp 715 | ----: jmp 765 qht_map_lock_buckets__no_stale(): qht_map_lock_buckets__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:259 /home/alex/lsrc/qemu/qemu.git/util/qht.----:259 ----: mov %r12,%rdi ----: mov %r12,%rdi ----: callq 73a | ----: callq 78a ----: jmpq 661 | ----: jmpq 6b1 ----: mov (%rdi),%rbx ----: mov (%rdi),%rbx /home/alex/lsrc/qemu/qemu.git/util/qht.----:249 /home/alex/lsrc/qemu/qemu.git/util/qht.----:249 ----: cmp %rbx,%rcx ----: cmp %rbx,%rcx ----: je 661 | ----: je 6b1 ----: jmp 6db | ----: jmp 72b qht_reset(): qht_reset(): ----: nopl (%rax) ----: nopl (%rax) 0000000000000750 : | 00000000000007a0 : qht_elems_to_buckets(): qht_elems_to_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:187 /home/alex/lsrc/qemu/qemu.git/util/qht.----:187 ----: shr $0x2,%rsi ----: shr $0x2,%rsi qht_reset_size(): qht_reset_size(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:412 /home/alex/lsrc/qemu/qemu.git/util/qht.----:412 ----: push %r14 ----: push %r14 ----: push %r13 ----: push %r13 clz64(): clz64(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 ----: test %rsi,%rsi ----: test %rsi,%rsi qht_reset_size(): qht_reset_size(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:412 /home/alex/lsrc/qemu/qemu.git/util/qht.----:412 ----: push %r12 ----: push %r12 ----: push %rbp ----: push %rbp clz64(): clz64(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 ----: mov $0x1,%ebp ----: mov $0x1,%ebp qht_reset_size(): qht_reset_size(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:412 /home/alex/lsrc/qemu/qemu.git/util/qht.----:412 ----: push %rbx ----: push %rbx ----: mov %rdi,%rbx ----: mov %rdi,%rbx clz64(): clz64(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 ----: je 781 | ----: je 7d1 pow2ceil(): pow2ceil(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:510 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:510 ----: lea -0x1(%rsi),%rdx ----: lea -0x1(%rsi),%rdx clz64(): clz64(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 ----: bsr %rsi,%rax ----: bsr %rsi,%rax ----: mov %rsi,%rbp ----: mov %rsi,%rbp ----: xor $0x3f,%rax ----: xor $0x3f,%rax pow2ceil(): pow2ceil(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:510 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:510 ----: test %rsi,%rdx ----: test %rsi,%rdx ----: jne 882 | ----: jne 8d2 qht_reset_size(): qht_reset_size(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:420 /home/alex/lsrc/qemu/qemu.git/util/qht.----:420 ----: lea 0x8(%rbx),%r12 ----: lea 0x8(%rbx),%r12 ----: mov %r12,%rdi ----: mov %r12,%rdi ----: callq 78d | ----: callq 7dd /home/alex/lsrc/qemu/qemu.git/util/qht.----:421 /home/alex/lsrc/qemu/qemu.git/util/qht.----:421 ----: mov (%rbx),%r14 ----: mov (%rbx),%r14 /home/alex/lsrc/qemu/qemu.git/util/qht.----:422 /home/alex/lsrc/qemu/qemu.git/util/qht.----:422 ----: cmp %rbp,0x18(%r14) ----: cmp %rbp,0x18(%r14) ----: je 860 | ----: je 8b0 /home/alex/lsrc/qemu/qemu.git/util/qht.----:423 /home/alex/lsrc/qemu/qemu.git/util/qht.----:423 ----: mov %rbp,%rdi ----: mov %rbp,%rdi ----: callq 0 ----: callq 0 qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: cmpq $0x0,0x18(%r14) ----: cmpq $0x0,0x18(%r14) qht_reset_size(): qht_reset_size(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:423 /home/alex/lsrc/qemu/qemu.git/util/qht.----:423 ----: mov %rax,%r13 ----: mov %rax,%r13 qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: je 870 | ----: je 8c0 qht_reset_size(): qht_reset_size(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:424 /home/alex/lsrc/qemu/qemu.git/util/qht.----:424 ----: mov $0x1,%ebp ----: mov $0x1,%ebp ----: xor %edx,%edx ----: xor %edx,%edx qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov $0x1,%esi ----: mov $0x1,%esi ----: jmp 7cd | ----: jmp 81d ----: xchg %ax,%ax ----: xchg %ax,%ax qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: mov 0x18(%r14),%rax ----: mov 0x18(%r14),%rax ----: add $0x1,%rdx ----: add $0x1,%rdx ----: cmp %rax,%rdx ----: cmp %rax,%rdx ----: jae 7f8 | ----: jae 848 ----: mov %rdx,%rax ----: mov %rdx,%rax ----: shl $0x6,%rax ----: shl $0x6,%rax ----: add 0x10(%r14),%rax ----: add 0x10(%r14),%rax qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov %esi,%ecx ----: mov %esi,%ecx ----: xchg %ecx,(%rax) ----: xchg %ecx,(%rax) ----: test %ecx,%ecx ----: test %ecx,%ecx ----: je 7c0 | ----: je 810 ----: jmp 7ea | ----: jmp 83a ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 ----: pause ----: pause /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 ----: mov (%rax),%ecx ----: mov (%rax),%ecx ----: test %ecx,%ecx ----: test %ecx,%ecx ----: jne 7e8 | ----: jne 838 ----: jmp 7d8 | ----: jmp 828 ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) qht_map_reset__all_locked(): qht_map_reset__all_locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:396 /home/alex/lsrc/qemu/qemu.git/util/qht.----:396 ----: test %rax,%rax ----: test %rax,%rax ----: je 867 | ----: je 8b7 ----: xor %r8d,%r8d ----: xor %r8d,%r8d /home/alex/lsrc/qemu/qemu.git/util/qht.----:397 /home/alex/lsrc/qemu/qemu.git/util/qht.----:397 ----: mov %r8,%rdi ----: mov %r8,%rdi ----: shl $0x6,%rdi ----: shl $0x6,%rdi ----: add 0x10(%r14),%rdi ----: add 0x10(%r14),%rdi ----: callq 380 | ----: callq 3e0 /home/alex/lsrc/qemu/qemu.git/util/qht.----:396 /home/alex/lsrc/qemu/qemu.git/util/qht.----:396 ----: add $0x1,%r8 ----: add $0x1,%r8 ----: cmp 0x18(%r14),%r8 ----: cmp 0x18(%r14),%r8 ----: jb 800 | ----: jb 850 qht_reset_size(): qht_reset_size(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:429 /home/alex/lsrc/qemu/qemu.git/util/qht.----:429 ----: test %bpl,%bpl ----: test %bpl,%bpl ----: jne 870 | ----: jne 8c0 qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: xor %eax,%eax ----: xor %eax,%eax ----: cmpq $0x0,0x18(%r14) ----: cmpq $0x0,0x18(%r14) ----: je 84b | ----: je 89b ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: mov %rax,%rdx ----: mov %rax,%rdx qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: add $0x1,%rax ----: add $0x1,%rax qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: shl $0x6,%rdx ----: shl $0x6,%rdx ----: add 0x10(%r14),%rdx ----: add 0x10(%r14),%rdx ----: movl $0x0,(%rdx) ----: movl $0x0,(%rdx) qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: cmp 0x18(%r14),%rax ----: cmp 0x18(%r14),%rax ----: jb 830 | ----: jb 880 qht_reset_size(): qht_reset_size(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:433 /home/alex/lsrc/qemu/qemu.git/util/qht.----:433 ----: mov %r12,%rdi ----: mov %r12,%rdi ----: callq 853 | ----: callq 8a3 /home/alex/lsrc/qemu/qemu.git/util/qht.----:436 /home/alex/lsrc/qemu/qemu.git/util/qht.----:436 ----: pop %rbx ----: pop %rbx ----: mov %ebp,%eax ----: mov %ebp,%eax ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: pop %r14 ----: pop %r14 ----: retq ----: retq ----: xchg %ax,%ax ----: xchg %ax,%ax /home/alex/lsrc/qemu/qemu.git/util/qht.----:416 /home/alex/lsrc/qemu/qemu.git/util/qht.----:416 ----: xor %ebp,%ebp ----: xor %ebp,%ebp ----: jmpq 7b5 | ----: jmpq 805 /home/alex/lsrc/qemu/qemu.git/util/qht.----:429 /home/alex/lsrc/qemu/qemu.git/util/qht.----:429 ----: test %bpl,%bpl ----: test %bpl,%bpl ----: je 84b | ----: je 89b ----: nopl 0x0(%rax) ----: nopl 0x0(%rax) /home/alex/lsrc/qemu/qemu.git/util/qht.----:430 /home/alex/lsrc/qemu/qemu.git/util/qht.----:430 ----: mov %r13,%rsi ----: mov %r13,%rsi ----: mov %rbx,%rdi ----: mov %rbx,%rdi ----: mov $0x1,%ebp ----: mov $0x1,%ebp ----: callq 270 | ----: callq 2d0 ----: jmp 81f | ----: jmp 86f ----: mov $0x40,%ecx ----: mov $0x40,%ecx ----: mov $0x1,%ebp ----: mov $0x1,%ebp ----: sub %eax,%ecx ----: sub %eax,%ecx ----: shl %cl,%rbp ----: shl %cl,%rbp ----: jmpq 781 | ----: jmpq 7d1 ----: nopw %cs:0x0(%rax,%rax,1) ----: nopw %cs:0x0(%rax,%rax,1) 00000000000008a0 : | 00000000000008f0 : qht_lookup(): qht_lookup(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:481 /home/alex/lsrc/qemu/qemu.git/util/qht.----:481 ----: push %r15 ----: push %r15 ----: push %r14 ----: push %r14 ----: mov %rsi,%r8 | ----: mov %rsi,%r15 ----: push %r13 ----: push %r13 ----: push %r12 ----: push %r12 ----: push %rbp ----: push %rbp ----: push %rbx ----: push %rbx ----: sub $0x28,%rsp ----: sub $0x28,%rsp > ----: mov %rdx,0x8(%rsp) /home/alex/lsrc/qemu/qemu.git/util/qht.----:487 /home/alex/lsrc/qemu/qemu.git/util/qht.----:487 ----: mov (%rdi),%rax ----: mov (%rdi),%rax qht_map_to_bucket(): qht_map_to_bucket(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 ----: mov 0x18(%rax),%rsi ----: mov 0x18(%rax),%rsi ----: lea -0x1(%rsi),%r13 ----: lea -0x1(%rsi),%r13 ----: and %ecx,%r13d ----: and %ecx,%r13d ----: shl $0x6,%r13 ----: shl $0x6,%r13 ----: add 0x10(%rax),%r13 ----: add 0x10(%rax),%r13 seqlock_read_begin(): seqlock_read_begin(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:51 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:51 ----: mov 0x4(%r13),%r15d | ----: mov 0x4(%r13),%r14d /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:55 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:55 ----: and $0xfffffffe,%r15d | ----: and $0xfffffffe,%r14d qht_do_lookup(): qht_do_lookup(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:442 /home/alex/lsrc/qemu/qemu.git/util/qht.----:442 ----: mov %r13,%r12 ----: mov %r13,%r12 seqlock_read_begin(): seqlock_read_begin(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:55 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:55 ----: mov %r15d,0x1c(%rsp) | ----: mov %r14d,0x1c(%rsp) ----: lea 0x8(%r12),%rbp ----: lea 0x8(%r12),%rbp ----: lea 0x18(%r12),%rbx ----: lea 0x18(%r12),%rbx ----: lea 0x38(%r12),%r14 | ----: lea 0x38(%r12),%rdx qht_do_lookup(): qht_do_lookup(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:447 /home/alex/lsrc/qemu/qemu.git/util/qht.----:447 ----: cmp 0x0(%rbp),%ecx | ----: mov 0x0(%rbp),%eax ----: je 910 | ----: cmp %eax,%ecx > ----: je 960 ----: add $0x8,%rbx ----: add $0x8,%rbx ----: add $0x4,%rbp ----: add $0x4,%rbp /home/alex/lsrc/qemu/qemu.git/util/qht.----:446 /home/alex/lsrc/qemu/qemu.git/util/qht.----:446 ----: cmp %rbx,%r14 | ----: cmp %rbx,%rdx ----: jne 8e6 | ----: jne 93b /home/alex/lsrc/qemu/qemu.git/util/qht.----:459 /home/alex/lsrc/qemu/qemu.git/util/qht.----:459 ----: mov 0x38(%r12),%r12 ----: mov 0x38(%r12),%r12 /home/alex/lsrc/qemu/qemu.git/util/qht.----:460 /home/alex/lsrc/qemu/qemu.git/util/qht.----:460 ----: test %r12,%r12 ----: test %r12,%r12 ----: jne 8d7 | ----: jne 92c /home/alex/lsrc/qemu/qemu.git/util/qht.----:462 /home/alex/lsrc/qemu/qemu.git/util/qht.----:462 ----: xor %r15d,%r15d | ----: xor %r14d,%r14d ----: jmp 941 | ----: jmp 989 ----: nopw 0x0(%rax,%rax,1) | ----: xchg %ax,%ax /home/alex/lsrc/qemu/qemu.git/util/qht.----:452 /home/alex/lsrc/qemu/qemu.git/util/qht.----:452 ----: mov (%rbx),%r15 | ----: mov (%rbx),%r14 /home/alex/lsrc/qemu/qemu.git/util/qht.----:454 /home/alex/lsrc/qemu/qemu.git/util/qht.----:454 ----: test %r15,%r15 | ----: test %r14,%r14 ----: je 8eb | ----: je 942 ----: mov %ecx,0x18(%rsp) ----: mov %ecx,0x18(%rsp) ----: mov %rdx,%rsi < ----: mov %rdx,0x10(%rsp) ----: mov %rdx,0x10(%rsp) ----: mov %r8,0x8(%rsp) | ----: mov %r14,%rdi ----: mov %r15,%rdi | ----: mov 0x8(%rsp),%rsi ----: callq *%r8 | ----: callq *%r15 ----: test %al,%al ----: test %al,%al ----: mov 0x8(%rsp),%r8 < ----: mov 0x10(%rsp),%rdx ----: mov 0x10(%rsp),%rdx ----: mov 0x18(%rsp),%ecx ----: mov 0x18(%rsp),%ecx ----: je 8eb | ----: je 942 seqlock_read_retry(): seqlock_read_retry(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:62 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:62 ----: mov 0x4(%r13),%eax ----: mov 0x4(%r13),%eax qht_lookup(): qht_lookup(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:492 /home/alex/lsrc/qemu/qemu.git/util/qht.----:492 ----: cmp 0x1c(%rsp),%eax ----: cmp 0x1c(%rsp),%eax ----: jne 960 | ----: jne 9a8 /home/alex/lsrc/qemu/qemu.git/util/qht.----:500 /home/alex/lsrc/qemu/qemu.git/util/qht.----:500 ----: add $0x28,%rsp ----: add $0x28,%rsp ----: mov %r15,%rax | ----: mov %r14,%rax ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: pop %r14 ----: pop %r14 ----: pop %r15 ----: pop %r15 ----: retq ----: retq ----: nopl (%rax) ----: nopl (%rax) > /home/alex/lsrc/qemu/qemu.git/util/qht.----:499 > ----: mov 0x8(%rsp),%rdx > /home/alex/lsrc/qemu/qemu.git/util/qht.----:500 ----: add $0x28,%rsp ----: add $0x28,%rsp /home/alex/lsrc/qemu/qemu.git/util/qht.----:499 /home/alex/lsrc/qemu/qemu.git/util/qht.----:499 ----: mov %r13,%rdi | ----: mov %r15,%rsi ----: mov %r8,%rsi < /home/alex/lsrc/qemu/qemu.git/util/qht.----:500 /home/alex/lsrc/qemu/qemu.git/util/qht.----:500 ----: pop %rbx ----: pop %rbx > /home/alex/lsrc/qemu/qemu.git/util/qht.----:499 > ----: mov %r13,%rdi > /home/alex/lsrc/qemu/qemu.git/util/qht.----:500 ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: pop %r14 ----: pop %r14 ----: pop %r15 ----: pop %r15 /home/alex/lsrc/qemu/qemu.git/util/qht.----:499 /home/alex/lsrc/qemu/qemu.git/util/qht.----:499 ----: jmpq 3d0 | ----: jmpq 430 ----: nopl 0x0(%rax) | ----: nopw %cs:0x0(%rax,%rax,1) 0000000000000980 : | 00000000000009d0 : qht_insert(): qht_insert(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:572 /home/alex/lsrc/qemu/qemu.git/util/qht.----:572 ----: push %r14 ----: push %r14 ----: push %r13 ----: push %r13 ----: push %r12 ----: push %r12 ----: push %rbp ----: push %rbp ----: mov %rdi,%rbp ----: mov %rdi,%rbp ----: push %rbx ----: push %rbx ----: sub $0x20,%rsp ----: sub $0x20,%rsp ----: mov %fs:0x28,%rax ----: mov %fs:0x28,%rax ----: mov %rax,0x18(%rsp) ----: mov %rax,0x18(%rsp) ----: xor %eax,%eax ----: xor %eax,%eax /home/alex/lsrc/qemu/qemu.git/util/qht.----:575 /home/alex/lsrc/qemu/qemu.git/util/qht.----:575 ----: movb $0x0,0x17(%rsp) ----: movb $0x0,0x17(%rsp) qht_bucket_lock__no_stale(): qht_bucket_lock__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:279 /home/alex/lsrc/qemu/qemu.git/util/qht.----:279 ----: mov (%rdi),%rax ----: mov (%rdi),%rax qht_map_to_bucket(): qht_map_to_bucket(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 ----: mov 0x18(%rax),%rdi ----: mov 0x18(%rax),%rdi ----: mov %edx,%r13d ----: mov %edx,%r13d ----: lea -0x1(%rdi),%rbx ----: lea -0x1(%rdi),%rbx qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov $0x1,%edi ----: mov $0x1,%edi qht_map_to_bucket(): qht_map_to_bucket(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 ----: and %r13,%rbx ----: and %r13,%rbx ----: shl $0x6,%rbx ----: shl $0x6,%rbx ----: add 0x10(%rax),%rbx ----: add 0x10(%rax),%rbx qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov %edi,%ecx ----: mov %edi,%ecx ----: xchg %ecx,(%rbx) ----: xchg %ecx,(%rbx) ----: test %ecx,%ecx ----: test %ecx,%ecx ----: jne a22 | ----: jne a72 ----: mov 0x0(%rbp),%r12 ----: mov 0x0(%rbp),%r12 qht_bucket_lock__no_stale(): qht_bucket_lock__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:283 /home/alex/lsrc/qemu/qemu.git/util/qht.----:283 ----: cmp %r12,%rax ----: cmp %r12,%rax ----: jne a30 | ----: jne a80 qht_insert(): qht_insert(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:582 /home/alex/lsrc/qemu/qemu.git/util/qht.----:582 ----: lea 0x17(%rsp),%r8 ----: lea 0x17(%rsp),%r8 ----: mov %edx,%ecx ----: mov %edx,%ecx ----: mov %r12,%rdi ----: mov %r12,%rdi ----: mov %rsi,%rdx ----: mov %rsi,%rdx ----: mov %rbx,%rsi ----: mov %rbx,%rsi ----: callq 140 | ----: callq 190 qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: movl $0x0,(%rbx) ----: movl $0x0,(%rbx) qht_insert(): qht_insert(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:586 /home/alex/lsrc/qemu/qemu.git/util/qht.----:586 ----: cmpb $0x0,0x17(%rsp) ----: cmpb $0x0,0x17(%rsp) ----: jne ab0 | ----: jne b00 /home/alex/lsrc/qemu/qemu.git/util/qht.----:590 /home/alex/lsrc/qemu/qemu.git/util/qht.----:590 ----: mov 0x18(%rsp),%rsi ----: mov 0x18(%rsp),%rsi ----: xor %fs:0x28,%rsi ----: xor %fs:0x28,%rsi ----: jne ace | ----: jne b1e ----: add $0x20,%rsp ----: add $0x20,%rsp ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: pop %r14 ----: pop %r14 ----: retq ----: retq ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 ----: pause ----: pause /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 ----: mov (%rbx),%ecx ----: mov (%rbx),%ecx ----: test %ecx,%ecx ----: test %ecx,%ecx ----: jne a20 | ----: jne a70 ----: jmp 9c2 | ----: jmp a12 ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) qht_bucket_lock__no_stale(): qht_bucket_lock__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:290 /home/alex/lsrc/qemu/qemu.git/util/qht.----:290 ----: lea 0x8(%rbp),%r14 ----: lea 0x8(%rbp),%r14 ----: mov %edx,0xc(%rsp) ----: mov %edx,0xc(%rsp) ----: mov %rsi,(%rsp) ----: mov %rsi,(%rsp) qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: movl $0x0,(%rbx) ----: movl $0x0,(%rbx) qht_bucket_lock__no_stale(): qht_bucket_lock__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:290 /home/alex/lsrc/qemu/qemu.git/util/qht.----:290 ----: mov %r14,%rdi ----: mov %r14,%rdi ----: callq a4a | ----: callq a9a /home/alex/lsrc/qemu/qemu.git/util/qht.----:291 /home/alex/lsrc/qemu/qemu.git/util/qht.----:291 ----: mov 0x0(%rbp),%r12 ----: mov 0x0(%rbp),%r12 ----: mov (%rsp),%rsi ----: mov (%rsp),%rsi qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov $0x1,%ecx ----: mov $0x1,%ecx ----: mov 0xc(%rsp),%edx ----: mov 0xc(%rsp),%edx qht_map_to_bucket(): qht_map_to_bucket(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 ----: mov 0x18(%r12),%rax ----: mov 0x18(%r12),%rax ----: lea -0x1(%rax),%rbx ----: lea -0x1(%rax),%rbx ----: and %rbx,%r13 ----: and %rbx,%r13 ----: shl $0x6,%r13 ----: shl $0x6,%r13 ----: mov %r13,%rbx ----: mov %r13,%rbx ----: add 0x10(%r12),%rbx ----: add 0x10(%r12),%rbx qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov %ecx,%eax ----: mov %ecx,%eax ----: xchg %eax,(%rbx) ----: xchg %eax,(%rbx) ----: test %eax,%eax ----: test %eax,%eax ----: jne aa2 | ----: jne af2 qht_bucket_lock__no_stale(): qht_bucket_lock__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:294 /home/alex/lsrc/qemu/qemu.git/util/qht.----:294 ----: mov %r14,%rdi ----: mov %r14,%rdi ----: mov %edx,0xc(%rsp) ----: mov %edx,0xc(%rsp) ----: mov %rsi,(%rsp) ----: mov %rsi,(%rsp) ----: callq a8b | ----: callq adb ----: mov 0xc(%rsp),%edx ----: mov 0xc(%rsp),%edx ----: mov (%rsp),%rsi ----: mov (%rsp),%rsi ----: jmpq 9d3 | ----: jmpq a23 ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 ----: pause ----: pause /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 ----: mov (%rbx),%eax ----: mov (%rbx),%eax ----: test %eax,%eax ----: test %eax,%eax ----: jne aa0 | ----: jne af0 ----: jmp a73 | ----: jmp ac3 ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) qht_insert(): qht_insert(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:586 (discriminator 1) /home/alex/lsrc/qemu/qemu.git/util/qht.----:586 (discriminator 1) ----: testb $0x1,0x30(%rbp) ----: testb $0x1,0x30(%rbp) ----: je 9f9 | ----: je a49 /home/alex/lsrc/qemu/qemu.git/util/qht.----:587 /home/alex/lsrc/qemu/qemu.git/util/qht.----:587 ----: mov %rbp,%rdi ----: mov %rbp,%rdi ----: mov %al,(%rsp) ----: mov %al,(%rsp) ----: callq 490 | ----: callq 4e0 ----: movzbl (%rsp),%eax ----: movzbl (%rsp),%eax ----: jmpq 9f9 | ----: jmpq a49 /home/alex/lsrc/qemu/qemu.git/util/qht.----:590 /home/alex/lsrc/qemu/qemu.git/util/qht.----:590 ----: callq ad3 | ----: callq b23 ----: nopl (%rax) ----: nopl (%rax) ----: nopw %cs:0x0(%rax,%rax,1) ----: nopw %cs:0x0(%rax,%rax,1) 0000000000000ae0 : | 0000000000000b30 : qht_remove(): qht_remove(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:679 /home/alex/lsrc/qemu/qemu.git/util/qht.----:679 ----: push %r13 ----: push %r13 ----: push %r12 ----: push %r12 ----: mov %rdi,%r12 ----: mov %rdi,%r12 ----: push %rbp ----: push %rbp ----: push %rbx ----: push %rbx ----: sub $0x18,%rsp ----: sub $0x18,%rsp qht_bucket_lock__no_stale(): qht_bucket_lock__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:279 /home/alex/lsrc/qemu/qemu.git/util/qht.----:279 ----: mov (%rdi),%rax ----: mov (%rdi),%rax qht_map_to_bucket(): qht_map_to_bucket(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 ----: mov 0x18(%rax),%rdi | ----: mov 0x18(%rax),%rcx ----: mov %edx,%ebp ----: mov %edx,%ebp > ----: lea -0x1(%rcx),%rbx qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov $0x1,%ecx ----: mov $0x1,%ecx qht_map_to_bucket(): qht_map_to_bucket(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 ----: lea -0x1(%rdi),%rbx < ----: and %rbp,%rbx ----: and %rbp,%rbx ----: shl $0x6,%rbx ----: shl $0x6,%rbx ----: add 0x10(%rax),%rbx ----: add 0x10(%rax),%rbx qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov %ecx,%edx ----: mov %ecx,%edx ----: xchg %edx,(%rbx) ----: xchg %edx,(%rbx) ----: test %edx,%edx ----: test %edx,%edx ----: jne b6a | ----: jne bba qht_bucket_lock__no_stale(): qht_bucket_lock__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:283 /home/alex/lsrc/qemu/qemu.git/util/qht.----:283 ----: cmp (%r12),%rax ----: cmp (%r12),%rax ----: jne c40 | ----: jne c70 qht_remove(): qht_remove(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:679 /home/alex/lsrc/qemu/qemu.git/util/qht.----:679 ----: mov %rbx,%rcx | ----: mov %rbx,%rdi ----: xor %eax,%eax ----: xor %eax,%eax qht_remove__locked(): qht_remove__locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:660 /home/alex/lsrc/qemu/qemu.git/util/qht.----:660 ----: mov 0x18(%rcx,%rax,8),%rdx | ----: mov 0x18(%rdi,%rax,8),%rdx ----: movslq %eax,%rdi | ----: movslq %eax,%r8 /home/alex/lsrc/qemu/qemu.git/util/qht.----:662 /home/alex/lsrc/qemu/qemu.git/util/qht.----:662 ----: test %rdx,%rdx ----: test %rdx,%rdx ----: je b50 | ----: je ba0 /home/alex/lsrc/qemu/qemu.git/util/qht.----:665 /home/alex/lsrc/qemu/qemu.git/util/qht.----:665 ----: cmp %rdx,%rsi ----: cmp %rdx,%rsi ----: je b78 | ----: je bc8 ----: add $0x1,%rax ----: add $0x1,%rax /home/alex/lsrc/qemu/qemu.git/util/qht.----:659 /home/alex/lsrc/qemu/qemu.git/util/qht.----:659 ----: cmp $0x4,%rax ----: cmp $0x4,%rax ----: jne b21 | ----: jne b71 /home/alex/lsrc/qemu/qemu.git/util/qht.----:673 /home/alex/lsrc/qemu/qemu.git/util/qht.----:673 ----: mov 0x38(%rcx),%rcx | ----: mov 0x38(%rdi),%rdi /home/alex/lsrc/qemu/qemu.git/util/qht.----:674 /home/alex/lsrc/qemu/qemu.git/util/qht.----:674 ----: test %rcx,%rcx | ----: test %rdi,%rdi ----: jne b1f | ----: jne b6f ----: nopw %cs:0x0(%rax,%rax,1) ----: nopw %cs:0x0(%rax,%rax,1) /home/alex/lsrc/qemu/qemu.git/util/qht.----:663 /home/alex/lsrc/qemu/qemu.git/util/qht.----:663 ----: xor %eax,%eax ----: xor %eax,%eax qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: movl $0x0,(%rbx) ----: movl $0x0,(%rbx) qht_remove(): qht_remove(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:692 /home/alex/lsrc/qemu/qemu.git/util/qht.----:692 ----: add $0x18,%rsp ----: add $0x18,%rsp ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: retq ----: retq ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 ----: pause ----: pause /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 ----: mov (%rbx),%edx ----: mov (%rbx),%edx ----: test %edx,%edx ----: test %edx,%edx ----: jne b68 | ----: jne bb8 ----: jmp b0a | ----: jmp b5a ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) seqlock_write_begin(): seqlock_write_begin(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:34 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:34 ----: mov 0x4(%rbx),%eax ----: mov 0x4(%rbx),%eax ----: lea 0x4(%rbx),%r8 | ----: lea 0x4(%rbx),%rbp ----: add $0x1,%eax ----: add $0x1,%eax ----: mov %eax,0x4(%rbx) ----: mov %eax,0x4(%rbx) qht_entry_is_last(): qht_entry_is_last(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:594 /home/alex/lsrc/qemu/qemu.git/util/qht.----:594 ----: cmp $0x3,%edi | ----: cmp $0x3,%r8d ----: je bcf | ----: je c22 /home/alex/lsrc/qemu/qemu.git/util/qht.----:600 /home/alex/lsrc/qemu/qemu.git/util/qht.----:600 ----: lea 0x1(%rdi),%eax | ----: lea 0x1(%r8),%eax ----: cltq ----: cltq ----: cmpq $0x0,0x18(%rcx,%rax,8) | ----: cmpq $0x0,0x18(%rdi,%rax,8) ----: sete %al ----: sete %al qht_bucket_remove_entry(): qht_bucket_remove_entry(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:627 /home/alex/lsrc/qemu/qemu.git/util/qht.----:627 ----: xor %r9d,%r9d | ----: xor %esi,%esi ----: test %al,%al ----: test %al,%al ----: mov %rcx,%rdx | ----: mov %rdi,%rdx ----: jne caa | ----: jne cda /home/alex/lsrc/qemu/qemu.git/util/qht.----:645 /home/alex/lsrc/qemu/qemu.git/util/qht.----:645 ----: xor %eax,%eax ----: xor %eax,%eax /home/alex/lsrc/qemu/qemu.git/util/qht.----:634 /home/alex/lsrc/qemu/qemu.git/util/qht.----:634 ----: cmpq $0x0,0x18(%rdx,%rax,8) ----: cmpq $0x0,0x18(%rdx,%rax,8) ----: je bf0 | ----: mov %eax,%ecx > ----: je c40 ----: add $0x1,%rax ----: add $0x1,%rax /home/alex/lsrc/qemu/qemu.git/util/qht.----:633 /home/alex/lsrc/qemu/qemu.git/util/qht.----:633 ----: cmp $0x4,%rax ----: cmp $0x4,%rax ----: jne ba8 | ----: jne bf9 /home/alex/lsrc/qemu/qemu.git/util/qht.----:644 /home/alex/lsrc/qemu/qemu.git/util/qht.----:644 ----: mov 0x38(%rdx),%rax ----: mov 0x38(%rdx),%rax ----: mov %rdx,%r9 | ----: mov %rdx,%rsi /home/alex/lsrc/qemu/qemu.git/util/qht.----:645 /home/alex/lsrc/qemu/qemu.git/util/qht.----:645 ----: test %rax,%rax ----: test %rax,%rax ----: je cee | ----: je d0a ----: mov %rax,%rdx ----: mov %rax,%rdx ----: jmp ba6 | ----: jmp bf7 qht_entry_is_last(): qht_entry_is_last(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:595 /home/alex/lsrc/qemu/qemu.git/util/qht.----:595 ----: mov 0x38(%rcx),%rax | ----: mov 0x38(%rdi),%rax ----: test %rax,%rax ----: test %rax,%rax ----: je caa | ----: je cda /home/alex/lsrc/qemu/qemu.git/util/qht.----:598 /home/alex/lsrc/qemu/qemu.git/util/qht.----:598 ----: cmpq $0x0,0x18(%rax) ----: cmpq $0x0,0x18(%rax) ----: sete %al ----: sete %al ----: jmp b98 | ----: jmp bea ----: nopw %cs:0x0(%rax,%rax,1) | ----: nopl 0x0(%rax) qht_bucket_remove_entry(): qht_bucket_remove_entry(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:637 /home/alex/lsrc/qemu/qemu.git/util/qht.----:637 ----: test %eax,%eax ----: test %eax,%eax ----: je cc4 | ----: je cf5 /home/alex/lsrc/qemu/qemu.git/util/qht.----:638 /home/alex/lsrc/qemu/qemu.git/util/qht.----:638 ----: lea -0x1(%rax),%eax | ----: sub $0x1,%ecx ----: cltq | ----: mov %r8d,%esi ----: lea (%rdx,%rax,4),%rsi | ----: callq 140 qht_entry_move(): < /home/alex/lsrc/qemu/qemu.git/util/qht.----:610 < ----: mov 0x8(%rsi),%r9d < ----: mov %r9d,0x8(%rcx,%rdi,4) < /home/alex/lsrc/qemu/qemu.git/util/qht.----:611 < ----: mov 0x18(%rdx,%rax,8),%r9 < ----: shl $0x3,%rdi < /home/alex/lsrc/qemu/qemu.git/util/qht.----:614 < ----: shl $0x3,%rax < /home/alex/lsrc/qemu/qemu.git/util/qht.----:611 < ----: mov %r9,0x18(%rcx,%rdi,1) < /home/alex/lsrc/qemu/qemu.git/util/qht.----:613 < ----: movl $0x0,0x8(%rsi) < /home/alex/lsrc/qemu/qemu.git/util/qht.----:614 < ----: movq $0x0,0x18(%rdx,%rax,1) < seqlock_write_end(): seqlock_write_end(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:45 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:45 ----: mov 0x4(%rbx),%eax ----: mov 0x4(%rbx),%eax ----: add $0x1,%eax ----: add $0x1,%eax ----: mov %eax,(%r8) | ----: mov %eax,0x0(%rbp) qht_remove__locked(): qht_remove__locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:670 /home/alex/lsrc/qemu/qemu.git/util/qht.----:670 ----: mov $0x1,%eax ----: mov $0x1,%eax ----: jmpq b52 | ----: jmpq ba2 ----: nop | ----: nopw %cs:0x0(%rax,%rax,1) qht_bucket_lock__no_stale(): qht_bucket_lock__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:290 /home/alex/lsrc/qemu/qemu.git/util/qht.----:290 ----: lea 0x8(%r12),%r13 ----: lea 0x8(%r12),%r13 ----: mov %rsi,0x8(%rsp) ----: mov %rsi,0x8(%rsp) qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: movl $0x0,(%rbx) ----: movl $0x0,(%rbx) qht_bucket_lock__no_stale(): qht_bucket_lock__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:290 /home/alex/lsrc/qemu/qemu.git/util/qht.----:290 ----: mov %r13,%rdi ----: mov %r13,%rdi ----: callq c58 | ----: callq c88 /home/alex/lsrc/qemu/qemu.git/util/qht.----:291 /home/alex/lsrc/qemu/qemu.git/util/qht.----:291 ----: mov (%r12),%rax ----: mov (%r12),%rax > ----: mov 0x8(%rsp),%rsi qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov $0x1,%edx ----: mov $0x1,%edx qht_map_to_bucket(): qht_map_to_bucket(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 /home/alex/lsrc/qemu/qemu.git/util/qht.----:200 ----: mov 0x18(%rax),%rsi | ----: mov 0x18(%rax),%rcx ----: lea -0x1(%rsi),%rbx | ----: lea -0x1(%rcx),%rbx ----: mov 0x8(%rsp),%rsi < ----: and %rbx,%rbp ----: and %rbx,%rbp ----: shl $0x6,%rbp ----: shl $0x6,%rbp ----: mov %rbp,%rbx ----: mov %rbp,%rbx ----: add 0x10(%rax),%rbx ----: add 0x10(%rax),%rbx qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov %edx,%eax ----: mov %edx,%eax ----: xchg %eax,(%rbx) ----: xchg %eax,(%rbx) ----: test %eax,%eax ----: test %eax,%eax ----: jne ca2 | ----: jne cd2 qht_bucket_lock__no_stale(): qht_bucket_lock__no_stale(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:294 /home/alex/lsrc/qemu/qemu.git/util/qht.----:294 ----: mov %r13,%rdi ----: mov %r13,%rdi ----: mov %rsi,0x8(%rsp) ----: mov %rsi,0x8(%rsp) ----: callq c91 | ----: callq cc1 ----: mov 0x8(%rsp),%rsi ----: mov 0x8(%rsp),%rsi ----: jmpq b1c | ----: jmpq b6c ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 ----: pause ----: pause /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 ----: mov (%rbx),%eax ----: mov (%rbx),%eax ----: test %eax,%eax ----: test %eax,%eax ----: jne ca0 | ----: jne cd0 ----: jmp c7c | ----: jmp cac qht_bucket_remove_entry(): qht_bucket_remove_entry(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:628 /home/alex/lsrc/qemu/qemu.git/util/qht.----:628 ----: movl $0x0,0x8(%rcx,%rdi,4) | ----: movl $0x0,0x8(%rdi,%r8,4) /home/alex/lsrc/qemu/qemu.git/util/qht.----:629 /home/alex/lsrc/qemu/qemu.git/util/qht.----:629 ----: shl $0x3,%rdi | ----: shl $0x3,%r8 ----: movq $0x0,0x18(%rcx,%rdi,1) | ----: movq $0x0,0x18(%rdi,%r8,1) ----: jmpq c2c | ----: jmpq c53 qht_entry_move(): | /home/alex/lsrc/qemu/qemu.git/util/qht.----:641 /home/alex/lsrc/qemu/qemu.git/util/qht.----:610 | ----: mov %rsi,%rdx ----: mov 0x14(%r9),%eax | ----: mov $0x3,%ecx ----: mov %eax,0x8(%rcx,%rdi,4) | ----: mov %r8d,%esi /home/alex/lsrc/qemu/qemu.git/util/qht.----:611 | ----: callq 140 ----: mov 0x30(%r9),%rax | ----: jmpq c53 ----: shl $0x3,%rdi | /home/alex/lsrc/qemu/qemu.git/util/qht.----:647 ----: mov %rax,0x18(%rcx,%rdi,1) | ----: mov $0x3,%ecx /home/alex/lsrc/qemu/qemu.git/util/qht.----:613 | ----: mov %r8d,%esi ----: movl $0x0,0x14(%r9) | ----: callq 140 /home/alex/lsrc/qemu/qemu.git/util/qht.----:614 | ----: jmpq c53 ----: movq $0x0,0x30(%r9) < ----: jmpq c2c < /home/alex/lsrc/qemu/qemu.git/util/qht.----:610 < ----: mov 0x14(%rdx),%eax < ----: mov %eax,0x8(%rcx,%rdi,4) < /home/alex/lsrc/qemu/qemu.git/util/qht.----:611 < ----: mov 0x30(%rdx),%rax < ----: shl $0x3,%rdi < ----: mov %rax,0x18(%rcx,%rdi,1) < /home/alex/lsrc/qemu/qemu.git/util/qht.----:613 < ----: movl $0x0,0x14(%rdx) < /home/alex/lsrc/qemu/qemu.git/util/qht.----:614 < ----: movq $0x0,0x30(%rdx) < ----: jmpq c2c < qht_remove(): qht_remove(): ----: nopw %cs:0x0(%rax,%rax,1) | ----: nopl 0x0(%rax) 0000000000000d20 : 0000000000000d20 : qht_iter(): qht_iter(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:722 /home/alex/lsrc/qemu/qemu.git/util/qht.----:722 ----: push %r15 ----: push %r15 ----: push %r14 ----: push %r14 ----: push %r13 ----: push %r13 ----: push %r12 ----: push %r12 ----: push %rbp ----: push %rbp ----: push %rbx ----: push %rbx ----: sub $0x18,%rsp ----: sub $0x18,%rsp /home/alex/lsrc/qemu/qemu.git/util/qht.----:725 /home/alex/lsrc/qemu/qemu.git/util/qht.----:725 ----: mov (%rdi),%r14 ----: mov (%rdi),%r14 qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: cmpq $0x0,0x18(%r14) ----: cmpq $0x0,0x18(%r14) ----: je e1b ----: je e1b ----: xor %ecx,%ecx ----: xor %ecx,%ecx qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov $0x1,%r9d ----: mov $0x1,%r9d ----: jmp d5d ----: jmp d5d ----: nopw %cs:0x0(%rax,%rax,1) ----: nopw %cs:0x0(%rax,%rax,1) qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: mov 0x18(%r14),%rax ----: mov 0x18(%r14),%rax ----: add $0x1,%rcx ----: add $0x1,%rcx ----: cmp %rax,%rcx ----: cmp %rax,%rcx ----: jae d84 ----: jae d84 ----: mov %rcx,%rax ----: mov %rcx,%rax ----: shl $0x6,%rax ----: shl $0x6,%rax ----: add 0x10(%r14),%rax ----: add 0x10(%r14),%rax qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov %r9d,%r8d ----: mov %r9d,%r8d ----: xchg %r8d,(%rax) ----: xchg %r8d,(%rax) ----: test %r8d,%r8d ----: test %r8d,%r8d ----: je d50 ----: je d50 ----: jmp d7a ----: jmp d7a ----: nopl (%rax) ----: nopl (%rax) /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 ----: pause ----: pause /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 ----: mov (%rax),%r8d ----: mov (%rax),%r8d ----: test %r8d,%r8d ----: test %r8d,%r8d ----: jne d78 ----: jne d78 ----: jmp d68 ----: jmp d68 qht_map_iter__all_locked(): qht_map_iter__all_locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:716 /home/alex/lsrc/qemu/qemu.git/util/qht.----:716 ----: test %rax,%rax ----: test %rax,%rax ----: je e1b ----: je e1b ----: mov %rdx,%r13 ----: mov %rdx,%r13 ----: mov %rsi,%r12 ----: mov %rsi,%r12 ----: mov %rdi,%rbp ----: mov %rdi,%rbp ----: movq $0x0,0x8(%rsp) ----: movq $0x0,0x8(%rsp) ----: nop ----: nop /home/alex/lsrc/qemu/qemu.git/util/qht.----:717 /home/alex/lsrc/qemu/qemu.git/util/qht.----:717 ----: mov 0x8(%rsp),%rax ----: mov 0x8(%rsp),%rax ----: shl $0x6,%rax ----: shl $0x6,%rax ----: add 0x10(%r14),%rax ----: add 0x10(%r14),%rax ----: mov %rax,%r15 ----: mov %rax,%r15 /home/alex/lsrc/qemu/qemu.git/util/qht.----:716 /home/alex/lsrc/qemu/qemu.git/util/qht.----:716 ----: xor %ebx,%ebx ----: xor %ebx,%ebx qht_bucket_iter(): qht_bucket_iter(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:701 /home/alex/lsrc/qemu/qemu.git/util/qht.----:701 ----: mov 0x18(%r15,%rbx,2),%rsi ----: mov 0x18(%r15,%rbx,2),%rsi ----: test %rsi,%rsi ----: test %rsi,%rsi ----: je ddd ----: je ddd /home/alex/lsrc/qemu/qemu.git/util/qht.----:704 /home/alex/lsrc/qemu/qemu.git/util/qht.----:704 ----: mov 0x8(%r15,%rbx,1),%edx ----: mov 0x8(%r15,%rbx,1),%edx ----: add $0x4,%rbx ----: add $0x4,%rbx ----: mov %r13,%rcx ----: mov %r13,%rcx ----: mov %rbp,%rdi ----: mov %rbp,%rdi ----: callq *%r12 ----: callq *%r12 /home/alex/lsrc/qemu/qemu.git/util/qht.----:700 /home/alex/lsrc/qemu/qemu.git/util/qht.----:700 ----: cmp $0x10,%rbx ----: cmp $0x10,%rbx ----: jne db2 ----: jne db2 /home/alex/lsrc/qemu/qemu.git/util/qht.----:706 /home/alex/lsrc/qemu/qemu.git/util/qht.----:706 ----: mov 0x38(%r15),%r15 ----: mov 0x38(%r15),%r15 /home/alex/lsrc/qemu/qemu.git/util/qht.----:707 /home/alex/lsrc/qemu/qemu.git/util/qht.----:707 ----: test %r15,%r15 ----: test %r15,%r15 ----: jne db0 ----: jne db0 qht_map_iter__all_locked(): qht_map_iter__all_locked(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:716 /home/alex/lsrc/qemu/qemu.git/util/qht.----:716 ----: addq $0x1,0x8(%rsp) ----: addq $0x1,0x8(%rsp) ----: mov 0x18(%r14),%rax ----: mov 0x18(%r14),%rax ----: mov 0x8(%rsp),%rdi ----: mov 0x8(%rsp),%rdi ----: cmp %rax,%rdi ----: cmp %rax,%rdi ----: jb da0 ----: jb da0 qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: test %rax,%rax ----: test %rax,%rax ----: je e1b ----: je e1b ----: xor %eax,%eax ----: xor %eax,%eax ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: mov %rax,%rdx ----: mov %rax,%rdx qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: add $0x1,%rax ----: add $0x1,%rax qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: shl $0x6,%rdx ----: shl $0x6,%rdx ----: add 0x10(%r14),%rdx ----: add 0x10(%r14),%rdx ----: movl $0x0,(%rdx) ----: movl $0x0,(%rdx) qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: cmp 0x18(%r14),%rax ----: cmp 0x18(%r14),%rax ----: jb e00 ----: jb e00 qht_iter(): qht_iter(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:730 /home/alex/lsrc/qemu/qemu.git/util/qht.----:730 ----: add $0x18,%rsp ----: add $0x18,%rsp ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: pop %r14 ----: pop %r14 ----: pop %r15 ----: pop %r15 ----: retq ----: retq ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) 0000000000000e30 : 0000000000000e30 : qht_elems_to_buckets(): qht_elems_to_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:187 /home/alex/lsrc/qemu/qemu.git/util/qht.----:187 ----: shr $0x2,%rsi ----: shr $0x2,%rsi qht_resize(): qht_resize(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:764 /home/alex/lsrc/qemu/qemu.git/util/qht.----:764 ----: push %r14 ----: push %r14 ----: push %r13 ----: push %r13 clz64(): clz64(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 ----: test %rsi,%rsi ----: test %rsi,%rsi qht_resize(): qht_resize(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:764 /home/alex/lsrc/qemu/qemu.git/util/qht.----:764 ----: push %r12 ----: push %r12 ----: mov %rdi,%r13 ----: mov %rdi,%r13 ----: push %rbp ----: push %rbp clz64(): clz64(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 ----: mov $0x1,%r12d ----: mov $0x1,%r12d qht_resize(): qht_resize(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:764 /home/alex/lsrc/qemu/qemu.git/util/qht.----:764 ----: push %rbx ----: push %rbx clz64(): clz64(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 ----: je e62 ----: je e62 pow2ceil(): pow2ceil(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:510 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:510 ----: lea -0x1(%rsi),%rdx ----: lea -0x1(%rsi),%rdx clz64(): clz64(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:172 ----: bsr %rsi,%rax ----: bsr %rsi,%rax ----: mov %rsi,%r12 ----: mov %rsi,%r12 ----: xor $0x3f,%rax ----: xor $0x3f,%rax pow2ceil(): pow2ceil(): /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:510 /home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:510 ----: test %rsi,%rdx ----: test %rsi,%rdx ----: jne f1d ----: jne f1d qht_resize(): qht_resize(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:768 /home/alex/lsrc/qemu/qemu.git/util/qht.----:768 ----: lea 0x8(%r13),%rbp ----: lea 0x8(%r13),%rbp ----: xor %r14d,%r14d ----: xor %r14d,%r14d ----: mov %rbp,%rdi ----: mov %rbp,%rdi ----: callq e71 ----: callq e71 /home/alex/lsrc/qemu/qemu.git/util/qht.----:769 /home/alex/lsrc/qemu/qemu.git/util/qht.----:769 ----: mov 0x0(%r13),%rbx ----: mov 0x0(%r13),%rbx ----: cmp %r12,0x18(%rbx) ----: cmp %r12,0x18(%rbx) ----: je f09 ----: je f09 /home/alex/lsrc/qemu/qemu.git/util/qht.----:773 /home/alex/lsrc/qemu/qemu.git/util/qht.----:773 ----: mov %r12,%rdi ----: mov %r12,%rdi ----: callq 0 ----: callq 0 qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: xor %ecx,%ecx ----: xor %ecx,%ecx ----: cmpq $0x0,0x18(%rbx) ----: cmpq $0x0,0x18(%rbx) qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov $0x1,%r8d ----: mov $0x1,%r8d qht_map_lock_buckets(): qht_map_lock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 /home/alex/lsrc/qemu/qemu.git/util/qht.----:208 ----: jne eaa ----: jne eaa ----: jmp ed0 ----: jmp ed0 ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) ----: add $0x1,%rcx ----: add $0x1,%rcx ----: cmp 0x18(%rbx),%rcx ----: cmp 0x18(%rbx),%rcx ----: jae ed0 ----: jae ed0 ----: mov %rcx,%rdx ----: mov %rcx,%rdx ----: shl $0x6,%rdx ----: shl $0x6,%rdx ----: add 0x10(%rbx),%rdx ----: add 0x10(%rbx),%rdx qemu_spin_lock(): qemu_spin_lock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:76 ----: mov %r8d,%edi ----: mov %r8d,%edi ----: xchg %edi,(%rdx) ----: xchg %edi,(%rdx) ----: test %edi,%edi ----: test %edi,%edi ----: je ea0 ----: je ea0 ----: jmp ec2 ----: jmp ec2 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:78 ----: pause ----: pause /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:77 ----: mov (%rdx),%edi ----: mov (%rdx),%edi ----: test %edi,%edi ----: test %edi,%edi ----: jne ec0 ----: jne ec0 ----: jmp eb5 ----: jmp eb5 ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) qht_resize(): qht_resize(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:775 /home/alex/lsrc/qemu/qemu.git/util/qht.----:775 ----: mov %rax,%rsi ----: mov %rax,%rsi ----: mov %r13,%rdi ----: mov %r13,%rdi ----: callq 270 | ----: callq 2d0 qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: xor %eax,%eax ----: xor %eax,%eax ----: cmpq $0x0,0x18(%rbx) ----: cmpq $0x0,0x18(%rbx) ----: je f03 ----: je f03 ----: nopl 0x0(%rax) ----: nopl 0x0(%rax) qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: mov %rax,%rdx ----: mov %rax,%rdx qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: add $0x1,%rax ----: add $0x1,%rax qemu_spin_unlock(): qemu_spin_unlock(): /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 /home/alex/lsrc/qemu/qemu.git/include/qemu/thread.h:95 ----: shl $0x6,%rdx ----: shl $0x6,%rdx ----: add 0x10(%rbx),%rdx ----: add 0x10(%rbx),%rdx ----: movl $0x0,(%rdx) ----: movl $0x0,(%rdx) qht_map_unlock_buckets(): qht_map_unlock_buckets(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 /home/alex/lsrc/qemu/qemu.git/util/qht.----:219 ----: cmp 0x18(%rbx),%rax ----: cmp 0x18(%rbx),%rax ----: jb ee8 ----: jb ee8 qht_resize(): qht_resize(): ----: mov $0x1,%r14d ----: mov $0x1,%r14d /home/alex/lsrc/qemu/qemu.git/util/qht.----:779 /home/alex/lsrc/qemu/qemu.git/util/qht.----:779 ----: mov %rbp,%rdi ----: mov %rbp,%rdi ----: callq f11 ----: callq f11 /home/alex/lsrc/qemu/qemu.git/util/qht.----:782 /home/alex/lsrc/qemu/qemu.git/util/qht.----:782 ----: pop %rbx ----: pop %rbx ----: mov %r14d,%eax ----: mov %r14d,%eax ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: pop %r14 ----: pop %r14 ----: retq ----: retq ----: mov $0x40,%ecx ----: mov $0x40,%ecx ----: mov $0x1,%r12d ----: mov $0x1,%r12d ----: sub %eax,%ecx ----: sub %eax,%ecx ----: shl %cl,%r12 ----: shl %cl,%r12 ----: jmpq e62 ----: jmpq e62 ----: nopl 0x0(%rax) ----: nopl 0x0(%rax) ----: nopw %cs:0x0(%rax,%rax,1) ----: nopw %cs:0x0(%rax,%rax,1) 0000000000000f40 : 0000000000000f40 : qht_statistics_init(): qht_statistics_init(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:786 /home/alex/lsrc/qemu/qemu.git/util/qht.----:786 ----: push %r15 ----: push %r15 ----: push %r14 ----: push %r14 ----: push %r13 ----: push %r13 ----: push %r12 ----: push %r12 ----: mov %rsi,%r12 ----: mov %rsi,%r12 ----: push %rbp ----: push %rbp ----: push %rbx ----: push %rbx ----: sub $0x18,%rsp ----: sub $0x18,%rsp /home/alex/lsrc/qemu/qemu.git/util/qht.----:790 /home/alex/lsrc/qemu/qemu.git/util/qht.----:790 ----: mov (%rdi),%r13 ----: mov (%rdi),%r13 /home/alex/lsrc/qemu/qemu.git/util/qht.----:794 /home/alex/lsrc/qemu/qemu.git/util/qht.----:794 ----: lea 0x18(%rsi),%r15 ----: lea 0x18(%rsi),%r15 /home/alex/lsrc/qemu/qemu.git/util/qht.----:795 /home/alex/lsrc/qemu/qemu.git/util/qht.----:795 ----: lea 0x30(%r12),%r14 ----: lea 0x30(%r12),%r14 /home/alex/lsrc/qemu/qemu.git/util/qht.----:792 /home/alex/lsrc/qemu/qemu.git/util/qht.----:792 ----: movq $0x0,0x8(%rsi) ----: movq $0x0,0x8(%rsi) /home/alex/lsrc/qemu/qemu.git/util/qht.----:793 /home/alex/lsrc/qemu/qemu.git/util/qht.----:793 ----: movq $0x0,0x10(%rsi) ----: movq $0x0,0x10(%rsi) /home/alex/lsrc/qemu/qemu.git/util/qht.----:794 /home/alex/lsrc/qemu/qemu.git/util/qht.----:794 ----: mov %r15,%rdi ----: mov %r15,%rdi ----: callq f75 ----: callq f75 /home/alex/lsrc/qemu/qemu.git/util/qht.----:795 /home/alex/lsrc/qemu/qemu.git/util/qht.----:795 ----: mov %r14,%rdi ----: mov %r14,%rdi ----: callq f7d ----: callq f7d /home/alex/lsrc/qemu/qemu.git/util/qht.----:797 /home/alex/lsrc/qemu/qemu.git/util/qht.----:797 ----: test %r13,%r13 ----: test %r13,%r13 ----: je 10ba ----: je 10ba /home/alex/lsrc/qemu/qemu.git/util/qht.----:801 /home/alex/lsrc/qemu/qemu.git/util/qht.----:801 ----: mov 0x18(%r13),%rax ----: mov 0x18(%r13),%rax /home/alex/lsrc/qemu/qemu.git/util/qht.----:803 /home/alex/lsrc/qemu/qemu.git/util/qht.----:803 ----: xor %r8d,%r8d ----: xor %r8d,%r8d ----: xor %ebp,%ebp ----: xor %ebp,%ebp /home/alex/lsrc/qemu/qemu.git/util/qht.----:801 /home/alex/lsrc/qemu/qemu.git/util/qht.----:801 ----: mov %rax,(%r12) ----: mov %rax,(%r12) /home/alex/lsrc/qemu/qemu.git/util/qht.----:803 /home/alex/lsrc/qemu/qemu.git/util/qht.----:803 ----: cmpq $0x0,0x18(%r13) ----: cmpq $0x0,0x18(%r13) ----: je 105e ----: je 105e ----: xchg %ax,%ax ----: xchg %ax,%ax /home/alex/lsrc/qemu/qemu.git/util/qht.----:804 /home/alex/lsrc/qemu/qemu.git/util/qht.----:804 ----: shl $0x6,%r8 ----: shl $0x6,%r8 ----: add 0x10(%r13),%r8 ----: add 0x10(%r13),%r8 ----: lea 0x4(%r8),%r10 ----: lea 0x4(%r8),%r10 seqlock_read_begin(): seqlock_read_begin(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:51 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:51 ----: mov (%r10),%r9d ----: mov (%r10),%r9d qht_statistics_init(): qht_statistics_init(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:814 /home/alex/lsrc/qemu/qemu.git/util/qht.----:814 ----: xor %ebx,%ebx ----: xor %ebx,%ebx seqlock_read_begin(): seqlock_read_begin(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:55 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:55 ----: and $0xfffffffe,%r9d ----: and $0xfffffffe,%r9d qht_statistics_init(): qht_statistics_init(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:815 /home/alex/lsrc/qemu/qemu.git/util/qht.----:815 ----: mov %r8,%rsi ----: mov %r8,%rsi /home/alex/lsrc/qemu/qemu.git/util/qht.----:813 /home/alex/lsrc/qemu/qemu.git/util/qht.----:813 ----: xor %edi,%edi ----: xor %edi,%edi ----: nopw 0x0(%rax,%rax,1) ----: nopw 0x0(%rax,%rax,1) ----: lea 0x18(%rsi),%rax ----: lea 0x18(%rsi),%rax ----: lea 0x4(%rbx),%rcx ----: lea 0x4(%rbx),%rcx /home/alex/lsrc/qemu/qemu.git/util/qht.----:818 /home/alex/lsrc/qemu/qemu.git/util/qht.----:818 ----: mov (%rax),%rdx ----: mov (%rax),%rdx ----: test %rdx,%rdx ----: test %rdx,%rdx ----: je fdd ----: je fdd /home/alex/lsrc/qemu/qemu.git/util/qht.----:821 (discriminator 2) /home/alex/lsrc/qemu/qemu.git/util/qht.----:821 (discriminator 2) ----: add $0x1,%rbx ----: add $0x1,%rbx ----: add $0x8,%rax ----: add $0x8,%rax /home/alex/lsrc/qemu/qemu.git/util/qht.----:817 (discriminator 2) /home/alex/lsrc/qemu/qemu.git/util/qht.----:817 (discriminator 2) ----: cmp %rcx,%rbx ----: cmp %rcx,%rbx ----: jne fc8 ----: jne fc8 /home/alex/lsrc/qemu/qemu.git/util/qht.----:823 /home/alex/lsrc/qemu/qemu.git/util/qht.----:823 ----: add $0x1,%rdi ----: add $0x1,%rdi /home/alex/lsrc/qemu/qemu.git/util/qht.----:824 /home/alex/lsrc/qemu/qemu.git/util/qht.----:824 ----: mov 0x38(%rsi),%rsi ----: mov 0x38(%rsi),%rsi /home/alex/lsrc/qemu/qemu.git/util/qht.----:825 /home/alex/lsrc/qemu/qemu.git/util/qht.----:825 ----: test %rsi,%rsi ----: test %rsi,%rsi ----: jne fc0 ----: jne fc0 seqlock_read_retry(): seqlock_read_retry(): /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:62 /home/alex/lsrc/qemu/qemu.git/include/qemu/seqlock.h:62 ----: mov (%r10),%eax ----: mov (%r10),%eax qht_statistics_init(): qht_statistics_init(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:826 /home/alex/lsrc/qemu/qemu.git/util/qht.----:826 ----: cmp %eax,%r9d ----: cmp %eax,%r9d ----: jne fac ----: jne fac /home/alex/lsrc/qemu/qemu.git/util/qht.----:828 /home/alex/lsrc/qemu/qemu.git/util/qht.----:828 ----: test %rbx,%rbx ----: test %rbx,%rbx ----: je 1070 ----: je 1070 /home/alex/lsrc/qemu/qemu.git/util/qht.----:829 /home/alex/lsrc/qemu/qemu.git/util/qht.----:829 ----: test %rdi,%rdi ----: test %rdi,%rdi ----: js 109c ----: js 109c ----: pxor %xmm1,%xmm1 ----: pxor %xmm1,%xmm1 ----: cvtsi2sd %rdi,%xmm1 ----: cvtsi2sd %rdi,%xmm1 ----: movapd %xmm1,%xmm0 ----: movapd %xmm1,%xmm0 ----: mov %r15,%rdi ----: mov %r15,%rdi ----: movsd %xmm1,0x8(%rsp) ----: movsd %xmm1,0x8(%rsp) ----: callq 101b ----: callq 101b /home/alex/lsrc/qemu/qemu.git/util/qht.----:830 /home/alex/lsrc/qemu/qemu.git/util/qht.----:830 ----: test %rbx,%rbx ----: test %rbx,%rbx ----: movsd 0x8(%rsp),%xmm1 ----: movsd 0x8(%rsp),%xmm1 ----: js 107e ----: js 107e ----: pxor %xmm0,%xmm0 ----: pxor %xmm0,%xmm0 ----: cvtsi2sd %rbx,%xmm0 ----: cvtsi2sd %rbx,%xmm0 ----: mulsd 0x0(%rip),%xmm0 # 1037 ----: mulsd 0x0(%rip),%xmm0 # 1037 ----: mov %r14,%rdi ----: mov %r14,%rdi ----: divsd %xmm1,%xmm0 ----: divsd %xmm1,%xmm0 ----: callq 1043 ----: callq 1043 /home/alex/lsrc/qemu/qemu.git/util/qht.----:832 /home/alex/lsrc/qemu/qemu.git/util/qht.----:832 ----: addq $0x1,0x8(%r12) ----: addq $0x1,0x8(%r12) /home/alex/lsrc/qemu/qemu.git/util/qht.----:833 /home/alex/lsrc/qemu/qemu.git/util/qht.----:833 ----: add %rbx,0x10(%r12) ----: add %rbx,0x10(%r12) /home/alex/lsrc/qemu/qemu.git/util/qht.----:803 (discriminator 2) /home/alex/lsrc/qemu/qemu.git/util/qht.----:803 (discriminator 2) ----: add $0x1,%ebp ----: add $0x1,%ebp ----: movslq %ebp,%r8 ----: movslq %ebp,%r8 ----: cmp 0x18(%r13),%r8 ----: cmp 0x18(%r13),%r8 ----: jb fa0 ----: jb fa0 /home/alex/lsrc/qemu/qemu.git/util/qht.----:838 /home/alex/lsrc/qemu/qemu.git/util/qht.----:838 ----: add $0x18,%rsp ----: add $0x18,%rsp ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: pop %r14 ----: pop %r14 ----: pop %r15 ----: pop %r15 ----: retq ----: retq ----: nopl (%rax) ----: nopl (%rax) /home/alex/lsrc/qemu/qemu.git/util/qht.----:835 /home/alex/lsrc/qemu/qemu.git/util/qht.----:835 ----: pxor %xmm0,%xmm0 ----: pxor %xmm0,%xmm0 ----: mov %r14,%rdi ----: mov %r14,%rdi ----: callq 107c ----: callq 107c ----: jmp 104e ----: jmp 104e /home/alex/lsrc/qemu/qemu.git/util/qht.----:830 /home/alex/lsrc/qemu/qemu.git/util/qht.----:830 ----: mov %rbx,%rax ----: mov %rbx,%rax ----: mov %rbx,%rdx ----: mov %rbx,%rdx ----: pxor %xmm0,%xmm0 ----: pxor %xmm0,%xmm0 ----: shr %rax ----: shr %rax ----: and $0x1,%edx ----: and $0x1,%edx ----: or %rdx,%rax ----: or %rdx,%rax ----: cvtsi2sd %rax,%xmm0 ----: cvtsi2sd %rax,%xmm0 ----: addsd %xmm0,%xmm0 ----: addsd %xmm0,%xmm0 ----: jmp 102f ----: jmp 102f /home/alex/lsrc/qemu/qemu.git/util/qht.----:829 /home/alex/lsrc/qemu/qemu.git/util/qht.----:829 ----: mov %rdi,%rax ----: mov %rdi,%rax ----: pxor %xmm1,%xmm1 ----: pxor %xmm1,%xmm1 ----: shr %rax ----: shr %rax ----: and $0x1,%edi ----: and $0x1,%edi ----: or %rdi,%rax ----: or %rdi,%rax ----: cvtsi2sd %rax,%xmm1 ----: cvtsi2sd %rax,%xmm1 ----: addsd %xmm1,%xmm1 ----: addsd %xmm1,%xmm1 ----: jmpq 1009 ----: jmpq 1009 /home/alex/lsrc/qemu/qemu.git/util/qht.----:798 /home/alex/lsrc/qemu/qemu.git/util/qht.----:798 ----: movq $0x0,(%r12) ----: movq $0x0,(%r12) /home/alex/lsrc/qemu/qemu.git/util/qht.----:838 /home/alex/lsrc/qemu/qemu.git/util/qht.----:838 ----: add $0x18,%rsp ----: add $0x18,%rsp ----: pop %rbx ----: pop %rbx ----: pop %rbp ----: pop %rbp ----: pop %r12 ----: pop %r12 ----: pop %r13 ----: pop %r13 ----: pop %r14 ----: pop %r14 ----: pop %r15 ----: pop %r15 ----: retq ----: retq ----: nopl 0x0(%rax,%rax,1) ----: nopl 0x0(%rax,%rax,1) ----: nopw %cs:0x0(%rax,%rax,1) ----: nopw %cs:0x0(%rax,%rax,1) 00000000000010e0 : 00000000000010e0 : qht_statistics_destroy(): qht_statistics_destroy(): /home/alex/lsrc/qemu/qemu.git/util/qht.----:841 /home/alex/lsrc/qemu/qemu.git/util/qht.----:841 ----: push %rbx ----: push %rbx ----: mov %rdi,%rbx ----: mov %rdi,%rbx /home/alex/lsrc/qemu/qemu.git/util/qht.----:842 /home/alex/lsrc/qemu/qemu.git/util/qht.----:842 ----: lea 0x30(%rdi),%rdi ----: lea 0x30(%rdi),%rdi ----: callq 10ed ----: callq 10ed /home/alex/lsrc/qemu/qemu.git/util/qht.----:843 /home/alex/lsrc/qemu/qemu.git/util/qht.----:843 ----: lea 0x18(%rbx),%rdi ----: lea 0x18(%rbx),%rdi /home/alex/lsrc/qemu/qemu.git/util/qht.----:844 /home/alex/lsrc/qemu/qemu.git/util/qht.----:844 ----: pop %rbx ----: pop %rbx /home/alex/lsrc/qemu/qemu.git/util/qht.----:843 /home/alex/lsrc/qemu/qemu.git/util/qht.----:843 ----: jmpq 10f7 ----: jmpq 10f7