<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">
<pre wrap="">Hi,
I appreciate a so full documented review - I will try my best to apply your comments. It's definitely good.
</pre>
<ul>
<li>For indentation problems, will care about it.</li>
</ul>
<ul>
<li>I badly said hetereogenous instead of not homogeneous (it is
not really clear if hetereogeneous means mixed float struct
and/or big homogeneous struct >64 bytes ...) . Will change
that. <br>
</li>
</ul>
<ul>
<li>Regarding "According to the code below, heterog and hfa_type
are not part of
<span class="moz-txt-underscore"><span class="moz-txt-tag">_</span>state<span
class="moz-txt-tag">_</span></span>. You don't need to
keep their values between calls. Why are
they in context?".</li>
</ul>
<pre wrap="">I agree, these 2 boolean must be renamed like is_... and doesn't have to be in context.
Size of structure and hfa structure being enough.
</pre>
<ul>
<li>" This has wrong indentation. Please indent a space for each
nested
preprocessor level. (Though I suppose the include guard ifdefs
don't
count.)"<br>
#ifdef __powerpc64__ // Says 'ltrace' is 64 bits, says
nothing about target.<br>
#define LT_ELFCLASS2 ELFCLASS64<br>
#define LT_ELF_MACHINE2 EM_PPC64<br>
-#define ARCH_SUPPORTS_OPD<br>
-#endif<br>
+<br>
+# ifdef __LITTLE_ENDIAN__<br>
+# define BREAKPOINT_VALUE { 0x08, 0x00, 0xe0, 0x7f }<br>
+# define ARCH_ENDIAN_LITTLE<br>
+# else<br>
+# define BREAKPOINT_VALUE { 0x7f, 0xe0, 0x00, 0x08 }<br>
+# define ARCH_SUPPORTS_OPD<br>
+# define ARCH_ENDIAN_BIG<br>
+# endif<br>
+<br>
+# if _CALL_ELF != 2<br>
+# define ARCH_SUPPORTS_OPD<br>
+# define STACK_FRAME_OVERHEAD 112<br>
+# else /* _CALL_ELF == 2 ABIv2 */<br>
+# define STACK_FRAME_OVERHEAD 32<br>
+# endif /* CALL_ELF */<br>
+<br>
+#else<br>
+#define BREAKPOINT_VALUE { 0x7f, 0xe0, 0x00, 0x08 }<br>
+#define ARCH_ENDIAN_BIG<br>
+#endif /* __powerpc64__ */</li>
<li><br>
is this better ?<br>
</li>
</ul>
</div>
<blockquote cite="mid:m2eh16xj9m.fsf@redhat.com" type="cite">
<ul>
<li>
<pre wrap="">
+ lte->arch.elfv2_abi=((lte->ehdr.e_flags & 3) & 2);
</pre>
</li>
</ul>
<pre wrap="">
Uhh, do these things have symbolic names by any chance?
Also, why & 3 & 2? That's the same as & 2...</pre>
</blockquote>
I finaly found it : <br>
/* e_flags bits specifying ABI.<br>
1 for original function descriptor using ABI,<br>
2 for revised ABI without function descriptors,<br>
0 for unspecified or not using any features affected by the
differences. */<br>
#define EF_PPC64_ABI 3<br>
<br>
would :
lte->arch.elfv2_abi=((lte->ehdr.e_flags & EF_PPC64_ABI )
== 2 )<br>
<br>
be more appropriate <br>
+/* if ( ! strlen(name) )
+ continue;
+*/
<blockquote cite="mid:m2eh16xj9m.fsf@redhat.com" type="cite">
<pre wrap="">
Just drop it instead of commenting out.</pre>
</blockquote>
sure - I forgot it.<br>
<blockquote cite="mid:m2eh16xj9m.fsf@redhat.com" type="cite">
Thank you,
PM
</blockquote>
<br>
Update coming soon<br>
<br>
Best regards<br>
Thierry<br>
<pre class="moz-signature" cols="72">--
Thierry Fauck @ linux.vnet.ibm</pre>
</body>
</html>