Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: "Jayant R. Sonar" <Jayant.Sonar@kpitcummins.com>
To: Mike Frysinger <vapier@gentoo.org>,
	"gdb-patches@sourceware.org"	<gdb-patches@sourceware.org>
Cc: Kaushik Phatak <Kaushik.Phatak@kpitcummins.com>
Subject: RE: [PATCH ARM] Fixing problem of 32bit multiplication instruction 'smull'
Date: Thu, 16 May 2013 15:14:00 -0000	[thread overview]
Message-ID: <C013F7BFDC93F047B111833D343777BD6B42179E@KCHJEXMB03.kpit.com> (raw)
In-Reply-To: <201305151210.11573.vapier@gentoo.org>

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

Hello Mike,

Thanks again for reviewing this patch as well.

>> could you make that into a test case ? :)

I really don't have a test case in C form as of now.
However, when I was doing the GCC regression testing, I found almost
in all of the execution tests, final object files are linked with
another object file 'gcc_tg.o'. Objdump of this file shows 'smull'
getting generated in one of its function 'write_int()'. However, I
couldn't find the way this 'gcc_tg.o' file is generated.

For your reference I have attached this object file with this mail.
(To escape the mailAdmin, I have renamed it as .TXT)

I did linked this 'gcc_tg.o' file with the simple "hello world"
program as below:
arm-eabi-gcc -mcpu=cortex-a9 hello.c gcc_tg.o -Wl,-wrap,exit
-Wl,-wrap,_exit -Wl,-wrap,main -Wl,-wrap,abort

and while debugging the output of this, after 'main()', I was able to
"nexti" into 'wrap_exit()' and then into 'wrap_int()' functions where
ultimately GDB failed to execute 'smull' command with error message:
====================================
sim: MULTIPLY64 - INVALID ARGUMENTS

*** EXIT code 6
====================================

I hope this will help to reproduce the problem at your end as well.

Regards,
Jayant


[-- Attachment #2: gcc_tg.txt --]
[-- Type: text/plain, Size: 2304 bytes --]

\x7fELF\x01\x01\x01\0\0\0\0\0\0\0\0\0\x01\0(\0\x01\0\0\0\0\0\0\0\0\0\0\0à\x03\0\0\0\0\0\x054\0\0\0\0\0(\0\v\0\b\0\0H-é\x04°â\x10ÐMâ\x10\0\vå\x14\x10\vå\x100^[å\0\0Sã\b\0\0ª\x140^[å-  ã\0 Ãå\x140^[å\x010ƒâ\x140\vå\x100^[å\00câ\x100\vå\x100^[å	\0Sã
\0\0Ú\x10 ^[åg6\x06ãf6Fã“\x12ÃàC\x11 áÂ? á\x010cà\x03\0 á\x14\x10^[åáÿÿë\x14\0\vå\x10\x10^[åg6\x06ãf6Fã“!ÃàC! áÁ? á\x02 cà\x020 á\x031 á\x020ƒàƒ0 á\x01 càr0ïæ00ƒâ\x050Kå\x140^[å\x05 [å\0 Ãå\x140^[å\x010ƒâ\x140\vå\x140^[å\x03\0 á\x04ÐKâ\0ˆ½è\0H-é\x04°â0ÐMâ0\0\vå( Kâ\00\0ã\00@ã\x02À á\x0f\0“è\x0f\0Œè(0Kâ\x03\0 áþÿÿë\00 á( Kâ\x030‚à0\0^[å\x03\x10 á´ÿÿë\b\0\vå\b0^[å
  ã\0 Ãå\b0^[å\x010ƒâ\b0\vå\b ^[å(0Kâ\x020cà( Kâ\x01\0 ã\x02\x10 á\x03  áþÿÿë\00\0ã\00@ã\x01  ã\0 ƒå0\0^[åþÿÿë\0\0 á\00\0ã\00@ã\00“å\0\0Sãúÿÿ\x1a\x04ÐKâ\0ˆ½è\0H-é\x04°â0ÐMâ0\0\vå\00\0ã\00@ã\00“å\0\0Sã\x1d\0\0\x1a( Kâ\00\0ã\00@ã\x02À á\x0f\0“è\x0f\0Œè(0Kâ\x03\0 áþÿÿë\00 á( Kâ\x030‚à0\0^[å\x03\x10 á\x7fÿÿë\b\0\vå\b0^[å
  ã\0 Ãå\b0^[å\x010ƒâ\b0\vå\b ^[å(0Kâ\x020cà( Kâ\x01\0 ã\x02\x10 á\x03  áþÿÿë0\0^[åþÿÿë\0\0 á\00\0ã\00@ã\00“å\0\0Sãúÿÿ\x1a\x04ÐKâ\0ˆ½è\0H-é\x04°â\x01\0 ã\0\x10\0ã\0\x10@ã\x14  ãþÿÿëþÿÿë\0\0 á\00\0ã\00@ã\00“å\0\0Sãúÿÿ\x1aþÿÿë\0H-é\x04°â\x10ÐMâ\b\0\vå\f\x10\vå\x10 \vå\b\0^[å\f\x10^[å\x10 ^[åþÿÿë\00 á\x03\0 áþÿÿë\x01\0\0\0
*** EXIT code \0
*** EXIT code 4242
\0\0\0\0\0GCC: (GNU) 4.7-GNUARM-RZ_v13.01\0A8\0\0\0aeabi\0\x01.\0\0\0\x05Cortex-A9\0\x06
\aA\b\x01	\x02\x12\x04\x14\x01\x15\x01\x17\x03\x18\x01\x19\x01\x1a\x01\x1e\x06"\x01*\x01D\x01\0.symtab\0.strtab\0.shstrtab\0.rel.text\0.data\0.bss\0.rodata\0.comment\0.ARM.attributes\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x1f\0\0\0\x01\0\0\0\x06\0\0\0\0\0\0\04\0\0\0Ô\x02\0\0\0\0\0\0\0\0\0\0\x04\0\0\0\0\0\0\0^[\0\0\0	\0\0\0\0\0\0\0\0\0\0\0(\b\0\0Ø\0\0\0	\0\0\0\x01\0\0\0\x04\0\0\0\b\0\0\0%\0\0\0\x01\0\0\0\x03\0\0\0\0\0\0\0\b\x03\0\0\x04\0\0\0\0\0\0\0\0\0\0\0\x04\0\0\0\0\0\0\0+\0\0\0\b\0\0\0\x03\0\0\0\0\0\0\0\f\x03\0\0\x04\0\0\0\0\0\0\0\0\0\0\0\x04\0\0\0\0\0\0\00\0\0\0\x01\0\0\0\x02\0\0\0\0\0\0\0\f\x03\0\0(\0\0\0\0\0\0\0\0\0\0\0\x04\0\0\0\0\0\0\08\0\0\0\x01\0\0\00\0\0\0\0\0\0\04\x03\0\0!\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\x01\0\0\0A\0\0\0\x03\0\0p\0\0\0\0\0\0\0\0U\x03\0\09\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\0\0\0\0\x11\0\0\0\x03\0\0\0\0\0\0\0\0\0\0\0Ž\x03\0\0Q\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\0\0\0\0\x01\0\0\0\x02\0\0\0\0\0\0\0\0\0\0\0˜\x05\0\0Ð\x01\0\0
\0\0\0\x10\0\0\0\x04\0\0\0\x10\0\0\0	\0\0\0\x03\0\0\0\0\0\0\0\0\0\0\0h\a\0\0À\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\x04\0ñÿ\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\x03\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\x04\0\f\0\0\0\0\0\0\0\0\0\0\0\0\0\x04\0\x0f\0\0\0\0\0\0\0\0\0\0\0\0\0\x04\0\f\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0!\0\0\0\0\0\0\0\0\0\0\0\0\0\x01\0$\0\0\0\0\0\0\0à\0\0\0\x02\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\x05\0\f\0\0\0\0\0\0\0\0\0\0\0\0\0\x05\0.\0\0\0\0\0\0\0\0\0\0\0\0\0\x05\03\0\0\0\x10\0\0\0\0\0\0\0\0\0\x05\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\x06\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\a\08\0\0\0\0\0\0\0\x04\0\0\0\x11\0\x03\0D\0\0\0à\0\0\0À\0\0\0\x12\0\x01\0P\0\0\0\0\0\0\0\0\0\0\0\x10\0\0\0W\0\0\0\0\0\0\0\0\0\0\0\x10\0\0\0]\0\0\0\0\0\0\0\0\0\0\0\x10\0\0\0i\0\0\0 \x01\0\0Ä\0\0\0\x12\0\x01\0v\0\0\0\0\0\0\0\0\0\0\0\x10\0\0\0ƒ\0\0\0d\x02\0\0<\0\0\0\x12\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\x10\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x10\0\0\0£\0\0\0 \x02\0\04\0\0\0\x12\0\x01\0¯\0\0\0\0\0\0\0\0\0\0\0\x10\0\0\0»\0\0\0\0\0\0\0\0\0\0\0\x10\0\0\0\0testglue.c\0$d\0done_exit_message\0$a\0write_int\0.LC0\0.LC1\0___constval\0__wrap_exit\0strlen\0write\0__real_exit\0__wrap__exit\0__real__exit\0__wrap_abort\0__real_abort\0abort\0__wrap_main\0__real_main\0exit\0ô\0\0\0+\f\0\0ø\0\0\0,\f\0\0\x10\x01\0\0\x1c\x12\0\0d\x01\0\0\x1c\x13\0\0h\x01\0\0+\x06\0\0l\x01\0\0,\x06\0\0|\x01\0\0\x1c\x14\0\0„\x01\0\0+\x10\0\0ˆ\x01\0\0,\x10\0\0°\x01\0\0+\x06\0\0´\x01\0\0,\x06\0\0È\x01\0\0+\f\0\0Ì\x01\0\0,\f\0\0ä\x01\0\0\x1c\x12\0\08\x02\0\0\x1c\x13\0\0@\x02\0\0\x1c\x16\0\0H\x02\0\0+\x10\0\0L\x02\0\0,\x10\0\0p\x02\0\0+\r\0\0t\x02\0\0,\r\0\0|\x02\0\0\x1c\x13\0\0€\x02\0\0\x1c\x18\0\0ˆ\x02\0\0+\x10\0\0Œ\x02\0\0,\x10\0\0œ\x02\0\0\x1c\x19\0\0Ä\x02\0\0\x1c^[\0\0Ð\x02\0\0\x1c\x1c\0\0

  parent reply	other threads:[~2013-05-16 15:14 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-14 13:16 Jayant R. Sonar
     [not found] ` <201305151210.11573.vapier@gentoo.org>
2013-05-16 15:14   ` Jayant R. Sonar [this message]
2013-05-16 15:55     ` Mike Frysinger

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=C013F7BFDC93F047B111833D343777BD6B42179E@KCHJEXMB03.kpit.com \
    --to=jayant.sonar@kpitcummins.com \
    --cc=Kaushik.Phatak@kpitcummins.com \
    --cc=gdb-patches@sourceware.org \
    --cc=vapier@gentoo.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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox