<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Inspecting Obj-C parameters in gdb</title>
	<atom:link href="http://www.clarkcox.com/blog/2009/02/04/inspecting-obj-c-parameters-in-gdb/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.clarkcox.com/blog/2009/02/04/inspecting-obj-c-parameters-in-gdb/</link>
	<description>Clark’s musings</description>
	<lastBuildDate>Fri, 29 Jul 2011 20:57:28 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Red Sweater Blog &#8211; Safari Keychain Woes</title>
		<link>http://www.clarkcox.com/blog/2009/02/04/inspecting-obj-c-parameters-in-gdb/comment-page-1/#comment-6041</link>
		<dc:creator>Red Sweater Blog &#8211; Safari Keychain Woes</dc:creator>
		<pubDate>Fri, 29 Jul 2011 20:57:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.clarkcox.com/blog/?p=12#comment-6041</guid>
		<description>[...] compiler translates source code into corresponding assembly language instructions, and where the arguments are placed when calling [...]</description>
		<content:encoded><![CDATA[<p>[...] compiler translates source code into corresponding assembly language instructions, and where the arguments are placed when calling [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Just Smile ^_^</title>
		<link>http://www.clarkcox.com/blog/2009/02/04/inspecting-obj-c-parameters-in-gdb/comment-page-1/#comment-5895</link>
		<dc:creator>Just Smile ^_^</dc:creator>
		<pubDate>Wed, 13 Jul 2011 10:55:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.clarkcox.com/blog/?p=12#comment-5895</guid>
		<description>[...] 这是一篇很好的文章，它讲解了在不同的体系结构下，参数是如何存储的。不过它并没有讲到ARM（= =）。所幸ARM的存储很简单，参数只是按顺序被存储在$r0, $r1, $r2, $r3寄存器里。记住，在所有通过寄存器传递参数的体系结构里（i386不是），只有在函数开头的一小段里，寄存器里存的才是参数。因为在程序进行的过程中，它们随时都可能被其他变量替换掉。 [...]</description>
		<content:encoded><![CDATA[<p>[...] 这是一篇很好的文章，它讲解了在不同的体系结构下，参数是如何存储的。不过它并没有讲到ARM（= =）。所幸ARM的存储很简单，参数只是按顺序被存储在$r0, $r1, $r2, $r3寄存器里。记住，在所有通过寄存器传递参数的体系结构里（i386不是），只有在函数开头的一小段里，寄存器里存的才是参数。因为在程序进行的过程中，它们随时都可能被其他变量替换掉。 [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kevin Ballard</title>
		<link>http://www.clarkcox.com/blog/2009/02/04/inspecting-obj-c-parameters-in-gdb/comment-page-1/#comment-3859</link>
		<dc:creator>Kevin Ballard</dc:creator>
		<pubDate>Thu, 23 Sep 2010 19:58:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.clarkcox.com/blog/?p=12#comment-3859</guid>
		<description>It&#039;s been a while since I&#039;ve had to deal with PPC, but from what I remember, the arguments often got shoved into high-numbered registers so the argument registers can be reused to call other functions. This means that, if you&#039;ve gone a little ways into the PPC function, you usually have to inspect the assembly to figure out what register you really need to inspect to find the original arguments. Because of that, I actually prefer x86 for debugging as I can just use gdb user-defined functions to inspect the stack.</description>
		<content:encoded><![CDATA[<p>It&#8217;s been a while since I&#8217;ve had to deal with PPC, but from what I remember, the arguments often got shoved into high-numbered registers so the argument registers can be reused to call other functions. This means that, if you&#8217;ve gone a little ways into the PPC function, you usually have to inspect the assembly to figure out what register you really need to inspect to find the original arguments. Because of that, I actually prefer x86 for debugging as I can just use gdb user-defined functions to inspect the stack.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mac OS X Spelunking in PowerPC and x86 Assembly, part 1 &#124; Arthur Chu &#124; Web Develepment Aggregator</title>
		<link>http://www.clarkcox.com/blog/2009/02/04/inspecting-obj-c-parameters-in-gdb/comment-page-1/#comment-1569</link>
		<dc:creator>Mac OS X Spelunking in PowerPC and x86 Assembly, part 1 &#124; Arthur Chu &#124; Web Develepment Aggregator</dc:creator>
		<pubDate>Sun, 07 Feb 2010 22:19:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.clarkcox.com/blog/?p=12#comment-1569</guid>
		<description>[...] about x86. Despite the present and future of the Mac being x86, it seems like people have lots of anxiety about having to work with it.I think the problem is not a lack of documentation on x86 assembly, [...]</description>
		<content:encoded><![CDATA[<p>[...] about x86. Despite the present and future of the Mac being x86, it seems like people have lots of anxiety about having to work with it.I think the problem is not a lack of documentation on x86 assembly, [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Harry</title>
		<link>http://www.clarkcox.com/blog/2009/02/04/inspecting-obj-c-parameters-in-gdb/comment-page-1/#comment-286</link>
		<dc:creator>Harry</dc:creator>
		<pubDate>Tue, 30 Jun 2009 12:53:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.clarkcox.com/blog/?p=12#comment-286</guid>
		<description>thanks for this comparisons!! that&#039;s exactly what I was looking for.</description>
		<content:encoded><![CDATA[<p>thanks for this comparisons!! that&#8217;s exactly what I was looking for.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Avi</title>
		<link>http://www.clarkcox.com/blog/2009/02/04/inspecting-obj-c-parameters-in-gdb/comment-page-1/#comment-145</link>
		<dc:creator>Avi</dc:creator>
		<pubDate>Sun, 17 May 2009 04:07:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.clarkcox.com/blog/?p=12#comment-145</guid>
		<description>x86 assembly isn&#039;t so bad. I wrote a blog post about it:

http://www.drissman.com/blog/archives/2009/05/16/reverseengineering_in_os_x_on_x86.html</description>
		<content:encoded><![CDATA[<p>x86 assembly isn&#8217;t so bad. I wrote a blog post about it:</p>
<p><a href="http://www.drissman.com/blog/archives/2009/05/16/reverseengineering_in_os_x_on_x86.html" rel="nofollow">http://www.drissman.com/blog/archives/2009/05/16/reverseengineering_in_os_x_on_x86.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Karsten</title>
		<link>http://www.clarkcox.com/blog/2009/02/04/inspecting-obj-c-parameters-in-gdb/comment-page-1/#comment-43</link>
		<dc:creator>Karsten</dc:creator>
		<pubDate>Mon, 09 Mar 2009 12:10:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.clarkcox.com/blog/?p=12#comment-43</guid>
		<description>thanks a lot for the list!! that&#039;s really helpful!

even after so many years of Intel Macs, i still can&#039;t get my head around to understand this annoying stack stuff.... ppc with its registers is so much easier to understand...
that&#039;s why i still keep my old powerbook around, its really a lifesaver!</description>
		<content:encoded><![CDATA[<p>thanks a lot for the list!! that&#8217;s really helpful!</p>
<p>even after so many years of Intel Macs, i still can&#8217;t get my head around to understand this annoying stack stuff&#8230;. ppc with its registers is so much easier to understand&#8230;<br />
that&#8217;s why i still keep my old powerbook around, its really a lifesaver!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Benjamin Pollack</title>
		<link>http://www.clarkcox.com/blog/2009/02/04/inspecting-obj-c-parameters-in-gdb/comment-page-1/#comment-12</link>
		<dc:creator>Benjamin Pollack</dc:creator>
		<pubDate>Thu, 12 Feb 2009 21:06:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.clarkcox.com/blog/?p=12#comment-12</guid>
		<description>Oh, G-d do I miss 68k assembler.  Yes, I completely understand that the move to PowerPC was necessary, but the 68k was designed on purpose so that humans could understand it.  If you had told me ten years ago that either 68k or x86 would survive into the indefinite future, I&#039;d have thought you a lunatic if you&#039;d insisted it would be x86.  PowerPC&#039;s certainly far better than x86, but I&#039;d argue that not even it is nearly as nice for the developer as 68k was (at least at an ISA level).

For as long as I can for the same reason Daniel Jalkut does, I&#039;ll continue using my G5 for development.  Hopefully by the time I switch, the significantly less disgusting x86_64 ISA will be standard enough that I can bypass ever having to really learn about the 32-bit API.</description>
		<content:encoded><![CDATA[<p>Oh, G-d do I miss 68k assembler.  Yes, I completely understand that the move to PowerPC was necessary, but the 68k was designed on purpose so that humans could understand it.  If you had told me ten years ago that either 68k or x86 would survive into the indefinite future, I&#8217;d have thought you a lunatic if you&#8217;d insisted it would be x86.  PowerPC&#8217;s certainly far better than x86, but I&#8217;d argue that not even it is nearly as nice for the developer as 68k was (at least at an ISA level).</p>
<p>For as long as I can for the same reason Daniel Jalkut does, I&#8217;ll continue using my G5 for development.  Hopefully by the time I switch, the significantly less disgusting x86_64 ISA will be standard enough that I can bypass ever having to really learn about the 32-bit API.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Jalkut</title>
		<link>http://www.clarkcox.com/blog/2009/02/04/inspecting-obj-c-parameters-in-gdb/comment-page-1/#comment-7</link>
		<dc:creator>Daniel Jalkut</dc:creator>
		<pubDate>Sat, 07 Feb 2009 05:22:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.clarkcox.com/blog/?p=12#comment-7</guid>
		<description>Clark, great table.  I rely on a bunch of really nifty PPC macros I&#039;ve written to inspect parameters, etc. And one of the big hesitations I have to moving to i386 for full-time development/debugging is having to tackle the i386 ABI(s).  I feel ya when you say that PPC was so much simpler ;)</description>
		<content:encoded><![CDATA[<p>Clark, great table.  I rely on a bunch of really nifty PPC macros I&#8217;ve written to inspect parameters, etc. And one of the big hesitations I have to moving to i386 for full-time development/debugging is having to tackle the i386 ABI(s).  I feel ya when you say that PPC was so much simpler ;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Clark Cox</title>
		<link>http://www.clarkcox.com/blog/2009/02/04/inspecting-obj-c-parameters-in-gdb/comment-page-1/#comment-6</link>
		<dc:creator>Clark Cox</dc:creator>
		<pubDate>Thu, 05 Feb 2009 22:21:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.clarkcox.com/blog/?p=12#comment-6</guid>
		<description>Indeed, by the time I care about inspecting values, I&#039;m usually well into a function, so I can usually assume that the prolog has already executed.</description>
		<content:encoded><![CDATA[<p>Indeed, by the time I care about inspecting values, I&#8217;m usually well into a function, so I can usually assume that the prolog has already executed.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

