public inbox for gdb-testers@sourceware.org help / color / mirror / Atom feed
From: sergiodj+buildbot@sergiodj.net To: gdb-testers@sourceware.org Subject: [binutils-gdb] Adjust breakpoint address by clearing non-significant bits Date: Fri, 08 Dec 2017 19:17:00 -0000 [thread overview] Message-ID: <a0de8c21baf46c40ed8e62faef5f750b1e5453ea@gdb-build> (raw) *** TEST RESULTS FOR COMMIT a0de8c21baf46c40ed8e62faef5f750b1e5453ea *** Author: Yao Qi <yao.qi@linaro.org> Branch: master Commit: a0de8c21baf46c40ed8e62faef5f750b1e5453ea Adjust breakpoint address by clearing non-significant bits Tag in tagged address on AArch64 is treated as a non-significant bits of address, which can be got by gdbarch method significant_addr_bit, and gdb can clear these bits. With this patch, when user sets a breakpoint on tagged address on AArch64, GDB will drop the top byte of address, and put breakpoint at the new place, as shown below, (gdb) hbreak *func_ptr warning: Breakpoint address adjusted from 0xf000000000400690 to 0x00400690. Hardware assisted breakpoint 2 at 0x400690 (gdb) break *func_ptr warning: Breakpoint address adjusted from 0xf000000000400690 to 0x00400690. Breakpoint 3 at 0x400690 When program hits a breakpoint, the stopped pc reported by Linux kernel is the address *without* tag, so it is better the address recorded in breakpoint location is the one without tag too, so we can still match breakpoint location address and stopped pc reported by Linux kernel, by simple compare. gdb: 2017-12-08 Yao Qi <yao.qi@linaro.org> * breakpoint.c (adjust_breakpoint_address): Call address_significant. gdb/testsuite: 2017-12-08 Yao Qi <yao.qi@linaro.org> * gdb.arch/aarch64-tagged-pointer.c (main): Update. * gdb.arch/aarch64-tagged-pointer.exp: Add test for breakpoint.
next reply other threads:[~2017-12-08 19:17 UTC|newest] Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-12-08 19:17 sergiodj+buildbot [this message] 2017-12-08 19:17 ` Failures on Fedora-x86_64-m64, branch master sergiodj+buildbot 2017-12-08 19:21 ` Failures on Fedora-x86_64-native-gdbserver-m32, " sergiodj+buildbot 2017-12-08 19:23 ` Failures on Fedora-i686, " sergiodj+buildbot 2017-12-08 19:38 ` Failures on Fedora-x86_64-native-extended-gdbserver-m32, " sergiodj+buildbot 2017-12-08 19:40 ` Failures on Fedora-x86_64-native-extended-gdbserver-m64, " sergiodj+buildbot 2017-12-08 19:41 ` Failures on Fedora-x86_64-cc-with-index, " sergiodj+buildbot 2017-12-08 21:14 ` Failures on Ubuntu-AArch32-native-extended-gdbserver-m32, " sergiodj+buildbot 2017-12-08 21:39 ` Failures on Ubuntu-AArch32-native-gdbserver-m32, " sergiodj+buildbot 2017-12-08 22:04 ` Failures on Ubuntu-AArch32-m32, " sergiodj+buildbot
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=a0de8c21baf46c40ed8e62faef5f750b1e5453ea@gdb-build \ --to=sergiodj+buildbot@sergiodj.net \ --cc=gdb-testers@sourceware.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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).