From: Mark H Weaver <mhw@netris.org>
To: 24703@debbugs.gnu.org
Subject: bug#24703: Store references in 8-byte chunks in compiled code
Date: Sun, 16 Oct 2016 05:03:29 -0400 [thread overview]
Message-ID: <87k2d8sm1q.fsf@netris.org> (raw)
In-Reply-To: <87r37gstf6.fsf_-_@netris.org> (Mark H. Weaver's message of "Sun, 16 Oct 2016 02:24:13 -0400")
The 8-byte chunks may appear out of order. For example, in
'bash-static' we have this reference to:
/gnu/store/7z3hpynjsbidxkq78xi5qi6lbcm8ndhp-glibc-intermediate-2.23
where the chunks are found in the following order:
1_/gnu/sto
2_________________ynjsbidx
3_________re/7z3hp
4_________________________________i6lbcm8n
5_________________________kq78xi5q
6_________________________________________dhp-glib
7_________________________________________________c-interm
8_________________________________________________________ediate-2
9_________________________________________________________________.23/lib/
Here's an excerpt of "objdump -d" output, annotated to show the 8-byte
constant as a string, and its position within the larger string.
======== /gnu/store/0010wvgs40kdq8chzsh403qm7la9jxq7-bash-static-4.3.42/bin/bash
46b2c3: 48 b9 2f 67 6e 75 2f movabs $0x6f74732f756e672f,%rcx ; "/gnu/sto" (1)
46b2ca: 73 74 6f
46b2cd: 48 01 d8 add %rbx,%rax
46b2d0: 48 bb 79 6e 6a 73 62 movabs $0x78646962736a6e79,%rbx ; "ynjsbidx" (3)
46b2d7: 69 64 78
46b2da: 48 89 48 01 mov %rcx,0x1(%rax)
46b2de: 48 b9 72 65 2f 37 7a movabs $0x7068337a372f6572,%rcx ; "re/7z3hp" (2)
46b2e5: 33 68 70
46b2e8: 48 89 58 11 mov %rbx,0x11(%rax)
46b2ec: 48 89 48 09 mov %rcx,0x9(%rax)
46b2f0: 48 bb 69 36 6c 62 63 movabs $0x6e386d63626c3669,%rbx ; "i6lbcm8n" (5)
46b2f7: 6d 38 6e
46b2fa: 48 b9 6b 71 37 38 78 movabs $0x713569783837716b,%rcx ; "kq78xi5q" (4)
46b301: 69 35 71
46b304: 48 89 48 19 mov %rcx,0x19(%rax)
46b308: 48 89 58 21 mov %rbx,0x21(%rax)
46b30c: 48 b9 64 68 70 2d 67 movabs $0x62696c672d706864,%rcx ; "dhp-glib" (6)
46b313: 6c 69 62
46b316: 48 bb 63 2d 69 6e 74 movabs $0x6d7265746e692d63,%rbx ; "c-interm" (7)
46b31d: 65 72 6d
46b320: 48 89 48 29 mov %rcx,0x29(%rax)
46b324: ba 76 00 00 00 mov $0x76,%edx
46b329: 48 89 58 31 mov %rbx,0x31(%rax)
46b32d: 48 b9 65 64 69 61 74 movabs $0x322d657461696465,%rcx ; "ediate-2" (8)
46b334: 65 2d 32
46b337: 48 bb 2e 32 33 2f 6c movabs $0x2f62696c2f33322e,%rbx ; ".23/lib/" (9)
46b33e: 69 62 2f
46b341: 48 89 58 41 mov %rbx,0x41(%rax)
46b345: 31 f6 xor %esi,%esi
46b347: 31 ff xor %edi,%edi
46b349: c6 00 3a movb $0x3a,(%rax)
46b34c: 48 89 48 39 mov %rcx,0x39(%rax)
46b350: c7 40 49 67 63 6f 6e movl $0x6e6f6367,0x49(%rax)
46b357: 66 89 50 4d mov %dx,0x4d(%rax)
next prev parent reply other threads:[~2016-10-16 9:04 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-16 3:49 bug#24703: fontconfig keeps obfuscated reference to itself, not grafted Mark H Weaver
2016-10-16 4:26 ` Mark H Weaver
2016-10-16 5:00 ` Mark H Weaver
2016-10-16 6:24 ` bug#24703: Store references in 8-byte chunks in compiled code Mark H Weaver
2016-10-16 9:03 ` Mark H Weaver [this message]
2016-10-16 9:25 ` Mark H Weaver
2016-10-16 10:15 ` Mark H Weaver
2016-10-16 19:04 ` Ludovic Courtès
2016-10-17 7:46 ` bug#24703: " Török Edwin
2016-10-17 9:42 ` Mark H Weaver
2016-10-17 12:09 ` Ludovic Courtès
2016-10-18 3:36 ` Mark H Weaver
2016-10-18 8:59 ` Ludovic Courtès
2016-10-31 6:35 ` Mark H Weaver
2016-10-31 11:37 ` Ludovic Courtès
2016-10-24 19:40 ` Leo Famulari
2016-10-24 20:18 ` Ludovic Courtès
2016-11-04 23:15 ` Ludovic Courtès
2016-11-05 18:36 ` Leo Famulari
2016-11-06 20:58 ` Ludovic Courtès
2016-11-09 20:40 ` Ludovic Courtès
2016-11-09 23:16 ` Leo Famulari
2016-11-10 8:01 ` Ludovic Courtès
2017-04-02 22:19 ` Ludovic Courtès
2016-11-11 10:39 ` Ludovic Courtès
2016-10-19 21:25 ` Török Edwin
2016-10-20 12:25 ` Ludovic Courtès
2016-10-16 14:42 ` bug#24703: fontconfig keeps obfuscated reference to itself, not grafted Ludovic Courtès
2016-10-16 15:06 ` Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87k2d8sm1q.fsf@netris.org \
--to=mhw@netris.org \
--cc=24703@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.