[testsuite patch+7.8] gdb.arch/amd64-stap-special-operands.exp !is_lp64_target [Re: [PATCH] Fix for PR tdep/16397: SystemTap SDT probe support for x86 doesn't work with "triplet operands"]

Jan Kratochvil
2014-06-22T21:14:12Z

[-- Attachment #1: Type: text/plain, Size: 961 bytes --]

On Thu, 20 Feb 2014 22:53:21 +0100, Sergio Durigan Junior wrote:
> Thanks, I finally pushed it with the necessary fixes.
> https://sourceware.org/ml/gdb-cvs/2014-02/msg00106.html
# if { ![istarget "x86_64-*-*"] && ![istarget "i?86-*-*"] } {
# verbose "Skipping amd64-stap-special-operands.exp"
# return
# }

On x86_64 with -m32 or on i686 it will:

Running ./gdb.arch/amd64-stap-special-operands.exp ...
gdb compile failed, amd64-stap-triplet.c: Assembler messages:
amd64-stap-triplet.c:35: Error: bad register name `%rbp'
amd64-stap-triplet.c:38: Error: bad register name `%rsp'
amd64-stap-triplet.c:40: Error: bad register name `%rbp)'
amd64-stap-triplet.c:41: Error: bad register name `%rsi'
amd64-stap-triplet.c:42: Error: bad register name `%rbp)'
/tmp/ccjOdmpl.s:63: Error: bad register name `%rbp'

IMO there should be the patch below. OK for check-in?
It would apply as [obv] but I rather ask Sergio if it was meant this way.

Jan

[-- Attachment #2: 1 --]
[-- Type: text/plain, Size: 765 bytes --]

gdb/testsuite/
2014-06-22 Jan Kratochvil <jan.kratochvil@redhat.com>

* gdb.arch/amd64-stap-special-operands.exp: Use is_lp64_target.

diff --git a/gdb/testsuite/gdb.arch/amd64-stap-special-operands.exp b/gdb/testsuite/gdb.arch/amd64-stap-special-operands.exp
index a6ce7f5..988b5d6 100644
--- a/gdb/testsuite/gdb.arch/amd64-stap-special-operands.exp
+++ b/gdb/testsuite/gdb.arch/amd64-stap-special-operands.exp
@@ -13,7 +13,7 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.

-if { ![istarget "x86_64-*-*"] && ![istarget "i?86-*-*"] } {
+if { ![istarget "x86_64-*-*"] || ![is_lp64_target] } {
verbose "Skipping amd64-stap-special-operands.exp"
return
}