<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-GB" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">Good point. Timur has asked me to cast to int and is wondering whether the prototype should be changed so I'll wait to see what Kostya says before updating the patch to either
 cast to int or use '%zd'.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt">
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> mats.o.petersson@googlemail.com [mailto:mats.o.petersson@googlemail.com]
<b>On Behalf Of </b>mats petersson<br>
<b>Sent:</b> 23 April 2015 15:41<br>
<b>To:</b> reviews+D9224+public+0db905cdbbbc4cdf@reviews.llvm.org<br>
<b>Cc:</b> Daniel Sanders; kcc@google.com; timurrrr@google.com; llvm-commits@cs.uiuc.edu; Sagar Thakur<br>
<b>Subject:</b> Re: [PATCH] [asan] Print SHADOW_SCALE and SHADOW_GRANULARITY as decimal values.<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On 23 April 2015 at 15:32, Daniel Sanders <<a href="mailto:daniel.sanders@imgtec.com" target="_blank">daniel.sanders@imgtec.com</a>> wrote:<o:p></o:p></p>
<p class="MsoNormal">Hi kcc, timurrrr,<br>
<br>
During the review of <a href="http://reviews.llvm.org/D9199" target="_blank">http://reviews.llvm.org/D9199</a> where I had originally<br>
changed the debug_mapping.cc test to accept hexadecimal values, we realized<br>
that SHADOW_SCALE and SHADOW_GRANULARITY ought to be printed as decimal values.<br>
This patch makes that change.<br>
<br>
This patch also adds a '0x' prefix to the SHADOW_OFFSET to make it clear that<br>
it is hexadecimal while the other two are decimal.<br>
<br>
<a href="http://reviews.llvm.org/D9224" target="_blank">http://reviews.llvm.org/D9224</a><br>
<br>
Files:<br>
  lib/asan/asan_rtl.cc<br>
  test/asan/TestCases/debug_mapping.cc<br>
<br>
Index: lib/asan/asan_rtl.cc<br>
===================================================================<br>
--- lib/asan/asan_rtl.cc<br>
+++ lib/asan/asan_rtl.cc<br>
@@ -347,9 +347,9 @@<br>
   Printf("malloc_context_size=%zu\n",<br>
          (uptr)common_flags()->malloc_context_size);<br>
<br>
-  Printf("SHADOW_SCALE: %zx\n", (uptr)SHADOW_SCALE);<br>
-  Printf("SHADOW_GRANULARITY: %zx\n", (uptr)SHADOW_GRANULARITY);<br>
-  Printf("SHADOW_OFFSET: %zx\n", (uptr)SHADOW_OFFSET);<br>
+  Printf("SHADOW_SCALE: %d\n", (uptr)SHADOW_SCALE);<o:p></o:p></p>
<div>
<p class="MsoNormal">If it's cast to uptr, then surely it should be "%zd" or even "%zu", not "%d" (the z means "size_t" length of the value)<br>
<br>
--<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Mats<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<p class="MsoNormal">+  Printf("SHADOW_GRANULARITY: %d\n", (uptr)SHADOW_GRANULARITY);<br>
+  Printf("SHADOW_OFFSET: 0x%zx\n", (uptr)SHADOW_OFFSET);<br>
   CHECK(SHADOW_SCALE >= 3 && SHADOW_SCALE <= 7);<br>
   if (kMidMemBeg)<br>
     CHECK(kMidShadowBeg > kLowShadowEnd && <o:p></o:p></p>
</blockquote>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<p class="MsoNormal">Index: test/asan/TestCases/debug_mapping.cc<br>
===================================================================<br>
--- test/asan/TestCases/debug_mapping.cc<br>
+++ test/asan/TestCases/debug_mapping.cc<br>
@@ -8,14 +8,14 @@<br>
<br>
 // printed because of verbosity=1<br>
 // CHECK: SHADOW_SCALE: [[SCALE:[0-9]+]]<br>
-// CHECK: SHADOW_OFFSET: [[OFFSET:[0-9a-f]+]]<br>
+// CHECK: SHADOW_OFFSET: [[OFFSET:0x[0-9a-f]+]]<br>
<br>
 int main() {<br>
   size_t scale, offset;<br>
   __asan_get_shadow_mapping(&scale, &offset);<br>
<br>
-  fprintf(stderr, "scale: %lx\n", scale);<br>
-  fprintf(stderr, "offset: %lx\n", offset);<br>
+  fprintf(stderr, "scale: %d\n", scale);<o:p></o:p></p>
</blockquote>
<div>
<p class="MsoNormal">Likewise size_t should be "%zd" [and for the hex on the next line "%zx", not "%lx"]<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<p class="MsoNormal" style="margin-bottom:12.0pt">+  fprintf(stderr, "offset: 0x%lx\n", offset);<br>
<br>
   // CHECK: scale: [[SCALE]]<br>
   // CHECK: offset: [[OFFSET]]<br>
<br>
EMAIL PREFERENCES<br>
  <a href="http://reviews.llvm.org/settings/panel/emailpreferences/" target="_blank">
http://reviews.llvm.org/settings/panel/emailpreferences/</a><br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><o:p></o:p></p>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
</div>
</body>
</html>