[llvm-commits] [llvm] r144724 - in /llvm/trunk/docs: ObjCPropertyDebugInfo.html SourceLevelDebugging.html index.html
Devang Patel
dpatel at apple.com
Tue Nov 15 14:59:54 PST 2011
Author: dpatel
Date: Tue Nov 15 16:59:54 2011
New Revision: 144724
URL: http://llvm.org/viewvc/llvm-project?rev=144724&view=rev
Log:
Merge ObjCPropertyDebugInfo.html into SourceLevelDebugging.html
Removed:
llvm/trunk/docs/ObjCPropertyDebugInfo.html
Modified:
llvm/trunk/docs/SourceLevelDebugging.html
llvm/trunk/docs/index.html
Removed: llvm/trunk/docs/ObjCPropertyDebugInfo.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/ObjCPropertyDebugInfo.html?rev=144723&view=auto
==============================================================================
--- llvm/trunk/docs/ObjCPropertyDebugInfo.html (original)
+++ llvm/trunk/docs/ObjCPropertyDebugInfo.html (removed)
@@ -1,237 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
- "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>Debugging Information Extension for Objective C Properties</title>
- <link rel="stylesheet" href="llvm.css" type="text/css">
-</head>
-<body>
-
-<h1>
- Debugging Information Extension for Objective C Properties
-</h1>
-
-<ol>
- <li><a href="#introduction">Introduction</a></li>
- <li><a href="#proposal">Proposal</a></li>
- <li><a href="#newattributes">New DWARF Attributes</a></li>
- <li><a href="#newconstants">New DWARF Constants</a></li>
-
-</ol>
-
-<div class="doc_author">
- <p>Written by Jim Ingham and Devang Patel </p>
-</div>
-
-<!-- *********************************************************************** -->
-<h2>
- <a name="introduction">Introduction</a>
-</h2>
-<!-- *********************************************************************** -->
-
-<div>
-<p>Objective C provides a simpler way to declare and define accessor methods
-using declared properties. The language provides features to declare a
-property and to let compiler synthesize accessor methods.
-</p>
-
-<p>The debugger lets developer inspect Objective C interfaces and their
-instance variables and class variables. However, the debugger does not know
-anything about the properties defined in Objective C interfaces. The debugger
-consumes information generated by compiler in DWARF format. The format does
-not support encoding of Objective C properties. This proposal describes DWARF
-extensions to encode Objective C properties, which the debugger can use to let
-developers inspect Objective C properties.
-</p>
-
-</div>
-
-
-<!-- *********************************************************************** -->
-<h2>
- <a name="proposal">Proposal</a>
-</h2>
-<!-- *********************************************************************** -->
-
-<div>
-<p>Objective C properties are always backed by an instance variable. The
-instance variables backing properties are identified using
-DW_AT_APPLE_property_name attribute. The instance variables with this
-attribute may not have data location attributes. The location of instance
-variables is determined by debugger only after consulting Objective C runtime.
-</p>
-
-<div class="doc_code">
-<pre>
- at interface I1 {
- int n2;
-}
-
- at property p1;
- at property p2;
- at end
-
- at implementation I1
- at synthesize p1;
- at synthesize p2 = n2;
- at end
-
-
-TAG_structure_type [7] *
- AT_APPLE_runtime_class( 0x10 )
- AT_name( "I1" )
- AT_decl_file( "Objc_Property.m" )
- AT_decl_line( 3 )
-
- TAG_member [8]
- AT_name( "p1" )
- AT_APPLE_property_name(âp1â)
- AT_type( {0x00000147} ( int ) )
-
- TAG_member [8]
- AT_name( "n2" )
- AT_APPLE_property_name(âp2â)
- AT_type( {0x00000147} ( int ) )
-</pre>
-</div>
-
-<p> Developers can decorate a property with attributes which are encoded using
-DW_AT_APPLE_property_attribute.
-</p>
-
-<div class="doc_code">
-<pre>
- at property (readonly, nonatomic) int pr;
-
-
-TAG_member [8]
- AT_name(âprâ)
- AT_APPLE_property_name(âprâ)
- AT_type ( {0x00000147} (int) )
- AT_APPLE_property_attribute (DW_APPLE_PROPERTY_readonly, DW_APPLE_PROPERTY_nonatomic)
-</pre>
-</div>
-
-<p> The setter and getter method names are attached to the property using
-DW_AT_APPLE_property_setter and DW_AT_APPLE_property_getter attributes.
-</p>
-<div class="doc_code">
-<pre>
- at interface I1
- at property (setter=myOwnP3Setter:) int p3;
--(void)myOwnP3Setter:(int)a;
- at end
-
- at implementation I1
- at synthesize p3;
--(void)myOwnP3Setter:(int)a{ }
- at end
-
-0x000003bd: TAG_structure_type [7] *
- AT_APPLE_runtime_class( 0x10 )
- AT_name( "I1" )
- AT_decl_file( "Objc_Property.m" )
- AT_decl_line( 3 )
-0x000003f3: TAG_member [8]
- AT_name( "p3" )
- AT_APPLE_property_name(âp3â)
- AT_APPLE_property_setter(âmyOwnP3Setter:â)
- AT_type( {0x00000147} ( int ) )
-</pre>
-</div>
-
-</div>
-
-<!-- *********************************************************************** -->
-<h2>
- <a name="newattributes">New DWARF Attributes</a>
-</h2>
-<!-- *********************************************************************** -->
-
-<div>
-<table border="1" cellspacing="0">
- <tr>
- <th width=200 >Attribute</th>
- <th width=200 >Value</th>
- <th width=200 >Classes</th>
- </tr>
- <tr>
- <td width=200 >DW_AT_APPLE_property_name</td>
- <td width=200 >0x3fe8</td>
- <td width=200 >String</td>
- </tr>
- <tr>
- <td width=200 >DW_AT_APPLE_property_getter</td>
- <td width=200 >0x3fe9</td>
- <td width=200 >String</td>
- </tr>
- <tr>
- <td width=200 >DW_AT_APPLE_property_setter</td>
- <td width=200 >0x3fea</td>
- <td width=200 >String</td>
- </tr>
- <tr>
- <td width=200 >DW_AT_APPLE_property_attribute</td>
- <td width=200 >0x3feb</td>
- <td width=200 >Constant</td>
- </tr>
-</table>
-
-</div>
-
-<!-- *********************************************************************** -->
-<h2>
- <a name="newconstants">New DWARF Constants</a>
-</h2>
-<!-- *********************************************************************** -->
-
-<div>
-<table border="1" cellspacing="0">
- <tr>
- <th width=200 >Name</th>
- <th width=200 >Value</th>
- </tr>
- <tr>
- <td width=200 >DW_AT_APPLE_PROPERTY_readonly</td>
- <td width=200 >0x1</td>
- </tr>
- <tr>
- <td width=200 >DW_AT_APPLE_PROPERTY_readwrite</td>
- <td width=200 >0x2</td>
- </tr>
- <tr>
- <td width=200 >DW_AT_APPLE_PROPERTY_assign</td>
- <td width=200 >0x4</td>
- </tr>
- <tr>
- <td width=200 >DW_AT_APPLE_PROPERTY_retain</td>
- <td width=200 >0x8</td>
- </tr>
- <tr>
- <td width=200 >DW_AT_APPLE_PROPERTY_copy</td>
- <td width=200 >0x10</td>
- </tr>
- <tr>
- <td width=200 >DW_AT_APPLE_PROPERTY_nonatomic</td>
- <td width=200 >0x20</td>
- </tr>
-</table>
-
-</div>
-
-<!-- *********************************************************************** -->
-
-<hr>
-<address>
- <a href="http://jigsaw.w3.org/css-validator/check/referer"><img
- src="http://jigsaw.w3.org/css-validator/images/vcss-blue" alt="Valid CSS"></a>
- <a href="http://validator.w3.org/check/referer"><img
- src="http://www.w3.org/Icons/valid-html401-blue" alt="Valid HTML 4.01"></a>
-
- <a href="http://llvm.org/">LLVM Compiler Infrastructure</a><br>
- Last modified: $Date: 2011-11-14 $
-</address>
-
-</body>
-</html>
Modified: llvm/trunk/docs/SourceLevelDebugging.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/SourceLevelDebugging.html?rev=144724&r1=144723&r2=144724&view=diff
==============================================================================
--- llvm/trunk/docs/SourceLevelDebugging.html (original)
+++ llvm/trunk/docs/SourceLevelDebugging.html Tue Nov 15 16:59:54 2011
@@ -53,6 +53,19 @@
<li><a href="#ccxx_composite_types">C/C++ struct/union types</a></li>
<li><a href="#ccxx_enumeration_types">C/C++ enumeration types</a></li>
</ol></li>
+ <li><a href="#llvmdwarfextension">LLVM Dwarf Extensions</a>
+ <ol>
+ <li><a href="#objcproperty">Debugging Information Extension
+ for Objective C Properties</a></li>
+ <ul>
+ <li><a href="#objcpropertyintroduction">Introduction</a></li>
+ <li><a href="#objcpropertyproposal">Proposal</a></li>
+ <li><a href="#objcpropertynewattributes">New DWARF Attributes</a></li>
+ <li><a href="#objcpropertynewconstants">New DWARF Constants</a></li>
+ </ul>
+
+ </ol>
+ </li>
</ul>
</td>
<td class="right">
@@ -1803,6 +1816,217 @@
</div>
+
+<!-- *********************************************************************** -->
+<h2>
+ <a name="llvmdwarfextension">Debugging information format</a>
+</h2>
+<!-- *********************************************************************** -->
+<div>
+<!-- ======================================================================= -->
+<h3>
+ <a name="objcproperty">Debugging Information Extension for Objective C
+Properties</a></li>
+</h3>
+<div>
+<!-- *********************************************************************** -->
+<h4>
+ <a name="objcpropertyintroduction">Introduction</a>
+</h4>
+<!-- *********************************************************************** -->
+
+<div>
+<p>Objective C provides a simpler way to declare and define accessor methods
+using declared properties. The language provides features to declare a
+property and to let compiler synthesize accessor methods.
+</p>
+
+<p>The debugger lets developer inspect Objective C interfaces and their
+instance variables and class variables. However, the debugger does not know
+anything about the properties defined in Objective C interfaces. The debugger
+consumes information generated by compiler in DWARF format. The format does
+not support encoding of Objective C properties. This proposal describes DWARF
+extensions to encode Objective C properties, which the debugger can use to let
+developers inspect Objective C properties.
+</p>
+
+</div>
+
+
+<!-- *********************************************************************** -->
+<h4>
+ <a name="objcpropertyproposal">Proposal</a>
+</h4>
+<!-- *********************************************************************** -->
+
+<div>
+<p>Objective C properties are always backed by an instance variable. The
+instance variables backing properties are identified using
+DW_AT_APPLE_property_name attribute. The instance variables with this
+attribute may not have data location attributes. The location of instance
+variables is determined by debugger only after consulting Objective C runtime.
+</p>
+
+<div class="doc_code">
+<pre>
+ at interface I1 {
+ int n2;
+}
+
+ at property p1;
+ at property p2;
+ at end
+
+ at implementation I1
+ at synthesize p1;
+ at synthesize p2 = n2;
+ at end
+
+
+TAG_structure_type [7] *
+ AT_APPLE_runtime_class( 0x10 )
+ AT_name( "I1" )
+ AT_decl_file( "Objc_Property.m" )
+ AT_decl_line( 3 )
+
+ TAG_member [8]
+ AT_name( "p1" )
+ AT_APPLE_property_name(âp1â)
+ AT_type( {0x00000147} ( int ) )
+
+ TAG_member [8]
+ AT_name( "n2" )
+ AT_APPLE_property_name(âp2â)
+ AT_type( {0x00000147} ( int ) )
+</pre>
+</div>
+
+<p> Developers can decorate a property with attributes which are encoded using
+DW_AT_APPLE_property_attribute.
+</p>
+
+<div class="doc_code">
+<pre>
+ at property (readonly, nonatomic) int pr;
+
+
+TAG_member [8]
+ AT_name(âprâ)
+ AT_APPLE_property_name(âprâ)
+ AT_type ( {0x00000147} (int) )
+ AT_APPLE_property_attribute (DW_APPLE_PROPERTY_readonly, DW_APPLE_PROPERTY_nonatomic)
+</pre>
+</div>
+
+<p> The setter and getter method names are attached to the property using
+DW_AT_APPLE_property_setter and DW_AT_APPLE_property_getter attributes.
+</p>
+<div class="doc_code">
+<pre>
+ at interface I1
+ at property (setter=myOwnP3Setter:) int p3;
+-(void)myOwnP3Setter:(int)a;
+ at end
+
+ at implementation I1
+ at synthesize p3;
+-(void)myOwnP3Setter:(int)a{ }
+ at end
+
+0x000003bd: TAG_structure_type [7] *
+ AT_APPLE_runtime_class( 0x10 )
+ AT_name( "I1" )
+ AT_decl_file( "Objc_Property.m" )
+ AT_decl_line( 3 )
+0x000003f3: TAG_member [8]
+ AT_name( "p3" )
+ AT_APPLE_property_name(âp3â)
+ AT_APPLE_property_setter(âmyOwnP3Setter:â)
+ AT_type( {0x00000147} ( int ) )
+</pre>
+</div>
+
+</div>
+
+<!-- *********************************************************************** -->
+<h4>
+ <a name="objcpropertynewattributes">New DWARF Attributes</a>
+</h4>
+<!-- *********************************************************************** -->
+
+<div>
+<table border="1" cellspacing="0">
+ <tr>
+ <th width=200 >Attribute</th>
+ <th width=200 >Value</th>
+ <th width=200 >Classes</th>
+ </tr>
+ <tr>
+ <td width=200 >DW_AT_APPLE_property_name</td>
+ <td width=200 >0x3fe8</td>
+ <td width=200 >String</td>
+ </tr>
+ <tr>
+ <td width=200 >DW_AT_APPLE_property_getter</td>
+ <td width=200 >0x3fe9</td>
+ <td width=200 >String</td>
+ </tr>
+ <tr>
+ <td width=200 >DW_AT_APPLE_property_setter</td>
+ <td width=200 >0x3fea</td>
+ <td width=200 >String</td>
+ </tr>
+ <tr>
+ <td width=200 >DW_AT_APPLE_property_attribute</td>
+ <td width=200 >0x3feb</td>
+ <td width=200 >Constant</td>
+ </tr>
+</table>
+
+</div>
+
+<!-- *********************************************************************** -->
+<h4>
+ <a name="objcpropertynewconstants">New DWARF Constants</a>
+</h4>
+<!-- *********************************************************************** -->
+
+<div>
+<table border="1" cellspacing="0">
+ <tr>
+ <th width=200 >Name</th>
+ <th width=200 >Value</th>
+ </tr>
+ <tr>
+ <td width=200 >DW_AT_APPLE_PROPERTY_readonly</td>
+ <td width=200 >0x1</td>
+ </tr>
+ <tr>
+ <td width=200 >DW_AT_APPLE_PROPERTY_readwrite</td>
+ <td width=200 >0x2</td>
+ </tr>
+ <tr>
+ <td width=200 >DW_AT_APPLE_PROPERTY_assign</td>
+ <td width=200 >0x4</td>
+ </tr>
+ <tr>
+ <td width=200 >DW_AT_APPLE_PROPERTY_retain</td>
+ <td width=200 >0x8</td>
+ </tr>
+ <tr>
+ <td width=200 >DW_AT_APPLE_PROPERTY_copy</td>
+ <td width=200 >0x10</td>
+ </tr>
+ <tr>
+ <td width=200 >DW_AT_APPLE_PROPERTY_nonatomic</td>
+ <td width=200 >0x20</td>
+ </tr>
+</table>
+
+</div>
+</div>
+</div>
+
<!-- *********************************************************************** -->
<hr>
Modified: llvm/trunk/docs/index.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/index.html?rev=144724&r1=144723&r2=144724&view=diff
==============================================================================
--- llvm/trunk/docs/index.html (original)
+++ llvm/trunk/docs/index.html Tue Nov 15 16:59:54 2011
@@ -212,9 +212,6 @@
<li><a href="BranchWeightMetadata.html">Branch Weight Metadata</a> - Provides
information about Branch Prediction Information.</li>
-<li><a href="ObjCPropertyDebugInfo.html">Objective C Property Debug Info</a>
-- Debugging information extension for Objective C Property.</li>
-
</ul>
<!--=======================================================================-->
More information about the llvm-commits
mailing list