<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:0in;
        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:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
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-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">I see that now and yay for tests!<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">--paulr<o:p></o:p></span></p>
<p class="MsoNormal"><a name="_MailEndCompose"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></a></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt">
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> David Blaikie [mailto:dblaikie@gmail.com]
<br>
<b>Sent:</b> Thursday, May 25, 2017 4:49 PM<br>
<b>To:</b> Robinson, Paul<br>
<b>Cc:</b> llvm-commits@lists.llvm.org<br>
<b>Subject:</b> Re: [llvm] r303666 - Refactor DWARF hashing to use a .def file to avoid repetition<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">Thanks for checking - tests did fail & were fixed with r303669<o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Thu, May 25, 2017 at 4:45 PM Robinson, Paul <<a href="mailto:paul.robinson@sony.com">paul.robinson@sony.com</a>> wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<p class="MsoNormal">If I'm right, it makes me sad that no test failed.<br>
<br>
<br>
> -----Original Message-----<br>
> From: llvm-commits [mailto:<a href="mailto:llvm-commits-bounces@lists.llvm.org" target="_blank">llvm-commits-bounces@lists.llvm.org</a>] On Behalf<br>
> Of David Blaikie via llvm-commits<br>
> Sent: Tuesday, May 23, 2017 11:27 AM<br>
> To: <a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a><br>
> Subject: [llvm] r303666 - Refactor DWARF hashing to use a .def file to<br>
> avoid repetition<br>
><br>
> Author: dblaikie<br>
> Date: Tue May 23 13:27:09 2017<br>
> New Revision: 303666<br>
><br>
> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=303666&view=rev" target="_blank">
http://llvm.org/viewvc/llvm-project?rev=303666&view=rev</a><br>
> Log:<br>
> Refactor DWARF hashing to use a .def file to avoid repetition<br>
><br>
> Added:<br>
>     llvm/trunk/lib/CodeGen/AsmPrinter/DIEHashAttributes.def<br>
> Modified:<br>
>     llvm/trunk/lib/CodeGen/AsmPrinter/DIEHash.cpp<br>
>     llvm/trunk/lib/CodeGen/AsmPrinter/DIEHash.h<br>
><br>
> Modified: llvm/trunk/lib/CodeGen/AsmPrinter/DIEHash.cpp<br>
> URL: <a href="http://llvm.org/viewvc/llvm-" target="_blank">http://llvm.org/viewvc/llvm-</a><br>
> project/llvm/trunk/lib/CodeGen/AsmPrinter/DIEHash.cpp?rev=303666&r1=303665<br>
> &r2=303666&view=diff<br>
> ==========================================================================<br>
> ====<br>
> --- llvm/trunk/lib/CodeGen/AsmPrinter/DIEHash.cpp (original)<br>
> +++ llvm/trunk/lib/CodeGen/AsmPrinter/DIEHash.cpp Tue May 23 13:27:09 2017<br>
> @@ -116,65 +116,17 @@ void DIEHash::addParentContext(const DIE<br>
><br>
>  // Collect all of the attributes for a particular DIE in single<br>
> structure.<br>
>  void DIEHash::collectAttributes(const DIE &Die, DIEAttrs &Attrs) {<br>
> -#define COLLECT_ATTR(NAME)<br>
> \<br>
> -  case dwarf::NAME:<br>
> \<br>
> -    Attrs.NAME = V;<br>
> \<br>
> -    break<br>
><br>
>    for (const auto &V : Die.values()) {<br>
>      DEBUG(dbgs() << "Attribute: "<br>
>                   << dwarf::AttributeString(V.getAttribute())<br>
>                   << " added.\n");<br>
>      switch (V.getAttribute()) {<br>
> -      COLLECT_ATTR(DW_AT_name);<br>
<br>
I see DW_AT_name here...<br>
<br>
> -      COLLECT_ATTR(DW_AT_accessibility);<br>
> -      COLLECT_ATTR(DW_AT_address_class);<br>
> -      COLLECT_ATTR(DW_AT_allocated);<br>
> -      COLLECT_ATTR(DW_AT_artificial);<br>
> -      COLLECT_ATTR(DW_AT_associated);<br>
> -      COLLECT_ATTR(DW_AT_binary_scale);<br>
> -      COLLECT_ATTR(DW_AT_bit_offset);<br>
> -      COLLECT_ATTR(DW_AT_bit_size);<br>
> -      COLLECT_ATTR(DW_AT_bit_stride);<br>
> -      COLLECT_ATTR(DW_AT_byte_size);<br>
> -      COLLECT_ATTR(DW_AT_byte_stride);<br>
> -      COLLECT_ATTR(DW_AT_const_expr);<br>
> -      COLLECT_ATTR(DW_AT_const_value);<br>
> -      COLLECT_ATTR(DW_AT_containing_type);<br>
> -      COLLECT_ATTR(DW_AT_count);<br>
> -      COLLECT_ATTR(DW_AT_data_bit_offset);<br>
> -      COLLECT_ATTR(DW_AT_data_location);<br>
> -      COLLECT_ATTR(DW_AT_data_member_location);<br>
> -      COLLECT_ATTR(DW_AT_decimal_scale);<br>
> -      COLLECT_ATTR(DW_AT_decimal_sign);<br>
> -      COLLECT_ATTR(DW_AT_default_value);<br>
> -      COLLECT_ATTR(DW_AT_digit_count);<br>
> -      COLLECT_ATTR(DW_AT_discr);<br>
> -      COLLECT_ATTR(DW_AT_discr_list);<br>
> -      COLLECT_ATTR(DW_AT_discr_value);<br>
> -      COLLECT_ATTR(DW_AT_encoding);<br>
> -      COLLECT_ATTR(DW_AT_enum_class);<br>
> -      COLLECT_ATTR(DW_AT_endianity);<br>
> -      COLLECT_ATTR(DW_AT_explicit);<br>
> -      COLLECT_ATTR(DW_AT_is_optional);<br>
> -      COLLECT_ATTR(DW_AT_location);<br>
> -      COLLECT_ATTR(DW_AT_lower_bound);<br>
> -      COLLECT_ATTR(DW_AT_mutable);<br>
> -      COLLECT_ATTR(DW_AT_ordering);<br>
> -      COLLECT_ATTR(DW_AT_picture_string);<br>
> -      COLLECT_ATTR(DW_AT_prototyped);<br>
> -      COLLECT_ATTR(DW_AT_small);<br>
> -      COLLECT_ATTR(DW_AT_segment);<br>
> -      COLLECT_ATTR(DW_AT_string_length);<br>
> -      COLLECT_ATTR(DW_AT_threads_scaled);<br>
> -      COLLECT_ATTR(DW_AT_upper_bound);<br>
> -      COLLECT_ATTR(DW_AT_use_location);<br>
> -      COLLECT_ATTR(DW_AT_use_UTF8);<br>
> -      COLLECT_ATTR(DW_AT_variable_parameter);<br>
> -      COLLECT_ATTR(DW_AT_virtuality);<br>
> -      COLLECT_ATTR(DW_AT_visibility);<br>
> -      COLLECT_ATTR(DW_AT_vtable_elem_location);<br>
> -      COLLECT_ATTR(DW_AT_type);<br>
> +#define HANDLE_DIE_HASH_ATTR(NAME)<br>
> \<br>
> +  case dwarf::NAME:<br>
> \<br>
> +    Attrs.NAME = V;<br>
> \<br>
> +    break;<br>
> +#include "DIEHashAttributes.def"<br>
>      default:<br>
>        break;<br>
>      }<br>
> @@ -366,62 +318,12 @@ void DIEHash::hashAttribute(const DIEVal<br>
>  // Go through the attributes from \param Attrs in the order specified in<br>
> 7.27.4<br>
>  // and hash them.<br>
>  void DIEHash::hashAttributes(const DIEAttrs &Attrs, dwarf::Tag Tag) {<br>
> -#define ADD_ATTR(ATTR)<br>
> \<br>
> +#define HANDLE_DIE_HASH_ATTR(NAME)<br>
> \<br>
>    {<br>
> \<br>
> -    if (ATTR)<br>
> \<br>
> -      hashAttribute(ATTR, Tag);<br>
> \<br>
> +    if (Attrs.NAME)<br>
> \<br>
> +      hashAttribute(Attrs.NAME, Tag);<br>
> \<br>
>    }<br>
> -<br>
> -  ADD_ATTR(Attrs.DW_AT_name);<br>
<br>
and here...<br>
<br>
> -  ADD_ATTR(Attrs.DW_AT_accessibility);<br>
> -  ADD_ATTR(Attrs.DW_AT_address_class);<br>
> -  ADD_ATTR(Attrs.DW_AT_allocated);<br>
> -  ADD_ATTR(Attrs.DW_AT_artificial);<br>
> -  ADD_ATTR(Attrs.DW_AT_associated);<br>
> -  ADD_ATTR(Attrs.DW_AT_binary_scale);<br>
> -  ADD_ATTR(Attrs.DW_AT_bit_offset);<br>
> -  ADD_ATTR(Attrs.DW_AT_bit_size);<br>
> -  ADD_ATTR(Attrs.DW_AT_bit_stride);<br>
> -  ADD_ATTR(Attrs.DW_AT_byte_size);<br>
> -  ADD_ATTR(Attrs.DW_AT_byte_stride);<br>
> -  ADD_ATTR(Attrs.DW_AT_const_expr);<br>
> -  ADD_ATTR(Attrs.DW_AT_const_value);<br>
> -  ADD_ATTR(Attrs.DW_AT_containing_type);<br>
> -  ADD_ATTR(Attrs.DW_AT_count);<br>
> -  ADD_ATTR(Attrs.DW_AT_data_bit_offset);<br>
> -  ADD_ATTR(Attrs.DW_AT_data_location);<br>
> -  ADD_ATTR(Attrs.DW_AT_data_member_location);<br>
> -  ADD_ATTR(Attrs.DW_AT_decimal_scale);<br>
> -  ADD_ATTR(Attrs.DW_AT_decimal_sign);<br>
> -  ADD_ATTR(Attrs.DW_AT_default_value);<br>
> -  ADD_ATTR(Attrs.DW_AT_digit_count);<br>
> -  ADD_ATTR(Attrs.DW_AT_discr);<br>
> -  ADD_ATTR(Attrs.DW_AT_discr_list);<br>
> -  ADD_ATTR(Attrs.DW_AT_discr_value);<br>
> -  ADD_ATTR(Attrs.DW_AT_encoding);<br>
> -  ADD_ATTR(Attrs.DW_AT_enum_class);<br>
> -  ADD_ATTR(Attrs.DW_AT_endianity);<br>
> -  ADD_ATTR(Attrs.DW_AT_explicit);<br>
> -  ADD_ATTR(Attrs.DW_AT_is_optional);<br>
> -  ADD_ATTR(Attrs.DW_AT_location);<br>
> -  ADD_ATTR(Attrs.DW_AT_lower_bound);<br>
> -  ADD_ATTR(Attrs.DW_AT_mutable);<br>
> -  ADD_ATTR(Attrs.DW_AT_ordering);<br>
> -  ADD_ATTR(Attrs.DW_AT_picture_string);<br>
> -  ADD_ATTR(Attrs.DW_AT_prototyped);<br>
> -  ADD_ATTR(Attrs.DW_AT_small);<br>
> -  ADD_ATTR(Attrs.DW_AT_segment);<br>
> -  ADD_ATTR(Attrs.DW_AT_string_length);<br>
> -  ADD_ATTR(Attrs.DW_AT_threads_scaled);<br>
> -  ADD_ATTR(Attrs.DW_AT_upper_bound);<br>
> -  ADD_ATTR(Attrs.DW_AT_use_location);<br>
> -  ADD_ATTR(Attrs.DW_AT_use_UTF8);<br>
> -  ADD_ATTR(Attrs.DW_AT_variable_parameter);<br>
> -  ADD_ATTR(Attrs.DW_AT_virtuality);<br>
> -  ADD_ATTR(Attrs.DW_AT_visibility);<br>
> -  ADD_ATTR(Attrs.DW_AT_vtable_elem_location);<br>
> -  ADD_ATTR(Attrs.DW_AT_type);<br>
> -<br>
> +#include "DIEHashAttributes.def"<br>
>    // FIXME: Add the extended attributes.<br>
>  }<br>
><br>
><br>
> Modified: llvm/trunk/lib/CodeGen/AsmPrinter/DIEHash.h<br>
> URL: <a href="http://llvm.org/viewvc/llvm-" target="_blank">http://llvm.org/viewvc/llvm-</a><br>
> project/llvm/trunk/lib/CodeGen/AsmPrinter/DIEHash.h?rev=303666&r1=303665&r<br>
> 2=303666&view=diff<br>
> ==========================================================================<br>
> ====<br>
> --- llvm/trunk/lib/CodeGen/AsmPrinter/DIEHash.h (original)<br>
> +++ llvm/trunk/lib/CodeGen/AsmPrinter/DIEHash.h Tue May 23 13:27:09 2017<br>
> @@ -28,57 +28,8 @@ class CompileUnit;<br>
>  class DIEHash {<br>
>    // Collection of all attributes used in hashing a particular DIE.<br>
>    struct DIEAttrs {<br>
> -    DIEValue DW_AT_name;<br>
<br>
and here....<br>
<br>
> -    DIEValue DW_AT_accessibility;<br>
> -    DIEValue DW_AT_address_class;<br>
> -    DIEValue DW_AT_allocated;<br>
> -    DIEValue DW_AT_artificial;<br>
> -    DIEValue DW_AT_associated;<br>
> -    DIEValue DW_AT_binary_scale;<br>
> -    DIEValue DW_AT_bit_offset;<br>
> -    DIEValue DW_AT_bit_size;<br>
> -    DIEValue DW_AT_bit_stride;<br>
> -    DIEValue DW_AT_byte_size;<br>
> -    DIEValue DW_AT_byte_stride;<br>
> -    DIEValue DW_AT_const_expr;<br>
> -    DIEValue DW_AT_const_value;<br>
> -    DIEValue DW_AT_containing_type;<br>
> -    DIEValue DW_AT_count;<br>
> -    DIEValue DW_AT_data_bit_offset;<br>
> -    DIEValue DW_AT_data_location;<br>
> -    DIEValue DW_AT_data_member_location;<br>
> -    DIEValue DW_AT_decimal_scale;<br>
> -    DIEValue DW_AT_decimal_sign;<br>
> -    DIEValue DW_AT_default_value;<br>
> -    DIEValue DW_AT_digit_count;<br>
> -    DIEValue DW_AT_discr;<br>
> -    DIEValue DW_AT_discr_list;<br>
> -    DIEValue DW_AT_discr_value;<br>
> -    DIEValue DW_AT_encoding;<br>
> -    DIEValue DW_AT_enum_class;<br>
> -    DIEValue DW_AT_endianity;<br>
> -    DIEValue DW_AT_explicit;<br>
> -    DIEValue DW_AT_is_optional;<br>
> -    DIEValue DW_AT_location;<br>
> -    DIEValue DW_AT_lower_bound;<br>
> -    DIEValue DW_AT_mutable;<br>
> -    DIEValue DW_AT_ordering;<br>
> -    DIEValue DW_AT_picture_string;<br>
> -    DIEValue DW_AT_prototyped;<br>
> -    DIEValue DW_AT_small;<br>
> -    DIEValue DW_AT_segment;<br>
> -    DIEValue DW_AT_string_length;<br>
> -    DIEValue DW_AT_threads_scaled;<br>
> -    DIEValue DW_AT_upper_bound;<br>
> -    DIEValue DW_AT_use_location;<br>
> -    DIEValue DW_AT_use_UTF8;<br>
> -    DIEValue DW_AT_variable_parameter;<br>
> -    DIEValue DW_AT_virtuality;<br>
> -    DIEValue DW_AT_visibility;<br>
> -    DIEValue DW_AT_vtable_elem_location;<br>
> -    DIEValue DW_AT_type;<br>
> -<br>
> -    // Insert any additional ones here...<br>
> +#define HANDLE_DIE_HASH_ATTR(NAME) DIEValue NAME;<br>
> +#include "DIEHashAttributes.def"<br>
>    };<br>
><br>
>  public:<br>
><br>
> Added: llvm/trunk/lib/CodeGen/AsmPrinter/DIEHashAttributes.def<br>
> URL: <a href="http://llvm.org/viewvc/llvm-" target="_blank">http://llvm.org/viewvc/llvm-</a><br>
> project/llvm/trunk/lib/CodeGen/AsmPrinter/DIEHashAttributes.def?rev=303666<br>
> &view=auto<br>
> ==========================================================================<br>
> ====<br>
> --- llvm/trunk/lib/CodeGen/AsmPrinter/DIEHashAttributes.def (added)<br>
> +++ llvm/trunk/lib/CodeGen/AsmPrinter/DIEHashAttributes.def Tue May 23<br>
> 13:27:09 2017<br>
> @@ -0,0 +1,54 @@<br>
> +#ifndef HANDLE_DIE_HASH_ATTR<br>
> +#error "Missing macro definition of HANDLE_DIE_HASH_ATTR"<br>
> +#endif<br>
> +<br>
<br>
but not here.<br>
<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_accessibility)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_address_class)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_allocated)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_artificial)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_associated)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_binary_scale)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_bit_offset)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_bit_size)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_bit_stride)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_byte_size)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_byte_stride)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_const_expr)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_const_value)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_containing_type)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_count)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_data_bit_offset)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_data_location)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_data_member_location)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_decimal_scale)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_decimal_sign)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_default_value)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_digit_count)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_discr)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_discr_list)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_discr_value)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_encoding)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_enum_class)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_endianity)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_explicit)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_is_optional)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_location)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_lower_bound)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_mutable)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_ordering)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_picture_string)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_prototyped)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_small)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_segment)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_string_length)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_threads_scaled)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_upper_bound)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_use_location)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_use_UTF8)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_variable_parameter)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_virtuality)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_visibility)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_vtable_elem_location)<br>
> +HANDLE_DIE_HASH_ATTR(DW_AT_type)<br>
> +<br>
> +#undef HANDLE_DIE_HASH_ATTR<br>
><br>
><br>
> _______________________________________________<br>
> llvm-commits mailing list<br>
> <a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a><br>
> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" target="_blank">
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><o:p></o:p></p>
</blockquote>
</div>
</div>
</div>
</body>
</html>