mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 10:42:39 +01:00
IR: Make metadata typeless in assembly
Now that `Metadata` is typeless, reflect that in the assembly. These are the matching assembly changes for the metadata/value split in r223802. - Only use the `metadata` type when referencing metadata from a call intrinsic -- i.e., only when it's used as a `Value`. - Stop pretending that `ValueAsMetadata` is wrapped in an `MDNode` when referencing it from call intrinsics. So, assembly like this: define @foo(i32 %v) { call void @llvm.foo(metadata !{i32 %v}, metadata !0) call void @llvm.foo(metadata !{i32 7}, metadata !0) call void @llvm.foo(metadata !1, metadata !0) call void @llvm.foo(metadata !3, metadata !0) call void @llvm.foo(metadata !{metadata !3}, metadata !0) ret void, !bar !2 } !0 = metadata !{metadata !2} !1 = metadata !{i32* @global} !2 = metadata !{metadata !3} !3 = metadata !{} turns into this: define @foo(i32 %v) { call void @llvm.foo(metadata i32 %v, metadata !0) call void @llvm.foo(metadata i32 7, metadata !0) call void @llvm.foo(metadata i32* @global, metadata !0) call void @llvm.foo(metadata !3, metadata !0) call void @llvm.foo(metadata !{!3}, metadata !0) ret void, !bar !2 } !0 = !{!2} !1 = !{i32* @global} !2 = !{!3} !3 = !{} I wrote an upgrade script that handled almost all of the tests in llvm and many of the tests in cfe (even handling many `CHECK` lines). I've attached it (or will attach it in a moment if you're speedy) to PR21532 to help everyone update their out-of-tree testcases. This is part of PR21532. llvm-svn: 224257
This commit is contained in:
parent
dd56e9aa72
commit
9c5542c040
130
docs/LangRef.rst
130
docs/LangRef.rst
@ -170,7 +170,7 @@ symbol table entries. Here is an example of the "hello world" module:
|
||||
}
|
||||
|
||||
; Named metadata
|
||||
!0 = metadata !{i32 42, null, metadata !"string"}
|
||||
!0 = !{i32 42, null, !"string"}
|
||||
!foo = !{!0}
|
||||
|
||||
This example is made up of a :ref:`global variable <globalvars>` named
|
||||
@ -827,9 +827,9 @@ operands for a named metadata.
|
||||
Syntax::
|
||||
|
||||
; Some unnamed metadata nodes, which are referenced by the named metadata.
|
||||
!0 = metadata !{metadata !"zero"}
|
||||
!1 = metadata !{metadata !"one"}
|
||||
!2 = metadata !{metadata !"two"}
|
||||
!0 = !{!"zero"}
|
||||
!1 = !{!"one"}
|
||||
!2 = !{!"two"}
|
||||
; A named metadata.
|
||||
!name = !{!0, !1, !2}
|
||||
|
||||
@ -2330,11 +2330,11 @@ constants and smaller complex constants.
|
||||
having to print large zero initializers (e.g. for large arrays) and
|
||||
is always exactly equivalent to using explicit zero initializers.
|
||||
**Metadata node**
|
||||
A metadata node is a structure-like constant with :ref:`metadata
|
||||
type <t_metadata>`. For example:
|
||||
"``metadata !{ i32 0, metadata !"test" }``". Unlike other
|
||||
constants that are meant to be interpreted as part of the
|
||||
instruction stream, metadata is a place to attach additional
|
||||
A metadata node is a constant tuple without types. For example:
|
||||
"``!{!0, !{!2, !0}, !"test"}``". Metadata can reference constant values,
|
||||
for example: "``!{!0, i32 0, i8* @global, i64 (i64)* @function, !"str"}``".
|
||||
Unlike other typed constants that are meant to be interpreted as part of
|
||||
the instruction stream, metadata is a place to attach additional
|
||||
information such as debug info.
|
||||
|
||||
Global Variable and Function Addresses
|
||||
@ -2808,15 +2808,21 @@ occurs on.
|
||||
|
||||
.. _metadata:
|
||||
|
||||
Metadata Nodes and Metadata Strings
|
||||
-----------------------------------
|
||||
Metadata
|
||||
========
|
||||
|
||||
LLVM IR allows metadata to be attached to instructions in the program
|
||||
that can convey extra information about the code to the optimizers and
|
||||
code generator. One example application of metadata is source-level
|
||||
debug information. There are two metadata primitives: strings and nodes.
|
||||
All metadata has the ``metadata`` type and is identified in syntax by a
|
||||
preceding exclamation point ('``!``').
|
||||
|
||||
Metadata does not have a type, and is not a value. If referenced from a
|
||||
``call`` instruction, it uses the ``metadata`` type.
|
||||
|
||||
All metadata are identified in syntax by a exclamation point ('``!``').
|
||||
|
||||
Metadata Nodes and Metadata Strings
|
||||
-----------------------------------
|
||||
|
||||
A metadata string is a string surrounded by double quotes. It can
|
||||
contain any character by escaping non-printable characters with
|
||||
@ -2830,7 +2836,7 @@ their operand. For example:
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!{ metadata !"test\00", i32 10}
|
||||
!{ !"test\00", i32 10}
|
||||
|
||||
A :ref:`named metadata <namedmetadatastructure>` is a collection of
|
||||
metadata nodes, which can be looked up in the module symbol table. For
|
||||
@ -2838,7 +2844,7 @@ example:
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!foo = metadata !{!4, !3}
|
||||
!foo = !{!4, !3}
|
||||
|
||||
Metadata can be used as function arguments. Here ``llvm.dbg.value``
|
||||
function is using two metadata arguments:
|
||||
@ -2871,10 +2877,10 @@ to three fields, e.g.:
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!0 = metadata !{ metadata !"an example type tree" }
|
||||
!1 = metadata !{ metadata !"int", metadata !0 }
|
||||
!2 = metadata !{ metadata !"float", metadata !0 }
|
||||
!3 = metadata !{ metadata !"const float", metadata !2, i64 1 }
|
||||
!0 = !{ !"an example type tree" }
|
||||
!1 = !{ !"int", !0 }
|
||||
!2 = !{ !"float", !0 }
|
||||
!3 = !{ !"const float", !2, i64 1 }
|
||||
|
||||
The first field is an identity field. It can be any value, usually a
|
||||
metadata string, which uniquely identifies the type. The most important
|
||||
@ -2914,7 +2920,7 @@ its tbaa tag. e.g.:
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!4 = metadata !{ i64 0, i64 4, metadata !1, i64 8, i64 4, metadata !2 }
|
||||
!4 = !{ i64 0, i64 4, !1, i64 8, i64 4, !2 }
|
||||
|
||||
This describes a struct with two fields. The first is at offset 0 bytes
|
||||
with size 4 bytes, and has tbaa tag !1. The second is at offset 8 bytes
|
||||
@ -2957,18 +2963,18 @@ For example,
|
||||
.. code-block:: llvm
|
||||
|
||||
; Two scope domains:
|
||||
!0 = metadata !{metadata !0}
|
||||
!1 = metadata !{metadata !1}
|
||||
!0 = !{!0}
|
||||
!1 = !{!1}
|
||||
|
||||
; Some scopes in these domains:
|
||||
!2 = metadata !{metadata !2, metadata !0}
|
||||
!3 = metadata !{metadata !3, metadata !0}
|
||||
!4 = metadata !{metadata !4, metadata !1}
|
||||
!2 = !{!2, !0}
|
||||
!3 = !{!3, !0}
|
||||
!4 = !{!4, !1}
|
||||
|
||||
; Some scope lists:
|
||||
!5 = metadata !{metadata !4} ; A list containing only scope !4
|
||||
!6 = metadata !{metadata !4, metadata !3, metadata !2}
|
||||
!7 = metadata !{metadata !3}
|
||||
!5 = !{!4} ; A list containing only scope !4
|
||||
!6 = !{!4, !3, !2}
|
||||
!7 = !{!3}
|
||||
|
||||
; These two instructions don't alias:
|
||||
%0 = load float* %c, align 4, !alias.scope !5
|
||||
@ -3005,7 +3011,7 @@ number representing the maximum relative error, for example:
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!0 = metadata !{ float 2.5 } ; maximum acceptable inaccuracy is 2.5 ULPs
|
||||
!0 = !{ float 2.5 } ; maximum acceptable inaccuracy is 2.5 ULPs
|
||||
|
||||
'``range``' Metadata
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
@ -3037,10 +3043,10 @@ Examples:
|
||||
%d = invoke i8 @bar() to label %cont
|
||||
unwind label %lpad, !range !3 ; Can only be -2, -1, 3, 4 or 5
|
||||
...
|
||||
!0 = metadata !{ i8 0, i8 2 }
|
||||
!1 = metadata !{ i8 255, i8 2 }
|
||||
!2 = metadata !{ i8 0, i8 2, i8 3, i8 6 }
|
||||
!3 = metadata !{ i8 -2, i8 0, i8 3, i8 6 }
|
||||
!0 = !{ i8 0, i8 2 }
|
||||
!1 = !{ i8 255, i8 2 }
|
||||
!2 = !{ i8 0, i8 2, i8 3, i8 6 }
|
||||
!3 = !{ i8 -2, i8 0, i8 3, i8 6 }
|
||||
|
||||
'``llvm.loop``'
|
||||
^^^^^^^^^^^^^^^
|
||||
@ -3060,8 +3066,8 @@ constructs:
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!0 = metadata !{ metadata !0 }
|
||||
!1 = metadata !{ metadata !1 }
|
||||
!0 = !{!0}
|
||||
!1 = !{!1}
|
||||
|
||||
The loop identifier metadata can be used to specify additional
|
||||
per-loop metadata. Any operands after the first operand can be treated
|
||||
@ -3072,8 +3078,8 @@ suggests an unroll factor to the loop unroller:
|
||||
|
||||
br i1 %exitcond, label %._crit_edge, label %.lr.ph, !llvm.loop !0
|
||||
...
|
||||
!0 = metadata !{ metadata !0, metadata !1 }
|
||||
!1 = metadata !{ metadata !"llvm.loop.unroll.count", i32 4 }
|
||||
!0 = !{!0, !1}
|
||||
!1 = !{!"llvm.loop.unroll.count", i32 4}
|
||||
|
||||
'``llvm.loop.vectorize``' and '``llvm.loop.interleave``'
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
@ -3098,7 +3104,7 @@ example:
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!0 = metadata !{ metadata !"llvm.loop.interleave.count", i32 4 }
|
||||
!0 = !{!"llvm.loop.interleave.count", i32 4}
|
||||
|
||||
Note that setting ``llvm.loop.interleave.count`` to 1 disables interleaving
|
||||
multiple iterations of the loop. If ``llvm.loop.interleave.count`` is set to 0
|
||||
@ -3114,8 +3120,8 @@ is a bit. If the bit operand value is 1 vectorization is enabled. A value of
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!0 = metadata !{ metadata !"llvm.loop.vectorize.enable", i1 0 }
|
||||
!1 = metadata !{ metadata !"llvm.loop.vectorize.enable", i1 1 }
|
||||
!0 = !{!"llvm.loop.vectorize.enable", i1 0}
|
||||
!1 = !{!"llvm.loop.vectorize.enable", i1 1}
|
||||
|
||||
'``llvm.loop.vectorize.width``' Metadata
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
@ -3126,7 +3132,7 @@ operand is an integer specifying the width. For example:
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!0 = metadata !{ metadata !"llvm.loop.vectorize.width", i32 4 }
|
||||
!0 = !{!"llvm.loop.vectorize.width", i32 4}
|
||||
|
||||
Note that setting ``llvm.loop.vectorize.width`` to 1 disables
|
||||
vectorization of the loop. If ``llvm.loop.vectorize.width`` is set to
|
||||
@ -3153,7 +3159,7 @@ example:
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!0 = metadata !{ metadata !"llvm.loop.unroll.count", i32 4 }
|
||||
!0 = !{!"llvm.loop.unroll.count", i32 4}
|
||||
|
||||
If the trip count of the loop is less than the unroll count the loop
|
||||
will be partially unrolled.
|
||||
@ -3166,7 +3172,7 @@ which is the string ``llvm.loop.unroll.disable``. For example:
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!0 = metadata !{ metadata !"llvm.loop.unroll.disable" }
|
||||
!0 = !{!"llvm.loop.unroll.disable"}
|
||||
|
||||
'``llvm.loop.unroll.full``' Metadata
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
@ -3177,7 +3183,7 @@ For example:
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!0 = metadata !{ metadata !"llvm.loop.unroll.full" }
|
||||
!0 = !{!"llvm.loop.unroll.full"}
|
||||
|
||||
'``llvm.mem``'
|
||||
^^^^^^^^^^^^^^^
|
||||
@ -3228,7 +3234,7 @@ metadata types that refer to the same loop identifier metadata.
|
||||
|
||||
for.end:
|
||||
...
|
||||
!0 = metadata !{ metadata !0 }
|
||||
!0 = !{!0}
|
||||
|
||||
It is also possible to have nested parallel loops. In that case the
|
||||
memory accesses refer to a list of loop identifier metadata nodes instead of
|
||||
@ -3258,9 +3264,9 @@ the loop identifier metadata node directly:
|
||||
|
||||
outer.for.end: ; preds = %for.body
|
||||
...
|
||||
!0 = metadata !{ metadata !1, metadata !2 } ; a list of loop identifiers
|
||||
!1 = metadata !{ metadata !1 } ; an identifier for the inner loop
|
||||
!2 = metadata !{ metadata !2 } ; an identifier for the outer loop
|
||||
!0 = !{!1, !2} ; a list of loop identifiers
|
||||
!1 = !{!1} ; an identifier for the inner loop
|
||||
!2 = !{!2} ; an identifier for the outer loop
|
||||
|
||||
Module Flags Metadata
|
||||
=====================
|
||||
@ -3344,12 +3350,12 @@ An example of module flags:
|
||||
|
||||
.. code-block:: llvm
|
||||
|
||||
!0 = metadata !{ i32 1, metadata !"foo", i32 1 }
|
||||
!1 = metadata !{ i32 4, metadata !"bar", i32 37 }
|
||||
!2 = metadata !{ i32 2, metadata !"qux", i32 42 }
|
||||
!3 = metadata !{ i32 3, metadata !"qux",
|
||||
metadata !{
|
||||
metadata !"foo", i32 1
|
||||
!0 = !{ i32 1, !"foo", i32 1 }
|
||||
!1 = !{ i32 4, !"bar", i32 37 }
|
||||
!2 = !{ i32 2, !"qux", i32 42 }
|
||||
!3 = !{ i32 3, !"qux",
|
||||
!{
|
||||
!"foo", i32 1
|
||||
}
|
||||
}
|
||||
!llvm.module.flags = !{ !0, !1, !2, !3 }
|
||||
@ -3370,7 +3376,7 @@ An example of module flags:
|
||||
|
||||
::
|
||||
|
||||
metadata !{ metadata !"foo", i32 1 }
|
||||
!{ !"foo", i32 1 }
|
||||
|
||||
The behavior is to emit an error if the ``llvm.module.flags`` does not
|
||||
contain a flag with the ID ``!"foo"`` that has the value '1' after linking is
|
||||
@ -3446,10 +3452,10 @@ For example, the following metadata section specifies two separate sets of
|
||||
linker options, presumably to link against ``libz`` and the ``Cocoa``
|
||||
framework::
|
||||
|
||||
!0 = metadata !{ i32 6, metadata !"Linker Options",
|
||||
metadata !{
|
||||
metadata !{ metadata !"-lz" },
|
||||
metadata !{ metadata !"-framework", metadata !"Cocoa" } } }
|
||||
!0 = !{ i32 6, !"Linker Options",
|
||||
!{
|
||||
!{ !"-lz" },
|
||||
!{ !"-framework", !"Cocoa" } } }
|
||||
!llvm.module.flags = !{ !0 }
|
||||
|
||||
The metadata encoding as lists of lists of options, as opposed to a collapsed
|
||||
@ -3495,8 +3501,8 @@ compiled with a ``wchar_t`` width of 4 bytes, and the underlying type of an
|
||||
enum is the smallest type which can represent all of its values::
|
||||
|
||||
!llvm.module.flags = !{!0, !1}
|
||||
!0 = metadata !{i32 1, metadata !"short_wchar", i32 1}
|
||||
!1 = metadata !{i32 1, metadata !"short_enum", i32 0}
|
||||
!0 = !{i32 1, !"short_wchar", i32 1}
|
||||
!1 = !{i32 1, !"short_enum", i32 0}
|
||||
|
||||
.. _intrinsicglobalvariables:
|
||||
|
||||
@ -7270,7 +7276,7 @@ Syntax:
|
||||
declare i64 @llvm.read_register.i64(metadata)
|
||||
declare void @llvm.write_register.i32(metadata, i32 @value)
|
||||
declare void @llvm.write_register.i64(metadata, i64 @value)
|
||||
!0 = metadata !{metadata !"sp\00"}
|
||||
!0 = !{!"sp\00"}
|
||||
|
||||
Overview:
|
||||
"""""""""
|
||||
|
@ -609,13 +609,16 @@ bool LLParser::ParseStandaloneMetadata() {
|
||||
Lex.Lex();
|
||||
unsigned MetadataID = 0;
|
||||
|
||||
LocTy TyLoc;
|
||||
Type *Ty = nullptr;
|
||||
MDNode *Init;
|
||||
if (ParseUInt32(MetadataID) ||
|
||||
ParseToken(lltok::equal, "expected '=' here") ||
|
||||
ParseType(Ty, TyLoc) ||
|
||||
ParseToken(lltok::exclaim, "Expected '!' here") ||
|
||||
ParseToken(lltok::equal, "expected '=' here"))
|
||||
return true;
|
||||
|
||||
// Detect common error, from old metadata syntax.
|
||||
if (Lex.getKind() == lltok::Type)
|
||||
return TokError("unexpected type in metadata definition");
|
||||
|
||||
if (ParseToken(lltok::exclaim, "Expected '!' here") ||
|
||||
ParseMDNode(Init))
|
||||
return true;
|
||||
|
||||
@ -1705,11 +1708,11 @@ bool LLParser::ParseIndexList(SmallVectorImpl<unsigned> &Indices,
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
/// ParseType - Parse a type.
|
||||
bool LLParser::ParseType(Type *&Result, bool AllowVoid) {
|
||||
bool LLParser::ParseType(Type *&Result, const Twine &Msg, bool AllowVoid) {
|
||||
SMLoc TypeLoc = Lex.getLoc();
|
||||
switch (Lex.getKind()) {
|
||||
default:
|
||||
return TokError("expected type");
|
||||
return TokError(Msg);
|
||||
case lltok::Type:
|
||||
// Type ::= 'float' | 'void' (etc)
|
||||
Result = Lex.getTyVal();
|
||||
@ -1853,9 +1856,14 @@ bool LLParser::ParseParameterList(SmallVectorImpl<ParamInfo> &ArgList,
|
||||
if (ParseType(ArgTy, ArgLoc))
|
||||
return true;
|
||||
|
||||
// Otherwise, handle normal operands.
|
||||
if (ParseOptionalParamAttrs(ArgAttrs) || ParseValue(ArgTy, V, PFS))
|
||||
return true;
|
||||
if (ArgTy->isMetadataTy()) {
|
||||
if (ParseMetadataAsValue(V, PFS))
|
||||
return true;
|
||||
} else {
|
||||
// Otherwise, handle normal operands.
|
||||
if (ParseOptionalParamAttrs(ArgAttrs) || ParseValue(ArgTy, V, PFS))
|
||||
return true;
|
||||
}
|
||||
ArgList.push_back(ParamInfo(ArgLoc, V, AttributeSet::get(V->getContext(),
|
||||
AttrIndex++,
|
||||
ArgAttrs)));
|
||||
@ -2388,8 +2396,6 @@ bool LLParser::ParseValID(ValID &ID, PerFunctionState *PFS) {
|
||||
ID.StrVal = Lex.getStrVal();
|
||||
ID.Kind = ValID::t_LocalName;
|
||||
break;
|
||||
case lltok::exclaim: // !42, !{...}, or !"foo"
|
||||
return ParseMetadataAsValue(ID, PFS);
|
||||
case lltok::APSInt:
|
||||
ID.APSIntVal = Lex.getAPSIntVal();
|
||||
ID.Kind = ValID::t_APSInt;
|
||||
@ -2931,50 +2937,76 @@ bool LLParser::ParseGlobalValueVector(SmallVectorImpl<Constant *> &Elts) {
|
||||
|
||||
bool LLParser::ParseMDNode(MDNode *&MD) {
|
||||
SmallVector<Metadata *, 16> Elts;
|
||||
if (ParseMDNodeVector(Elts, nullptr))
|
||||
if (ParseMDNodeVector(Elts))
|
||||
return true;
|
||||
|
||||
MD = MDNode::get(Context, Elts);
|
||||
return false;
|
||||
}
|
||||
|
||||
bool LLParser::ParseMDNodeOrLocal(Metadata *&MD, PerFunctionState *PFS) {
|
||||
SmallVector<Metadata *, 16> Elts;
|
||||
if (ParseMDNodeVector(Elts, PFS))
|
||||
return true;
|
||||
|
||||
// Check for function-local metadata masquerading as an MDNode.
|
||||
if (PFS && Elts.size() == 1 && Elts[0] && isa<LocalAsMetadata>(Elts[0])) {
|
||||
MD = Elts[0];
|
||||
return false;
|
||||
}
|
||||
|
||||
MD = MDNode::get(Context, Elts);
|
||||
return false;
|
||||
}
|
||||
|
||||
bool LLParser::ParseMetadataAsValue(ValID &ID, PerFunctionState *PFS) {
|
||||
/// ParseMetadataAsValue
|
||||
/// ::= metadata i32 %local
|
||||
/// ::= metadata i32 @global
|
||||
/// ::= metadata i32 7
|
||||
/// ::= metadata !0
|
||||
/// ::= metadata !{...}
|
||||
/// ::= metadata !"string"
|
||||
bool LLParser::ParseMetadataAsValue(Value *&V, PerFunctionState &PFS) {
|
||||
// Note: the type 'metadata' has already been parsed.
|
||||
Metadata *MD;
|
||||
if (ParseMetadata(MD, PFS))
|
||||
if (ParseMetadata(MD, &PFS))
|
||||
return true;
|
||||
|
||||
ID.Kind = ValID::t_Metadata;
|
||||
ID.MetadataVal = MetadataAsValue::get(Context, MD);
|
||||
V = MetadataAsValue::get(Context, MD);
|
||||
return false;
|
||||
}
|
||||
|
||||
/// ParseValueAsMetadata
|
||||
/// ::= i32 %local
|
||||
/// ::= i32 @global
|
||||
/// ::= i32 7
|
||||
bool LLParser::ParseValueAsMetadata(Metadata *&MD, PerFunctionState *PFS) {
|
||||
Type *Ty;
|
||||
LocTy Loc;
|
||||
if (ParseType(Ty, "expected metadata operand", Loc))
|
||||
return true;
|
||||
if (Ty->isMetadataTy())
|
||||
return Error(Loc, "invalid metadata-value-metadata roundtrip");
|
||||
|
||||
Value *V;
|
||||
if (ParseValue(Ty, V, PFS))
|
||||
return true;
|
||||
|
||||
MD = ValueAsMetadata::get(V);
|
||||
return false;
|
||||
}
|
||||
|
||||
/// ParseMetadata
|
||||
/// ::= i32 %local
|
||||
/// ::= i32 @global
|
||||
/// ::= i32 7
|
||||
/// ::= !42
|
||||
/// ::= !{...}
|
||||
/// ::= !"string"
|
||||
bool LLParser::ParseMetadata(Metadata *&MD, PerFunctionState *PFS) {
|
||||
if (ParseToken(lltok::exclaim, "expected '!' here"))
|
||||
return true;
|
||||
// ValueAsMetadata:
|
||||
// <type> <value>
|
||||
if (Lex.getKind() != lltok::exclaim)
|
||||
return ParseValueAsMetadata(MD, PFS);
|
||||
|
||||
// '!'.
|
||||
assert(Lex.getKind() == lltok::exclaim && "Expected '!' here");
|
||||
Lex.Lex();
|
||||
|
||||
// MDNode:
|
||||
// !{ ... }
|
||||
if (Lex.getKind() == lltok::lbrace)
|
||||
return ParseMDNodeOrLocal(MD, PFS);
|
||||
if (Lex.getKind() == lltok::lbrace) {
|
||||
MDNode *N;
|
||||
if (ParseMDNode(N))
|
||||
return true;
|
||||
MD = N;
|
||||
return false;
|
||||
}
|
||||
|
||||
// Standalone metadata reference
|
||||
// !42
|
||||
@ -3024,11 +3056,6 @@ bool LLParser::ConvertValIDToValue(Type *Ty, ValID &ID, Value *&V,
|
||||
(ID.UIntVal>>1)&1, (InlineAsm::AsmDialect(ID.UIntVal>>2)));
|
||||
return false;
|
||||
}
|
||||
case ValID::t_Metadata:
|
||||
if (!Ty->isMetadataTy())
|
||||
return Error(ID.Loc, "metadata value must have metadata type");
|
||||
V = ID.MetadataVal;
|
||||
return false;
|
||||
case ValID::t_GlobalName:
|
||||
V = GetGlobalVal(ID.StrVal, Ty, ID.Loc);
|
||||
return V == nullptr;
|
||||
@ -4684,8 +4711,7 @@ int LLParser::ParseInsertValue(Instruction *&Inst, PerFunctionState &PFS) {
|
||||
/// ::= { Element (',' Element)* }
|
||||
/// Element
|
||||
/// ::= 'null' | TypeAndValue
|
||||
bool LLParser::ParseMDNodeVector(SmallVectorImpl<Metadata *> &Elts,
|
||||
PerFunctionState *PFS) {
|
||||
bool LLParser::ParseMDNodeVector(SmallVectorImpl<Metadata *> &Elts) {
|
||||
if (ParseToken(lltok::lbrace, "expected '{' here"))
|
||||
return true;
|
||||
|
||||
@ -4693,42 +4719,17 @@ bool LLParser::ParseMDNodeVector(SmallVectorImpl<Metadata *> &Elts,
|
||||
if (EatIfPresent(lltok::rbrace))
|
||||
return false;
|
||||
|
||||
bool IsLocal = false;
|
||||
do {
|
||||
if (IsLocal)
|
||||
return TokError("unexpected operand after function-local metadata");
|
||||
|
||||
// Null is a special case since it is typeless.
|
||||
if (EatIfPresent(lltok::kw_null)) {
|
||||
Elts.push_back(nullptr);
|
||||
continue;
|
||||
}
|
||||
|
||||
Type *Ty = nullptr;
|
||||
if (ParseType(Ty))
|
||||
Metadata *MD;
|
||||
if (ParseMetadata(MD, nullptr))
|
||||
return true;
|
||||
|
||||
if (Ty->isMetadataTy()) {
|
||||
// No function-local metadata here.
|
||||
Metadata *MD = nullptr;
|
||||
if (ParseMetadata(MD, nullptr))
|
||||
return true;
|
||||
Elts.push_back(MD);
|
||||
continue;
|
||||
}
|
||||
|
||||
Value *V = nullptr;
|
||||
if (ParseValue(Ty, V, PFS))
|
||||
return true;
|
||||
assert(V && "Expected valid value");
|
||||
Elts.push_back(ValueAsMetadata::get(V));
|
||||
|
||||
if (isa<LocalAsMetadata>(Elts.back())) {
|
||||
assert(PFS && "Unexpected function-local metadata without PFS");
|
||||
if (Elts.size() > 1)
|
||||
return TokError("unexpected function-local metadata");
|
||||
IsLocal = true;
|
||||
}
|
||||
Elts.push_back(MD);
|
||||
} while (EatIfPresent(lltok::comma));
|
||||
|
||||
return ParseToken(lltok::rbrace, "expected end of metadata node");
|
||||
|
@ -52,7 +52,6 @@ namespace llvm {
|
||||
t_EmptyArray, // No value: []
|
||||
t_Constant, // Value in ConstantVal.
|
||||
t_InlineAsm, // Value in StrVal/StrVal2/UIntVal.
|
||||
t_Metadata, // Value in MetadataVal.
|
||||
t_ConstantStruct, // Value in ConstantStructElts.
|
||||
t_PackedConstantStruct // Value in ConstantStructElts.
|
||||
} Kind;
|
||||
@ -63,7 +62,6 @@ namespace llvm {
|
||||
APSInt APSIntVal;
|
||||
APFloat APFloatVal;
|
||||
Constant *ConstantVal;
|
||||
MetadataAsValue *MetadataVal;
|
||||
Constant **ConstantStructElts;
|
||||
|
||||
ValID() : Kind(t_LocalID), APFloatVal(0.0) {}
|
||||
@ -275,7 +273,15 @@ namespace llvm {
|
||||
bool inAttrGrp, LocTy &BuiltinLoc);
|
||||
|
||||
// Type Parsing.
|
||||
bool ParseType(Type *&Result, bool AllowVoid = false);
|
||||
bool ParseType(Type *&Result, const Twine &Msg, bool AllowVoid = false);
|
||||
bool ParseType(Type *&Result, bool AllowVoid = false) {
|
||||
return ParseType(Result, "expected type", AllowVoid);
|
||||
}
|
||||
bool ParseType(Type *&Result, const Twine &Msg, LocTy &Loc,
|
||||
bool AllowVoid = false) {
|
||||
Loc = Lex.getLoc();
|
||||
return ParseType(Result, Msg, AllowVoid);
|
||||
}
|
||||
bool ParseType(Type *&Result, LocTy &Loc, bool AllowVoid = false) {
|
||||
Loc = Lex.getLoc();
|
||||
return ParseType(Result, AllowVoid);
|
||||
@ -380,12 +386,11 @@ namespace llvm {
|
||||
bool ParseGlobalTypeAndValue(Constant *&V);
|
||||
bool ParseGlobalValueVector(SmallVectorImpl<Constant *> &Elts);
|
||||
bool parseOptionalComdat(Comdat *&C);
|
||||
bool ParseMetadataAsValue(ValID &ID, PerFunctionState *PFS);
|
||||
bool ParseMetadataAsValue(Value *&V, PerFunctionState &PFS);
|
||||
bool ParseValueAsMetadata(Metadata *&MD, PerFunctionState *PFS);
|
||||
bool ParseMetadata(Metadata *&MD, PerFunctionState *PFS);
|
||||
bool ParseMDNode(MDNode *&MD);
|
||||
bool ParseMDNodeOrLocal(Metadata *&MD, PerFunctionState *PFS);
|
||||
bool ParseMDNodeVector(SmallVectorImpl<Metadata *> &,
|
||||
PerFunctionState *PFS);
|
||||
bool ParseMDNodeVector(SmallVectorImpl<Metadata *> &MDs);
|
||||
bool ParseInstructionMetadata(Instruction *Inst, PerFunctionState *PFS);
|
||||
|
||||
// Function Parsing.
|
||||
|
@ -1264,7 +1264,6 @@ static void WriteMDNodeBodyInternal(raw_ostream &Out, const MDNode *Node,
|
||||
Out << ' ';
|
||||
WriteAsOperandInternal(Out, V, TypePrinter, Machine, Context);
|
||||
} else {
|
||||
Out << "metadata ";
|
||||
WriteAsOperandInternal(Out, MD, TypePrinter, Machine, Context);
|
||||
}
|
||||
if (mi + 1 != me)
|
||||
@ -1381,13 +1380,9 @@ static void WriteAsOperandInternal(raw_ostream &Out, const Metadata *MD,
|
||||
assert((FromValue || !isa<LocalAsMetadata>(V)) &&
|
||||
"Unexpected function-local metadata outside of value argument");
|
||||
|
||||
if (FromValue)
|
||||
Out << "!{";
|
||||
TypePrinter->print(V->getValue()->getType(), Out);
|
||||
Out << ' ';
|
||||
WriteAsOperandInternal(Out, V->getValue(), TypePrinter, Machine, Context);
|
||||
if (FromValue)
|
||||
Out << "}";
|
||||
}
|
||||
|
||||
void AssemblyWriter::init() {
|
||||
@ -2378,7 +2373,7 @@ static void WriteMDNodeComment(const MDNode *Node,
|
||||
}
|
||||
|
||||
void AssemblyWriter::writeMDNode(unsigned Slot, const MDNode *Node) {
|
||||
Out << '!' << Slot << " = metadata ";
|
||||
Out << '!' << Slot << " = ";
|
||||
printMDNodeBody(Node);
|
||||
}
|
||||
|
||||
|
@ -29,9 +29,9 @@ entry:
|
||||
ret i32 %tmp5.lobit
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !4, metadata !4, i64 0}
|
||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
||||
!2 = metadata !{metadata !"Simple C/C++ TBAA", null}
|
||||
!3 = metadata !{metadata !5, metadata !5, i64 0}
|
||||
!4 = metadata !{metadata !"double", metadata !1}
|
||||
!5 = metadata !{metadata !"int", metadata !1}
|
||||
!0 = !{!4, !4, i64 0}
|
||||
!1 = !{!"omnipotent char", !2}
|
||||
!2 = !{!"Simple C/C++ TBAA", null}
|
||||
!3 = !{!5, !5, i64 0}
|
||||
!4 = !{!"double", !1}
|
||||
!5 = !{!"int", !1}
|
||||
|
@ -23,4 +23,4 @@ entry:
|
||||
; CHECK: %add = add nsw i32 %0, 1
|
||||
}
|
||||
|
||||
!3 = metadata !{}
|
||||
!3 = !{}
|
||||
|
@ -23,7 +23,7 @@ for.end:
|
||||
ret void
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !"branch_weights", i32 0, i32 3}
|
||||
!0 = !{!"branch_weights", i32 0, i32 3}
|
||||
|
||||
; CHECK-LABEL: Printing analysis {{.*}} for function 'infinite_loop'
|
||||
; CHECK-NEXT: block-frequency-info: infinite_loop
|
||||
@ -47,4 +47,4 @@ for.end:
|
||||
ret void
|
||||
}
|
||||
|
||||
!1 = metadata !{metadata !"branch_weights", i32 1, i32 1}
|
||||
!1 = !{!"branch_weights", i32 1, i32 1}
|
||||
|
@ -47,7 +47,7 @@ exit:
|
||||
ret i32 %result
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !"branch_weights", i32 64, i32 4}
|
||||
!0 = !{!"branch_weights", i32 64, i32 4}
|
||||
|
||||
define i32 @test3(i32 %i, i32 %a, i32 %b, i32 %c, i32 %d, i32 %e) {
|
||||
; CHECK-LABEL: Printing analysis {{.*}} for function 'test3':
|
||||
@ -90,7 +90,7 @@ exit:
|
||||
ret i32 %result
|
||||
}
|
||||
|
||||
!1 = metadata !{metadata !"branch_weights", i32 4, i32 4, i32 64, i32 4, i32 4}
|
||||
!1 = !{!"branch_weights", i32 4, i32 4, i32 64, i32 4, i32 4}
|
||||
|
||||
define void @nested_loops(i32 %a) {
|
||||
; CHECK-LABEL: Printing analysis {{.*}} for function 'nested_loops':
|
||||
@ -138,4 +138,4 @@ for.end13:
|
||||
|
||||
declare void @g(i32)
|
||||
|
||||
!2 = metadata !{metadata !"branch_weights", i32 1, i32 4000}
|
||||
!2 = !{!"branch_weights", i32 1, i32 4000}
|
||||
|
@ -23,5 +23,5 @@ exit:
|
||||
; CHECK-NEXT: exit: float = 1.0, int = [[ENTRY]]
|
||||
ret void
|
||||
}
|
||||
!0 = metadata !{metadata !"branch_weights", i32 1, i32 9}
|
||||
!1 = metadata !{metadata !"branch_weights", i32 4, i32 5}
|
||||
!0 = !{!"branch_weights", i32 1, i32 9}
|
||||
!1 = !{!"branch_weights", i32 4, i32 5}
|
||||
|
@ -66,9 +66,9 @@ exit:
|
||||
ret i32 %Return.2
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !"branch_weights", i32 1, i32 3}
|
||||
!1 = metadata !{metadata !"branch_weights", i32 4, i32 1}
|
||||
!2 = metadata !{metadata !"branch_weights", i32 2, i32 1}
|
||||
!0 = !{!"branch_weights", i32 1, i32 3}
|
||||
!1 = !{!"branch_weights", i32 4, i32 1}
|
||||
!2 = !{!"branch_weights", i32 2, i32 1}
|
||||
|
||||
declare i32 @c2(i32, i32)
|
||||
declare i32 @logic2(i32, i32, i32)
|
||||
@ -159,7 +159,7 @@ exit:
|
||||
ret i32 %Return.0
|
||||
}
|
||||
|
||||
!3 = metadata !{metadata !"branch_weights", i32 1, i32 1}
|
||||
!3 = !{!"branch_weights", i32 1, i32 1}
|
||||
|
||||
declare i32 @c3(i32, i32, i32)
|
||||
declare i32 @logic3(i32, i32, i32, i32)
|
||||
|
@ -37,4 +37,4 @@ exit:
|
||||
|
||||
declare i1 @foo()
|
||||
|
||||
!0 = metadata !{metadata !"branch_weights", i32 4294967295, i32 1}
|
||||
!0 = !{!"branch_weights", i32 4294967295, i32 1}
|
||||
|
@ -31,8 +31,8 @@ return:
|
||||
ret void
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !"branch_weights", i32 1, i32 7}
|
||||
!1 = metadata !{metadata !"branch_weights", i32 3, i32 4}
|
||||
!0 = !{!"branch_weights", i32 1, i32 7}
|
||||
!1 = !{!"branch_weights", i32 3, i32 4}
|
||||
|
||||
; Irreducible control flow
|
||||
; ========================
|
||||
@ -112,7 +112,7 @@ exit:
|
||||
ret void
|
||||
}
|
||||
|
||||
!2 = metadata !{metadata !"branch_weights", i32 3, i32 1}
|
||||
!2 = !{!"branch_weights", i32 3, i32 1}
|
||||
|
||||
; Testcase #2
|
||||
; ===========
|
||||
@ -156,7 +156,7 @@ exit:
|
||||
ret void
|
||||
}
|
||||
|
||||
!3 = metadata !{metadata !"branch_weights", i32 2, i32 2, i32 2}
|
||||
!3 = !{!"branch_weights", i32 2, i32 2, i32 2}
|
||||
|
||||
; A true loop with irreducible control flow inside.
|
||||
define void @loop_around_irreducible(i1 %x) {
|
||||
@ -186,8 +186,8 @@ exit:
|
||||
; CHECK-NEXT: exit: float = 1.0, int = [[ENTRY]]
|
||||
ret void
|
||||
}
|
||||
!4 = metadata !{metadata !"branch_weights", i32 1, i32 1}
|
||||
!5 = metadata !{metadata !"branch_weights", i32 3, i32 1}
|
||||
!4 = !{!"branch_weights", i32 1, i32 1}
|
||||
!5 = !{!"branch_weights", i32 3, i32 1}
|
||||
|
||||
; Two unrelated irreducible SCCs.
|
||||
define void @two_sccs(i1 %x) {
|
||||
@ -225,9 +225,9 @@ exit:
|
||||
; CHECK-NEXT: exit: float = 1.0, int = [[ENTRY]]
|
||||
ret void
|
||||
}
|
||||
!6 = metadata !{metadata !"branch_weights", i32 3, i32 1}
|
||||
!7 = metadata !{metadata !"branch_weights", i32 1, i32 1}
|
||||
!8 = metadata !{metadata !"branch_weights", i32 4, i32 1}
|
||||
!6 = !{!"branch_weights", i32 3, i32 1}
|
||||
!7 = !{!"branch_weights", i32 1, i32 1}
|
||||
!8 = !{!"branch_weights", i32 4, i32 1}
|
||||
|
||||
; A true loop inside irreducible control flow.
|
||||
define void @loop_inside_irreducible(i1 %x) {
|
||||
@ -257,9 +257,9 @@ exit:
|
||||
; CHECK-NEXT: exit: float = 1.0, int = [[ENTRY]]
|
||||
ret void
|
||||
}
|
||||
!9 = metadata !{metadata !"branch_weights", i32 1, i32 1}
|
||||
!10 = metadata !{metadata !"branch_weights", i32 3, i32 1}
|
||||
!11 = metadata !{metadata !"branch_weights", i32 2, i32 1}
|
||||
!9 = !{!"branch_weights", i32 1, i32 1}
|
||||
!10 = !{!"branch_weights", i32 3, i32 1}
|
||||
!11 = !{!"branch_weights", i32 2, i32 1}
|
||||
|
||||
; Irreducible control flow in a branch that's in a true loop.
|
||||
define void @loop_around_branch_with_irreducible(i1 %x) {
|
||||
@ -301,8 +301,8 @@ exit:
|
||||
; CHECK-NEXT: exit: float = 1.0, int = [[ENTRY]]
|
||||
ret void
|
||||
}
|
||||
!12 = metadata !{metadata !"branch_weights", i32 3, i32 1}
|
||||
!13 = metadata !{metadata !"branch_weights", i32 1, i32 1}
|
||||
!12 = !{!"branch_weights", i32 3, i32 1}
|
||||
!13 = !{!"branch_weights", i32 1, i32 1}
|
||||
|
||||
; Irreducible control flow between two true loops.
|
||||
define void @loop_around_branch_with_irreducible_around_loop(i1 %x) {
|
||||
@ -348,10 +348,10 @@ exit:
|
||||
; CHECK-NEXT: exit: float = 1.0, int = [[ENTRY]]
|
||||
ret void
|
||||
}
|
||||
!14 = metadata !{metadata !"branch_weights", i32 2, i32 1}
|
||||
!15 = metadata !{metadata !"branch_weights", i32 1, i32 1}
|
||||
!16 = metadata !{metadata !"branch_weights", i32 3, i32 1}
|
||||
!17 = metadata !{metadata !"branch_weights", i32 4, i32 1}
|
||||
!14 = !{!"branch_weights", i32 2, i32 1}
|
||||
!15 = !{!"branch_weights", i32 1, i32 1}
|
||||
!16 = !{!"branch_weights", i32 3, i32 1}
|
||||
!17 = !{!"branch_weights", i32 4, i32 1}
|
||||
|
||||
; An irreducible SCC with a non-header.
|
||||
define void @nonheader(i1 %x) {
|
||||
@ -377,9 +377,9 @@ exit:
|
||||
; CHECK-NEXT: exit: float = 1.0, int = [[ENTRY]]
|
||||
ret void
|
||||
}
|
||||
!18 = metadata !{metadata !"branch_weights", i32 1, i32 1}
|
||||
!19 = metadata !{metadata !"branch_weights", i32 1, i32 3}
|
||||
!20 = metadata !{metadata !"branch_weights", i32 3, i32 1}
|
||||
!18 = !{!"branch_weights", i32 1, i32 1}
|
||||
!19 = !{!"branch_weights", i32 1, i32 3}
|
||||
!20 = !{!"branch_weights", i32 3, i32 1}
|
||||
|
||||
; An irreducible SCC with an irreducible sub-SCC. In the current version of
|
||||
; -block-freq, this means an extra header.
|
||||
@ -416,6 +416,6 @@ exit:
|
||||
; CHECK-NEXT: exit: float = 1.0, int = [[ENTRY]]
|
||||
ret void
|
||||
}
|
||||
!21 = metadata !{metadata !"branch_weights", i32 2, i32 1}
|
||||
!22 = metadata !{metadata !"branch_weights", i32 1, i32 1}
|
||||
!23 = metadata !{metadata !"branch_weights", i32 8, i32 1, i32 3, i32 12}
|
||||
!21 = !{!"branch_weights", i32 2, i32 1}
|
||||
!22 = !{!"branch_weights", i32 1, i32 1}
|
||||
!23 = !{!"branch_weights", i32 8, i32 1, i32 3, i32 12}
|
||||
|
@ -40,5 +40,5 @@ exit:
|
||||
declare i1 @foo0(i32)
|
||||
declare i2 @foo1(i32)
|
||||
|
||||
!0 = metadata !{metadata !"branch_weights", i32 1, i32 3}
|
||||
!1 = metadata !{metadata !"branch_weights", i32 1, i32 2, i32 3}
|
||||
!0 = !{!"branch_weights", i32 1, i32 3}
|
||||
!1 = !{!"branch_weights", i32 1, i32 2, i32 3}
|
||||
|
@ -55,5 +55,5 @@ declare i1 @foo4(i32)
|
||||
declare i1 @foo5(i32)
|
||||
declare i1 @foo6(i32)
|
||||
|
||||
!0 = metadata !{metadata !"branch_weights", i32 1, i32 3}
|
||||
!1 = metadata !{metadata !"branch_weights", i32 3, i32 1}
|
||||
!0 = !{!"branch_weights", i32 1, i32 3}
|
||||
!1 = !{!"branch_weights", i32 3, i32 1}
|
||||
|
@ -43,7 +43,7 @@ exit:
|
||||
ret i32 %result
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !"branch_weights", i32 64, i32 4}
|
||||
!0 = !{!"branch_weights", i32 64, i32 4}
|
||||
|
||||
define i32 @test3(i32 %i, i32 %a, i32 %b, i32 %c, i32 %d, i32 %e) {
|
||||
; CHECK: Printing analysis {{.*}} for function 'test3'
|
||||
@ -87,7 +87,7 @@ exit:
|
||||
ret i32 %result
|
||||
}
|
||||
|
||||
!1 = metadata !{metadata !"branch_weights", i32 4, i32 4, i32 64, i32 4, i32 4}
|
||||
!1 = !{!"branch_weights", i32 4, i32 4, i32 64, i32 4, i32 4}
|
||||
|
||||
define i32 @test4(i32 %x) nounwind uwtable readnone ssp {
|
||||
; CHECK: Printing analysis {{.*}} for function 'test4'
|
||||
@ -114,7 +114,7 @@ return:
|
||||
ret i32 %retval.0
|
||||
}
|
||||
|
||||
!2 = metadata !{metadata !"branch_weights", i32 7, i32 6, i32 4, i32 4, i32 64}
|
||||
!2 = !{!"branch_weights", i32 7, i32 6, i32 4, i32 4, i32 64}
|
||||
|
||||
declare void @coldfunc() cold
|
||||
|
||||
|
@ -29,9 +29,9 @@ entry:
|
||||
ret i32 %tmp5.lobit
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !4, metadata !4, i64 0}
|
||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
||||
!2 = metadata !{metadata !"Simple C/C++ TBAA", null}
|
||||
!3 = metadata !{metadata !5, metadata !5, i64 0}
|
||||
!4 = metadata !{metadata !"double", metadata !1}
|
||||
!5 = metadata !{metadata !"int", metadata !1}
|
||||
!0 = !{!4, !4, i64 0}
|
||||
!1 = !{!"omnipotent char", !2}
|
||||
!2 = !{!"Simple C/C++ TBAA", null}
|
||||
!3 = !{!5, !5, i64 0}
|
||||
!4 = !{!"double", !1}
|
||||
!5 = !{!"int", !1}
|
||||
|
@ -34,4 +34,4 @@ define i32 @ult_trip_count_with_range(i32 *%ptr0, i32 *%ptr1) {
|
||||
ret i32 0
|
||||
}
|
||||
|
||||
!0 = metadata !{i32 1, i32 100}
|
||||
!0 = !{i32 1, i32 100}
|
||||
|
@ -22,25 +22,25 @@ entry:
|
||||
|
||||
attributes #0 = { nounwind uwtable }
|
||||
|
||||
!0 = metadata !{metadata !0, metadata !"some domain"}
|
||||
!1 = metadata !{metadata !1, metadata !"some other domain"}
|
||||
!0 = !{!0, !"some domain"}
|
||||
!1 = !{!1, !"some other domain"}
|
||||
|
||||
; Two scopes (which must be self-referential to avoid being "uniqued"):
|
||||
!2 = metadata !{metadata !2, metadata !0, metadata !"a scope in dom0"}
|
||||
!3 = metadata !{metadata !2}
|
||||
!2 = !{!2, !0, !"a scope in dom0"}
|
||||
!3 = !{!2}
|
||||
|
||||
!4 = metadata !{metadata !4, metadata !0, metadata !"another scope in dom0"}
|
||||
!5 = metadata !{metadata !4}
|
||||
!4 = !{!4, !0, !"another scope in dom0"}
|
||||
!5 = !{!4}
|
||||
|
||||
; A list of the two scopes.
|
||||
!6 = metadata !{metadata !2, metadata !4}
|
||||
!6 = !{!2, !4}
|
||||
|
||||
; Another scope in the second domain
|
||||
!7 = metadata !{metadata !7, metadata !1, metadata !"another scope in dom1"}
|
||||
!8 = metadata !{metadata !7}
|
||||
!7 = !{!7, !1, !"another scope in dom1"}
|
||||
!8 = !{!7}
|
||||
|
||||
; A list of scopes from both domains.
|
||||
!9 = metadata !{metadata !2, metadata !4, metadata !7}
|
||||
!9 = !{!2, !4, !7}
|
||||
|
||||
; CHECK: NoAlias: %0 = load float* %c, align 4, !alias.scope !0 <-> store float %0, float* %arrayidx.i, align 4, !noalias !6
|
||||
; CHECK: NoAlias: %0 = load float* %c, align 4, !alias.scope !0 <-> store float %1, float* %arrayidx.i2, align 4, !noalias !6
|
||||
|
@ -22,6 +22,6 @@ entry:
|
||||
|
||||
attributes #0 = { nounwind uwtable }
|
||||
|
||||
!0 = metadata !{metadata !0, metadata !"some domain"}
|
||||
!1 = metadata !{metadata !1, metadata !0, metadata !"some scope"}
|
||||
!0 = !{!0, !"some domain"}
|
||||
!1 = !{!1, !0, !"some scope"}
|
||||
|
||||
|
@ -32,10 +32,10 @@ entry:
|
||||
|
||||
attributes #0 = { nounwind uwtable }
|
||||
|
||||
!0 = metadata !{metadata !1, metadata !3}
|
||||
!1 = metadata !{metadata !1, metadata !2, metadata !"some scope"}
|
||||
!2 = metadata !{metadata !2, metadata !"some domain"}
|
||||
!3 = metadata !{metadata !3, metadata !2, metadata !"some other scope"}
|
||||
!4 = metadata !{metadata !1}
|
||||
!5 = metadata !{metadata !3}
|
||||
!0 = !{!1, !3}
|
||||
!1 = !{!1, !2, !"some scope"}
|
||||
!2 = !{!2, !"some domain"}
|
||||
!3 = !{!3, !2, !"some other scope"}
|
||||
!4 = !{!1}
|
||||
!5 = !{!3}
|
||||
|
||||
|
@ -32,14 +32,14 @@ attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "n
|
||||
|
||||
!llvm.ident = !{!0}
|
||||
|
||||
!0 = metadata !{metadata !"clang version 3.4"}
|
||||
!1 = metadata !{metadata !2, metadata !2, i64 0}
|
||||
!2 = metadata !{metadata !"any pointer", metadata !3, i64 0}
|
||||
!3 = metadata !{metadata !"omnipotent char", metadata !4, i64 0}
|
||||
!4 = metadata !{metadata !"Simple C/C++ TBAA"}
|
||||
!5 = metadata !{metadata !6, metadata !2, i64 8}
|
||||
!6 = metadata !{metadata !"_ZTSN12_GLOBAL__N_11RINS_1FIPi8TreeIterN1I1S1LENS_1KINS_1DIKS2_S3_EEEEE1GEPSD_EE", metadata !7, i64 8}
|
||||
!7 = metadata !{metadata !"_ZTSN12_GLOBAL__N_11FIPi8TreeIterN1I1S1LENS_1KINS_1DIKS1_S2_EEEEE1GE", metadata !8, i64 0}
|
||||
!8 = metadata !{metadata !"_ZTSN12_GLOBAL__N_11DIKPi8TreeIterEE", metadata !2, i64 0, metadata !9, i64 8}
|
||||
!9 = metadata !{metadata !"_ZTS8TreeIter", metadata !2, i64 8, metadata !10, i64 16}
|
||||
!10 = metadata !{metadata !"bool", metadata !3, i64 0}
|
||||
!0 = !{!"clang version 3.4"}
|
||||
!1 = !{!2, !2, i64 0}
|
||||
!2 = !{!"any pointer", !3, i64 0}
|
||||
!3 = !{!"omnipotent char", !4, i64 0}
|
||||
!4 = !{!"Simple C/C++ TBAA"}
|
||||
!5 = !{!6, !2, i64 8}
|
||||
!6 = !{!"_ZTSN12_GLOBAL__N_11RINS_1FIPi8TreeIterN1I1S1LENS_1KINS_1DIKS2_S3_EEEEE1GEPSD_EE", !7, i64 8}
|
||||
!7 = !{!"_ZTSN12_GLOBAL__N_11FIPi8TreeIterN1I1S1LENS_1KINS_1DIKS1_S2_EEEEE1GE", !8, i64 0}
|
||||
!8 = !{!"_ZTSN12_GLOBAL__N_11DIKPi8TreeIterEE", !2, i64 0, !9, i64 8}
|
||||
!9 = !{!"_ZTS8TreeIter", !2, i64 8, !10, i64 16}
|
||||
!10 = !{!"bool", !3, i64 0}
|
||||
|
@ -45,23 +45,23 @@ define i8 @test1_no(i8* %a, i8* %b) nounwind {
|
||||
}
|
||||
|
||||
; Root note.
|
||||
!0 = metadata !{ }
|
||||
!0 = !{ }
|
||||
; Some type.
|
||||
!1 = metadata !{metadata !7, metadata !7, i64 0}
|
||||
!1 = !{!7, !7, i64 0}
|
||||
; Some other non-aliasing type.
|
||||
!2 = metadata !{metadata !8, metadata !8, i64 0}
|
||||
!2 = !{!8, !8, i64 0}
|
||||
|
||||
; Some type.
|
||||
!3 = metadata !{metadata !9, metadata !9, i64 0}
|
||||
!3 = !{!9, !9, i64 0}
|
||||
; Some type in a different type system.
|
||||
!4 = metadata !{metadata !10, metadata !10, i64 0}
|
||||
!4 = !{!10, !10, i64 0}
|
||||
|
||||
; Invariant memory.
|
||||
!5 = metadata !{metadata !11, metadata !11, i64 0, i1 1}
|
||||
!5 = !{!11, !11, i64 0, i1 1}
|
||||
; Not invariant memory.
|
||||
!6 = metadata !{metadata !11, metadata !11, i64 0, i1 0}
|
||||
!7 = metadata !{ metadata !"foo", metadata !0 }
|
||||
!8 = metadata !{ metadata !"bar", metadata !0 }
|
||||
!9 = metadata !{ metadata !"foo", metadata !0 }
|
||||
!10 = metadata !{ metadata !"bar", metadata !"different" }
|
||||
!11 = metadata !{ metadata !"qux", metadata !0}
|
||||
!6 = !{!11, !11, i64 0, i1 0}
|
||||
!7 = !{ !"foo", !0 }
|
||||
!8 = !{ !"bar", !0 }
|
||||
!9 = !{ !"foo", !0 }
|
||||
!10 = !{ !"bar", !"different" }
|
||||
!11 = !{ !"qux", !0}
|
||||
|
@ -32,8 +32,8 @@ define i32 @callercaller(i32* %Q) {
|
||||
ret i32 %X
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !"test"}
|
||||
!1 = metadata !{metadata !3, metadata !3, i64 0}
|
||||
!2 = metadata !{metadata !4, metadata !4, i64 0}
|
||||
!3 = metadata !{metadata !"green", metadata !0}
|
||||
!4 = metadata !{metadata !"blue", metadata !0}
|
||||
!0 = !{!"test"}
|
||||
!1 = !{!3, !3, i64 0}
|
||||
!2 = !{!4, !4, i64 0}
|
||||
!3 = !{!"green", !0}
|
||||
!4 = !{!"blue", !0}
|
||||
|
@ -50,23 +50,23 @@ define i8 @test1_no(i8* %a, i8* %b) nounwind {
|
||||
}
|
||||
|
||||
; Root note.
|
||||
!0 = metadata !{ }
|
||||
!0 = !{ }
|
||||
; Some type.
|
||||
!1 = metadata !{metadata !7, metadata !7, i64 0}
|
||||
!1 = !{!7, !7, i64 0}
|
||||
; Some other non-aliasing type.
|
||||
!2 = metadata !{metadata !8, metadata !8, i64 0}
|
||||
!2 = !{!8, !8, i64 0}
|
||||
|
||||
; Some type.
|
||||
!3 = metadata !{metadata !9, metadata !9, i64 0}
|
||||
!3 = !{!9, !9, i64 0}
|
||||
; Some type in a different type system.
|
||||
!4 = metadata !{metadata !10, metadata !10, i64 0}
|
||||
!4 = !{!10, !10, i64 0}
|
||||
|
||||
; Invariant memory.
|
||||
!5 = metadata !{metadata !11, metadata !11, i64 0, i1 1}
|
||||
!5 = !{!11, !11, i64 0, i1 1}
|
||||
; Not invariant memory.
|
||||
!6 = metadata !{metadata !11, metadata !11, i64 0, i1 0}
|
||||
!7 = metadata !{ metadata !"foo", metadata !0 }
|
||||
!8 = metadata !{ metadata !"bar", metadata !0 }
|
||||
!9 = metadata !{ metadata !"foo", metadata !0 }
|
||||
!10 = metadata !{ metadata !"bar", metadata !"different" }
|
||||
!11 = metadata !{ metadata !"qux", metadata !0}
|
||||
!6 = !{!11, !11, i64 0, i1 0}
|
||||
!7 = !{ !"foo", !0 }
|
||||
!8 = !{ !"bar", !0 }
|
||||
!9 = !{ !"foo", !0 }
|
||||
!10 = !{ !"bar", !"different" }
|
||||
!11 = !{ !"qux", !0}
|
||||
|
@ -123,15 +123,15 @@ for.end: ; preds = %for.body
|
||||
ret float %tmp10
|
||||
}
|
||||
|
||||
; CHECK: [[TAG]] = metadata !{metadata [[TYPE_LL:!.*]], metadata [[TYPE_LL]], i64 0}
|
||||
; CHECK: [[TYPE_LL]] = metadata !{metadata !"long long", metadata {{!.*}}}
|
||||
!0 = metadata !{metadata !6, metadata !6, i64 0}
|
||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
||||
!2 = metadata !{metadata !"Simple C/C++ TBAA", null}
|
||||
!3 = metadata !{metadata !7, metadata !7, i64 0}
|
||||
!4 = metadata !{metadata !8, metadata !8, i64 0}
|
||||
!5 = metadata !{metadata !9, metadata !9, i64 0}
|
||||
!6 = metadata !{metadata !"short", metadata !1}
|
||||
!7 = metadata !{metadata !"long long", metadata !1}
|
||||
!8 = metadata !{metadata !"int", metadata !1}
|
||||
!9 = metadata !{metadata !"float", metadata !1}
|
||||
; CHECK: [[TAG]] = !{[[TYPE_LL:!.*]], [[TYPE_LL]], i64 0}
|
||||
; CHECK: [[TYPE_LL]] = !{!"long long", {{!.*}}}
|
||||
!0 = !{!6, !6, i64 0}
|
||||
!1 = !{!"omnipotent char", !2}
|
||||
!2 = !{!"Simple C/C++ TBAA", null}
|
||||
!3 = !{!7, !7, i64 0}
|
||||
!4 = !{!8, !8, i64 0}
|
||||
!5 = !{!9, !9, i64 0}
|
||||
!6 = !{!"short", !1}
|
||||
!7 = !{!"long long", !1}
|
||||
!8 = !{!"int", !1}
|
||||
!9 = !{!"float", !1}
|
||||
|
@ -77,10 +77,10 @@ declare void @llvm.memcpy.p0i8.p0i8.i64(i8*, i8*, i64, i32, i1) nounwind
|
||||
; CHECK: attributes #2 = { nounwind readonly }
|
||||
|
||||
; Root note.
|
||||
!0 = metadata !{ }
|
||||
!0 = !{ }
|
||||
|
||||
; Invariant memory.
|
||||
!1 = metadata !{metadata !3, metadata !3, i64 0, i1 1 }
|
||||
!1 = !{!3, !3, i64 0, i1 1 }
|
||||
; Not invariant memory.
|
||||
!2 = metadata !{metadata !3, metadata !3, i64 0, i1 0 }
|
||||
!3 = metadata !{ metadata !"foo", metadata !0 }
|
||||
!2 = !{!3, !3, i64 0, i1 0 }
|
||||
!3 = !{ !"foo", !0 }
|
||||
|
@ -84,12 +84,12 @@ if.else:
|
||||
ret void
|
||||
}
|
||||
|
||||
!0 = metadata !{}
|
||||
!1 = metadata !{metadata !5, metadata !5, i64 0}
|
||||
!2 = metadata !{metadata !6, metadata !6, i64 0}
|
||||
!3 = metadata !{metadata !7, metadata !7, i64 0}
|
||||
!4 = metadata !{metadata !8, metadata !8, i64 0}
|
||||
!5 = metadata !{metadata !"red", metadata !0}
|
||||
!6 = metadata !{metadata !"blu", metadata !0}
|
||||
!7 = metadata !{metadata !"outer space"}
|
||||
!8 = metadata !{metadata !"brick red", metadata !5}
|
||||
!0 = !{}
|
||||
!1 = !{!5, !5, i64 0}
|
||||
!2 = !{!6, !6, i64 0}
|
||||
!3 = !{!7, !7, i64 0}
|
||||
!4 = !{!8, !8, i64 0}
|
||||
!5 = !{!"red", !0}
|
||||
!6 = !{!"blu", !0}
|
||||
!7 = !{!"outer space"}
|
||||
!8 = !{!"brick red", !5}
|
||||
|
@ -25,8 +25,8 @@ declare void @llvm.arm.neon.vst1.v8i16(i8*, <8 x i16>, i32) nounwind
|
||||
; CHECK: attributes #0 = { nounwind readonly }
|
||||
; CHECK: attributes [[NUW]] = { nounwind }
|
||||
|
||||
!0 = metadata !{metadata !"tbaa root", null}
|
||||
!1 = metadata !{metadata !3, metadata !3, i64 0}
|
||||
!2 = metadata !{metadata !4, metadata !4, i64 0}
|
||||
!3 = metadata !{metadata !"A", metadata !0}
|
||||
!4 = metadata !{metadata !"B", metadata !0}
|
||||
!0 = !{!"tbaa root", null}
|
||||
!1 = !{!3, !3, i64 0}
|
||||
!2 = !{!4, !4, i64 0}
|
||||
!3 = !{!"A", !0}
|
||||
!4 = !{!"B", !0}
|
||||
|
@ -29,9 +29,9 @@ for.end: ; preds = %for.body, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !"root", null}
|
||||
!1 = metadata !{metadata !6, metadata !6, i64 0}
|
||||
!2 = metadata !{metadata !7, metadata !7, i64 0}
|
||||
!0 = !{!"root", null}
|
||||
!1 = !{!6, !6, i64 0}
|
||||
!2 = !{!7, !7, i64 0}
|
||||
|
||||
; LICM shouldn't hoist anything here.
|
||||
|
||||
@ -56,10 +56,10 @@ loop:
|
||||
br label %loop
|
||||
}
|
||||
|
||||
!3 = metadata !{metadata !"pointer", metadata !8}
|
||||
!4 = metadata !{metadata !8, metadata !8, i64 0}
|
||||
!5 = metadata !{metadata !9, metadata !9, i64 0}
|
||||
!6 = metadata !{metadata !"pointer", metadata !0}
|
||||
!7 = metadata !{metadata !"double", metadata !0}
|
||||
!8 = metadata !{metadata !"char", metadata !9}
|
||||
!9 = metadata !{metadata !"root", null}
|
||||
!3 = !{!"pointer", !8}
|
||||
!4 = !{!8, !8, i64 0}
|
||||
!5 = !{!9, !9, i64 0}
|
||||
!6 = !{!"pointer", !0}
|
||||
!7 = !{!"double", !0}
|
||||
!8 = !{!"char", !9}
|
||||
!9 = !{!"root", null}
|
||||
|
@ -18,10 +18,10 @@ define void @foo(i8* nocapture %p, i8* nocapture %q, i8* nocapture %s) nounwind
|
||||
|
||||
declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture, i8* nocapture, i64, i32, i1) nounwind
|
||||
|
||||
; CHECK: [[TAGA]] = metadata !{metadata [[TYPEA:!.*]], metadata [[TYPEA]], i64 0}
|
||||
; CHECK: [[TYPEA]] = metadata !{metadata !"A", metadata !{{.*}}}
|
||||
!0 = metadata !{metadata !"tbaa root", null}
|
||||
!1 = metadata !{metadata !3, metadata !3, i64 0}
|
||||
!2 = metadata !{metadata !4, metadata !4, i64 0}
|
||||
!3 = metadata !{metadata !"A", metadata !0}
|
||||
!4 = metadata !{metadata !"B", metadata !0}
|
||||
; CHECK: [[TAGA]] = !{[[TYPEA:!.*]], [[TYPEA]], i64 0}
|
||||
; CHECK: [[TYPEA]] = !{!"A", !{{.*}}}
|
||||
!0 = !{!"tbaa root", null}
|
||||
!1 = !{!3, !3, i64 0}
|
||||
!2 = !{!4, !4, i64 0}
|
||||
!3 = !{!"A", !0}
|
||||
!4 = !{!"B", !0}
|
||||
|
@ -97,14 +97,14 @@ declare noalias i8* @_Znwm(i64)
|
||||
|
||||
attributes #0 = { nounwind }
|
||||
|
||||
!0 = metadata !{metadata !1, metadata !1, i64 0}
|
||||
!1 = metadata !{metadata !"int", metadata !2, i64 0}
|
||||
!2 = metadata !{metadata !"omnipotent char", metadata !3, i64 0}
|
||||
!3 = metadata !{metadata !"Simple C/C++ TBAA"}
|
||||
!4 = metadata !{metadata !5, metadata !5, i64 0}
|
||||
!5 = metadata !{metadata !"any pointer", metadata !2, i64 0}
|
||||
!6 = metadata !{metadata !7, metadata !8, i64 0}
|
||||
!7 = metadata !{metadata !"_ZTS3Foo", metadata !8, i64 0}
|
||||
!8 = metadata !{metadata !"long", metadata !2, i64 0}
|
||||
!9 = metadata !{metadata !10, metadata !5, i64 0}
|
||||
!10 = metadata !{metadata !"_ZTS3Bar", metadata !5, i64 0}
|
||||
!0 = !{!1, !1, i64 0}
|
||||
!1 = !{!"int", !2, i64 0}
|
||||
!2 = !{!"omnipotent char", !3, i64 0}
|
||||
!3 = !{!"Simple C/C++ TBAA"}
|
||||
!4 = !{!5, !5, i64 0}
|
||||
!5 = !{!"any pointer", !2, i64 0}
|
||||
!6 = !{!7, !8, i64 0}
|
||||
!7 = !{!"_ZTS3Foo", !8, i64 0}
|
||||
!8 = !{!"long", !2, i64 0}
|
||||
!9 = !{!10, !5, i64 0}
|
||||
!10 = !{!"_ZTS3Bar", !5, i64 0}
|
||||
|
@ -39,12 +39,12 @@ entry:
|
||||
ret i64 %tmp3
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !2, metadata !2, i64 0}
|
||||
!1 = metadata !{metadata !"simple"}
|
||||
!2 = metadata !{metadata !"int", metadata !1}
|
||||
!3 = metadata !{metadata !6, metadata !6, i64 0}
|
||||
!4 = metadata !{metadata !7, metadata !7, i64 0}
|
||||
!5 = metadata !{metadata !8, metadata !8, i64 0}
|
||||
!6 = metadata !{metadata !"float", metadata !1}
|
||||
!7 = metadata !{metadata !"long", metadata !1}
|
||||
!8 = metadata !{metadata !"small", metadata !1}
|
||||
!0 = !{!2, !2, i64 0}
|
||||
!1 = !{!"simple"}
|
||||
!2 = !{!"int", !1}
|
||||
!3 = !{!6, !6, i64 0}
|
||||
!4 = !{!7, !7, i64 0}
|
||||
!5 = !{!8, !8, i64 0}
|
||||
!6 = !{!"float", !1}
|
||||
!7 = !{!"long", !1}
|
||||
!8 = !{!"small", !1}
|
||||
|
@ -15,10 +15,10 @@ b:
|
||||
ret void
|
||||
}
|
||||
|
||||
; CHECK: [[TAGA]] = metadata !{metadata [[TYPEA:!.*]], metadata [[TYPEA]], i64 0}
|
||||
; CHECK: [[TYPEA]] = metadata !{metadata !"A", metadata !{{.*}}}
|
||||
!0 = metadata !{metadata !3, metadata !3, i64 0}
|
||||
!1 = metadata !{metadata !4, metadata !4, i64 0}
|
||||
!2 = metadata !{metadata !"test"}
|
||||
!3 = metadata !{metadata !"A", metadata !2}
|
||||
!4 = metadata !{metadata !"B", metadata !2}
|
||||
; CHECK: [[TAGA]] = !{[[TYPEA:!.*]], [[TYPEA]], i64 0}
|
||||
; CHECK: [[TYPEA]] = !{!"A", !{{.*}}}
|
||||
!0 = !{!3, !3, i64 0}
|
||||
!1 = !{!4, !4, i64 0}
|
||||
!2 = !{!"test"}
|
||||
!3 = !{!"A", !2}
|
||||
!4 = !{!"B", !2}
|
||||
|
@ -363,30 +363,30 @@ entry:
|
||||
|
||||
attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||
|
||||
!0 = metadata !{metadata !1, metadata !1, i64 0}
|
||||
!1 = metadata !{metadata !"any pointer", metadata !2}
|
||||
!2 = metadata !{metadata !"omnipotent char", metadata !3}
|
||||
!3 = metadata !{metadata !"Simple C/C++ TBAA"}
|
||||
!4 = metadata !{metadata !5, metadata !5, i64 0}
|
||||
!5 = metadata !{metadata !"long long", metadata !2}
|
||||
!6 = metadata !{metadata !7, metadata !7, i64 0}
|
||||
!7 = metadata !{metadata !"int", metadata !2}
|
||||
!8 = metadata !{metadata !9, metadata !7, i64 4}
|
||||
!9 = metadata !{metadata !"_ZTS7StructA", metadata !10, i64 0, metadata !7, i64 4, metadata !10, i64 8, metadata !7, i64 12}
|
||||
!10 = metadata !{metadata !"short", metadata !2}
|
||||
!11 = metadata !{metadata !9, metadata !10, i64 0}
|
||||
!12 = metadata !{metadata !13, metadata !7, i64 8}
|
||||
!13 = metadata !{metadata !"_ZTS7StructB", metadata !10, i64 0, metadata !9, i64 4, metadata !7, i64 20}
|
||||
!14 = metadata !{metadata !13, metadata !10, i64 4}
|
||||
!15 = metadata !{metadata !13, metadata !7, i64 20}
|
||||
!16 = metadata !{metadata !13, metadata !7, i64 16}
|
||||
!17 = metadata !{metadata !18, metadata !7, i64 4}
|
||||
!18 = metadata !{metadata !"_ZTS7StructS", metadata !10, i64 0, metadata !7, i64 4}
|
||||
!19 = metadata !{metadata !18, metadata !10, i64 0}
|
||||
!20 = metadata !{metadata !21, metadata !7, i64 4}
|
||||
!21 = metadata !{metadata !"_ZTS8StructS2", metadata !10, i64 0, metadata !7, i64 4}
|
||||
!22 = metadata !{metadata !21, metadata !10, i64 0}
|
||||
!23 = metadata !{metadata !24, metadata !7, i64 12}
|
||||
!24 = metadata !{metadata !"_ZTS7StructC", metadata !10, i64 0, metadata !13, i64 4, metadata !7, i64 28}
|
||||
!25 = metadata !{metadata !26, metadata !7, i64 12}
|
||||
!26 = metadata !{metadata !"_ZTS7StructD", metadata !10, i64 0, metadata !13, i64 4, metadata !7, i64 28, metadata !2, i64 32}
|
||||
!0 = !{!1, !1, i64 0}
|
||||
!1 = !{!"any pointer", !2}
|
||||
!2 = !{!"omnipotent char", !3}
|
||||
!3 = !{!"Simple C/C++ TBAA"}
|
||||
!4 = !{!5, !5, i64 0}
|
||||
!5 = !{!"long long", !2}
|
||||
!6 = !{!7, !7, i64 0}
|
||||
!7 = !{!"int", !2}
|
||||
!8 = !{!9, !7, i64 4}
|
||||
!9 = !{!"_ZTS7StructA", !10, i64 0, !7, i64 4, !10, i64 8, !7, i64 12}
|
||||
!10 = !{!"short", !2}
|
||||
!11 = !{!9, !10, i64 0}
|
||||
!12 = !{!13, !7, i64 8}
|
||||
!13 = !{!"_ZTS7StructB", !10, i64 0, !9, i64 4, !7, i64 20}
|
||||
!14 = !{!13, !10, i64 4}
|
||||
!15 = !{!13, !7, i64 20}
|
||||
!16 = !{!13, !7, i64 16}
|
||||
!17 = !{!18, !7, i64 4}
|
||||
!18 = !{!"_ZTS7StructS", !10, i64 0, !7, i64 4}
|
||||
!19 = !{!18, !10, i64 0}
|
||||
!20 = !{!21, !7, i64 4}
|
||||
!21 = !{!"_ZTS8StructS2", !10, i64 0, !7, i64 4}
|
||||
!22 = !{!21, !10, i64 0}
|
||||
!23 = !{!24, !7, i64 12}
|
||||
!24 = !{!"_ZTS7StructC", !10, i64 0, !13, i64 4, !7, i64 28}
|
||||
!25 = !{!26, !7, i64 12}
|
||||
!26 = !{!"_ZTS7StructD", !10, i64 0, !13, i64 4, !7, i64 28, !2, i64 32}
|
||||
|
@ -12,7 +12,7 @@ target triple = "x86_64-apple-darwin10.2"
|
||||
|
||||
define i32 @main() nounwind readonly {
|
||||
%diff1 = alloca i64 ; <i64*> [#uses=2]
|
||||
call void @llvm.dbg.declare(metadata !{i64* %diff1}, metadata !0, metadata !{metadata !"0x102"})
|
||||
call void @llvm.dbg.declare(metadata i64* %diff1, metadata !0, metadata !{!"0x102"})
|
||||
store i64 72, i64* %diff1, align 8
|
||||
%v1 = load %struct.test** @TestArrayPtr, align 8 ; <%struct.test*> [#uses=1]
|
||||
%v2 = ptrtoint %struct.test* %v1 to i64 ; <i64> [#uses=1]
|
||||
@ -23,13 +23,13 @@ define i32 @main() nounwind readonly {
|
||||
|
||||
declare void @llvm.dbg.declare(metadata, metadata, metadata) nounwind readnone
|
||||
|
||||
!7 = metadata !{metadata !1}
|
||||
!6 = metadata !{metadata !"0x11\0012\00clang version 3.0 (trunk 131941)\001\00\000\00\000", metadata !8, metadata !9, metadata !9, metadata !7, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!0 = metadata !{metadata !"0x100\00c\002\000", metadata !1, metadata !2, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!1 = metadata !{metadata !"0x2e\00main\00main\00\001\000\001\000\006\00256\000\001", metadata !8, metadata !2, metadata !3, null, i32 ()* @main, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!2 = metadata !{metadata !"0x29", metadata !8} ; [ DW_TAG_file_type ]
|
||||
!3 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !8, metadata !2, null, metadata !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = metadata !{metadata !5}
|
||||
!5 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, metadata !6} ; [ DW_TAG_base_type ]
|
||||
!8 = metadata !{metadata !"/d/j/debug-test.c", metadata !"/Volumes/Data/b"}
|
||||
!9 = metadata !{i32 0}
|
||||
!7 = !{!1}
|
||||
!6 = !{!"0x11\0012\00clang version 3.0 (trunk 131941)\001\00\000\00\000", !8, !9, !9, !7, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!0 = !{!"0x100\00c\002\000", !1, !2, !5} ; [ DW_TAG_auto_variable ]
|
||||
!1 = !{!"0x2e\00main\00main\00\001\000\001\000\006\00256\000\001", !8, !2, !3, null, i32 ()* @main, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!2 = !{!"0x29", !8} ; [ DW_TAG_file_type ]
|
||||
!3 = !{!"0x15\00\000\000\000\000\000\000", !8, !2, null, !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = !{!5}
|
||||
!5 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !6} ; [ DW_TAG_base_type ]
|
||||
!8 = !{!"/d/j/debug-test.c", !"/Volumes/Data/b"}
|
||||
!9 = !{i32 0}
|
||||
|
@ -3,30 +3,30 @@
|
||||
|
||||
define void @Foo(i32 %a, i32 %b) {
|
||||
entry:
|
||||
call void @llvm.dbg.value(metadata !{ i32* %1 }, i64 16, metadata !2, metadata !{metadata !"0x102"})
|
||||
; CHECK: call void @llvm.dbg.value(metadata !{i32* %1}, i64 16, metadata ![[ID2:[0-9]+]], metadata {{.*}})
|
||||
call void @llvm.dbg.value(metadata i32* %1, i64 16, metadata !2, metadata !{!"0x102"})
|
||||
; CHECK: call void @llvm.dbg.value(metadata i32* %1, i64 16, metadata ![[ID2:[0-9]+]], metadata {{.*}})
|
||||
%0 = add i32 %a, 1 ; <i32> [#uses=1]
|
||||
%two = add i32 %b, %0 ; <i32> [#uses=0]
|
||||
%1 = alloca i32 ; <i32*> [#uses=1]
|
||||
|
||||
call void @llvm.dbg.declare(metadata !{i32* %1}, metadata !{i32* %1}, metadata !{metadata !"0x102"})
|
||||
; CHECK: call void @llvm.dbg.declare(metadata !{i32* %1}, metadata !{i32* %1}, metadata {{.*}})
|
||||
call void @llvm.dbg.declare(metadata !{i32 %two}, metadata !{i32 %0}, metadata !{metadata !"0x102"})
|
||||
; CHECK: call void @llvm.dbg.declare(metadata !{i32 %two}, metadata !{i32 %0}, metadata {{.*}})
|
||||
call void @llvm.dbg.declare(metadata !{i32* %1}, metadata !{i32 %b}, metadata !{metadata !"0x102"})
|
||||
; CHECK: call void @llvm.dbg.declare(metadata !{i32* %1}, metadata !{i32 %b}, metadata {{.*}})
|
||||
call void @llvm.dbg.declare(metadata !{i32 %a}, metadata !{i32 %a}, metadata !{metadata !"0x102"})
|
||||
; CHECK: call void @llvm.dbg.declare(metadata !{i32 %a}, metadata !{i32 %a}, metadata {{.*}})
|
||||
call void @llvm.dbg.declare(metadata !{i32 %b}, metadata !{i32 %two}, metadata !{metadata !"0x102"})
|
||||
; CHECK: call void @llvm.dbg.declare(metadata !{i32 %b}, metadata !{i32 %two}, metadata {{.*}})
|
||||
call void @llvm.dbg.declare(metadata i32* %1, metadata i32* %1, metadata !{!"0x102"})
|
||||
; CHECK: call void @llvm.dbg.declare(metadata i32* %1, metadata i32* %1, metadata {{.*}})
|
||||
call void @llvm.dbg.declare(metadata i32 %two, metadata i32 %0, metadata !{!"0x102"})
|
||||
; CHECK: call void @llvm.dbg.declare(metadata i32 %two, metadata i32 %0, metadata {{.*}})
|
||||
call void @llvm.dbg.declare(metadata i32* %1, metadata i32 %b, metadata !{!"0x102"})
|
||||
; CHECK: call void @llvm.dbg.declare(metadata i32* %1, metadata i32 %b, metadata {{.*}})
|
||||
call void @llvm.dbg.declare(metadata i32 %a, metadata i32 %a, metadata !{!"0x102"})
|
||||
; CHECK: call void @llvm.dbg.declare(metadata i32 %a, metadata i32 %a, metadata {{.*}})
|
||||
call void @llvm.dbg.declare(metadata i32 %b, metadata i32 %two, metadata !{!"0x102"})
|
||||
; CHECK: call void @llvm.dbg.declare(metadata i32 %b, metadata i32 %two, metadata {{.*}})
|
||||
|
||||
call void @llvm.dbg.value(metadata !{ i32 %a }, i64 0, metadata !1, metadata !{metadata !"0x102"})
|
||||
; CHECK: call void @llvm.dbg.value(metadata !{i32 %a}, i64 0, metadata ![[ID1:[0-9]+]], metadata {{.*}})
|
||||
call void @llvm.dbg.value(metadata !{ i32 %0 }, i64 25, metadata !0, metadata !{metadata !"0x102"})
|
||||
; CHECK: call void @llvm.dbg.value(metadata !{i32 %0}, i64 25, metadata ![[ID0:[0-9]+]], metadata {{.*}})
|
||||
call void @llvm.dbg.value(metadata !{ i32* %1 }, i64 16, metadata !3, metadata !{metadata !"0x102"})
|
||||
; CHECK: call void @llvm.dbg.value(metadata !{i32* %1}, i64 16, metadata ![[ID3:[0-9]+]], metadata {{.*}})
|
||||
call void @llvm.dbg.value(metadata !3, i64 12, metadata !2, metadata !{metadata !"0x102"})
|
||||
call void @llvm.dbg.value(metadata i32 %a, i64 0, metadata !1, metadata !{!"0x102"})
|
||||
; CHECK: call void @llvm.dbg.value(metadata i32 %a, i64 0, metadata ![[ID1:[0-9]+]], metadata {{.*}})
|
||||
call void @llvm.dbg.value(metadata i32 %0, i64 25, metadata !0, metadata !{!"0x102"})
|
||||
; CHECK: call void @llvm.dbg.value(metadata i32 %0, i64 25, metadata ![[ID0:[0-9]+]], metadata {{.*}})
|
||||
call void @llvm.dbg.value(metadata i32* %1, i64 16, metadata !3, metadata !{!"0x102"})
|
||||
; CHECK: call void @llvm.dbg.value(metadata i32* %1, i64 16, metadata ![[ID3:[0-9]+]], metadata {{.*}})
|
||||
call void @llvm.dbg.value(metadata !3, i64 12, metadata !2, metadata !{!"0x102"})
|
||||
; CHECK: call void @llvm.dbg.value(metadata ![[ID3]], i64 12, metadata ![[ID2]], metadata {{.*}})
|
||||
|
||||
ret void, !foo !0, !bar !1
|
||||
@ -35,11 +35,11 @@ entry:
|
||||
|
||||
!llvm.module.flags = !{!4}
|
||||
|
||||
!0 = metadata !{i32 662302, i32 26, metadata !1, null}
|
||||
!1 = metadata !{i32 4, metadata !"foo"}
|
||||
!2 = metadata !{metadata !"bar"}
|
||||
!3 = metadata !{metadata !"foo"}
|
||||
!4 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!0 = !{i32 662302, i32 26, !1, null}
|
||||
!1 = !{i32 4, !"foo"}
|
||||
!2 = !{!"bar"}
|
||||
!3 = !{!"foo"}
|
||||
!4 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
||||
declare void @llvm.dbg.declare(metadata, metadata, metadata) nounwind readnone
|
||||
declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnone
|
||||
@ -49,7 +49,7 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon
|
||||
|
||||
; CHECK: !foo = !{![[FOO]]}
|
||||
; CHECK: !bar = !{![[BAR]]}
|
||||
; CHECK: ![[ID0]] = metadata !{i32 662302, i32 26, metadata ![[ID1]], null}
|
||||
; CHECK: ![[ID1]] = metadata !{i32 4, metadata !"foo"}
|
||||
; CHECK: ![[ID2]] = metadata !{metadata !"bar"}
|
||||
; CHECK: ![[ID3]] = metadata !{metadata !"foo"}
|
||||
; CHECK: ![[ID0]] = !{i32 662302, i32 26, ![[ID1]], null}
|
||||
; CHECK: ![[ID1]] = !{i32 4, !"foo"}
|
||||
; CHECK: ![[ID2]] = !{!"bar"}
|
||||
; CHECK: ![[ID3]] = !{!"foo"}
|
||||
|
@ -13,5 +13,5 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
!0 = metadata !{i32 662302, null}
|
||||
!0 = !{i32 662302, null}
|
||||
!foo = !{ !0 }
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: not llvm-as < %s 2>&1 | FileCheck %s
|
||||
|
||||
!0 = metadata!
|
||||
!0 = !
|
||||
; CHECK: expected '{' here
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: not llvm-as < %s 2>&1 | FileCheck %s
|
||||
|
||||
!0 = metadata !{metadata
|
||||
; CHECK: expected '!' here
|
||||
!0 = !{
|
||||
; CHECK: expected metadata operand
|
||||
|
8
test/Assembler/invalid-metadata-attachment-has-type.ll
Normal file
8
test/Assembler/invalid-metadata-attachment-has-type.ll
Normal file
@ -0,0 +1,8 @@
|
||||
; RUN: not llvm-as -disable-output < %s 2>&1 | FileCheck %s
|
||||
; Check common error from old format.
|
||||
|
||||
define void @foo() {
|
||||
; CHECK: {{.*}}:[[@LINE+1]]:{{[0-9]+}}: error: invalid metadata-value-metadata roundtrip
|
||||
ret void, !bar !{metadata !0}
|
||||
}
|
||||
!0 = !{}
|
@ -2,7 +2,7 @@
|
||||
|
||||
define void @foo(i32 %v) {
|
||||
entry:
|
||||
; CHECK: <stdin>:[[@LINE+1]]:{{[0-9]+}}: error: unexpected operand after function-local metadata
|
||||
; CHECK: <stdin>:[[@LINE+1]]:{{[0-9]+}}: error: invalid use of function-local name
|
||||
call void @llvm.bar(metadata !{i32 %v, i32 0})
|
||||
ret void
|
||||
}
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
define void @foo(i32 %v) {
|
||||
entry:
|
||||
; CHECK: <stdin>:[[@LINE+1]]:{{[0-9]+}}: error: unexpected function-local metadata
|
||||
; CHECK: <stdin>:[[@LINE+1]]:{{[0-9]+}}: error: invalid use of function-local name
|
||||
call void @llvm.bar(metadata !{i32 0, i32 %v})
|
||||
ret void
|
||||
}
|
||||
|
@ -3,7 +3,7 @@
|
||||
define void @foo(i32 %v) {
|
||||
entry:
|
||||
; CHECK: <stdin>:[[@LINE+1]]:{{[0-9]+}}: error: invalid use of function-local name
|
||||
call void @llvm.bar(metadata !{metadata !{i32 %v}})
|
||||
call void @llvm.bar(metadata !{i32 %v})
|
||||
ret void
|
||||
}
|
||||
|
||||
|
5
test/Assembler/invalid-metadata-has-type.ll
Normal file
5
test/Assembler/invalid-metadata-has-type.ll
Normal file
@ -0,0 +1,5 @@
|
||||
; RUN: not llvm-as -disable-output < %s 2>&1 | FileCheck %s
|
||||
; Check common error from old format.
|
||||
|
||||
; CHECK: {{.*}}:[[@LINE+1]]:{{[0-9]+}}: error: unexpected type in metadata definition
|
||||
!0 = metadata !{}
|
@ -11,8 +11,8 @@ define void @test() {
|
||||
ret void, !foo !0, !bar !1
|
||||
}
|
||||
|
||||
!0 = metadata !{i32 662302, i32 26, metadata !1, null}
|
||||
!1 = metadata !{i32 4, metadata !"foo"}
|
||||
!0 = !{i32 662302, i32 26, !1, null}
|
||||
!1 = !{i32 4, !"foo"}
|
||||
|
||||
declare void @llvm.dbg.func.start(metadata) nounwind readnone
|
||||
|
||||
|
@ -1,9 +1,9 @@
|
||||
; RUN: llvm-as < %s | llvm-dis | FileCheck %s
|
||||
; RUN: verify-uselistorder %s
|
||||
|
||||
!0 = metadata !{metadata !"zero"}
|
||||
!1 = metadata !{metadata !"one"}
|
||||
!2 = metadata !{metadata !"two"}
|
||||
!0 = !{!"zero"}
|
||||
!1 = !{!"one"}
|
||||
!2 = !{!"two"}
|
||||
|
||||
!foo = !{!0, !1, !2}
|
||||
; CHECK: !foo = !{!0, !1, !2}
|
||||
|
@ -31,12 +31,12 @@ for.end: ; preds = %for.cond
|
||||
ret void
|
||||
}
|
||||
|
||||
; CHECK: !{metadata !"llvm.loop.interleave.count", i32 4}
|
||||
; CHECK: !{metadata !"llvm.loop.vectorize.width", i32 8}
|
||||
; CHECK: !{metadata !"llvm.loop.vectorize.enable", i1 true}
|
||||
; CHECK: !{!"llvm.loop.interleave.count", i32 4}
|
||||
; CHECK: !{!"llvm.loop.vectorize.width", i32 8}
|
||||
; CHECK: !{!"llvm.loop.vectorize.enable", i1 true}
|
||||
|
||||
!0 = metadata !{metadata !"clang version 3.5.0 (trunk 211528)"}
|
||||
!1 = metadata !{metadata !1, metadata !2, metadata !3, metadata !4, metadata !4}
|
||||
!2 = metadata !{metadata !"llvm.vectorizer.unroll", i32 4}
|
||||
!3 = metadata !{metadata !"llvm.vectorizer.width", i32 8}
|
||||
!4 = metadata !{metadata !"llvm.vectorizer.enable", i1 true}
|
||||
!0 = !{!"clang version 3.5.0 (trunk 211528)"}
|
||||
!1 = !{!1, !2, !3, !4, !4}
|
||||
!2 = !{!"llvm.vectorizer.unroll", i32 4}
|
||||
!3 = !{!"llvm.vectorizer.width", i32 8}
|
||||
!4 = !{!"llvm.vectorizer.enable", i1 true}
|
||||
|
@ -1434,9 +1434,9 @@ let test_builder () =
|
||||
(* End-of-file checks for things like metdata and attributes.
|
||||
* CHECK: attributes #0 = {{.*}}uwtable{{.*}}
|
||||
* CHECK: !llvm.module.flags = !{!0}
|
||||
* CHECK: !0 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
* CHECK: !1 = metadata !{i32 1, metadata !"metadata test"}
|
||||
* CHECK: !2 = metadata !{i32 2, i32 3, metadata !3, metadata !3}
|
||||
* CHECK: !0 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
* CHECK: !1 = !{i32 1, !"test"}
|
||||
* CHECK: !2 = !{i32 2, i32 3, !3, !3}
|
||||
*)
|
||||
|
||||
(*===-- Pass Managers -----------------------------------------------------===*)
|
||||
|
@ -12,17 +12,17 @@ entry:
|
||||
!llvm.dbg.cu = !{!0}
|
||||
!llvm.module.flags = !{!9}
|
||||
|
||||
!0 = metadata !{metadata !"0x11\0012\00clang version 3.5 (trunk 195495) (llvm/trunk 195495:195504M)\000\00\000\00\000", metadata !1, metadata !2, metadata !2, metadata !3, metadata !2, metadata !2} ; [ DW_TAG_compile_unit ] [/Users/manmanren/llvm_gmail/release/../llvm/tools/clang/test/CodeGen/debug-info-version.c] [DW_LANG_C99]
|
||||
!1 = metadata !{metadata !"../llvm/tools/clang/test/CodeGen/debug-info-version.c", metadata !"/Users/manmanren/llvm_gmail/release"}
|
||||
!2 = metadata !{i32 0}
|
||||
!3 = metadata !{metadata !4}
|
||||
!4 = metadata !{metadata !"0x2e\00main\00main\00\003\000\001\000\006\00256\000\003", metadata !1, metadata !5, metadata !6, null, i32 ()* @main, null, null, metadata !2} ; [ DW_TAG_subprogram ] [line 3] [def] [main]
|
||||
!5 = metadata !{metadata !"0x29", metadata !1} ; [ DW_TAG_file_type ] [/Users/manmanren/llvm_gmail/release/../llvm/tools/clang/test/CodeGen/debug-info-version.c]
|
||||
!6 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", i32 0, null, null, metadata !7, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!7 = metadata !{metadata !8}
|
||||
!8 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc DW_ATE_signed]
|
||||
!9 = metadata !{i32 2, metadata !"Dwarf Version", i32 2}
|
||||
!12 = metadata !{i32 4, i32 0, metadata !4, null}
|
||||
!0 = !{!"0x11\0012\00clang version 3.5 (trunk 195495) (llvm/trunk 195495:195504M)\000\00\000\00\000", !1, !2, !2, !3, !2, !2} ; [ DW_TAG_compile_unit ] [/Users/manmanren/llvm_gmail/release/../llvm/tools/clang/test/CodeGen/debug-info-version.c] [DW_LANG_C99]
|
||||
!1 = !{!"../llvm/tools/clang/test/CodeGen/debug-info-version.c", !"/Users/manmanren/llvm_gmail/release"}
|
||||
!2 = !{i32 0}
|
||||
!3 = !{!4}
|
||||
!4 = !{!"0x2e\00main\00main\00\003\000\001\000\006\00256\000\003", !1, !5, !6, null, i32 ()* @main, null, null, !2} ; [ DW_TAG_subprogram ] [line 3] [def] [main]
|
||||
!5 = !{!"0x29", !1} ; [ DW_TAG_file_type ] [/Users/manmanren/llvm_gmail/release/../llvm/tools/clang/test/CodeGen/debug-info-version.c]
|
||||
!6 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !7, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!7 = !{!8}
|
||||
!8 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc DW_ATE_signed]
|
||||
!9 = !{i32 2, !"Dwarf Version", i32 2}
|
||||
!12 = !{i32 4, i32 0, !4, null}
|
||||
|
||||
; WARN: warning: ignoring debug info with an invalid version (0)
|
||||
; CHECK-NOT: !dbg
|
||||
|
@ -8,7 +8,7 @@
|
||||
define void @foo(i32 %v) {
|
||||
; CHECK: entry:
|
||||
entry:
|
||||
; CHECK-NEXT: call void @llvm.bar(metadata !{i32 %v})
|
||||
; CHECK-NEXT: call void @llvm.bar(metadata i32 %v)
|
||||
call void @llvm.bar(metadata !{i32 %v})
|
||||
|
||||
; Note: these supposedly legal instructions fired an assertion in llvm-as:
|
||||
@ -32,4 +32,4 @@ entry:
|
||||
|
||||
declare void @llvm.bar(metadata)
|
||||
|
||||
; CHECK: !0 = metadata !{}
|
||||
; CHECK: !0 = !{}
|
||||
|
@ -75,11 +75,11 @@ entry:
|
||||
; Named metadata Test
|
||||
; CHECK: !name = !{!0, !1, !2}
|
||||
!name = !{!0, !1, !2}
|
||||
; CHECK: !0 = metadata !{metadata !"zero"}
|
||||
; CHECK: !0 = !{!"zero"}
|
||||
!0 = metadata !{metadata !"zero"}
|
||||
; CHECK: !1 = metadata !{metadata !"one"}
|
||||
; CHECK: !1 = !{!"one"}
|
||||
!1 = metadata !{metadata !"one"}
|
||||
; CHECK: !2 = metadata !{metadata !"two"}
|
||||
; CHECK: !2 = !{!"two"}
|
||||
!2 = metadata !{metadata !"two"}
|
||||
|
||||
|
||||
|
@ -5,5 +5,5 @@
|
||||
|
||||
; CHECK: !name = !{!0}
|
||||
!name = !{!0}
|
||||
; CHECK: !0 = metadata !{metadata !"\80"}
|
||||
!0 = metadata !{metadata !"\80"}
|
||||
; CHECK: !0 = !{!"\80"}
|
||||
!0 = !{!"\80"}
|
||||
|
@ -84,5 +84,5 @@ moduleinfoCtorEntry:
|
||||
}
|
||||
!llvm.ldc.classinfo._D6Object7__ClassZ = !{!0}
|
||||
!llvm.ldc.classinfo._D10ModuleInfo7__ClassZ = !{!1}
|
||||
!0 = metadata !{%object.Object undef, i1 false, i1 false}
|
||||
!1 = metadata !{%object.ModuleInfo undef, i1 false, i1 false}
|
||||
!0 = !{%object.Object undef, i1 false, i1 false}
|
||||
!1 = !{%object.ModuleInfo undef, i1 false, i1 false}
|
||||
|
@ -18,9 +18,9 @@ declare void @llvm.bar(metadata)
|
||||
|
||||
@global = global i32 0
|
||||
|
||||
; CHECK: !0 = metadata !{metadata !1, metadata !2, i32* @global, null}
|
||||
; CHECK: !1 = metadata !{metadata !2, null}
|
||||
; CHECK: !2 = metadata !{}
|
||||
; CHECK: !0 = !{!1, !2, i32* @global, null}
|
||||
; CHECK: !1 = !{!2, null}
|
||||
; CHECK: !2 = !{}
|
||||
!0 = metadata !{metadata !1, metadata !2, i32* @global, null}
|
||||
!1 = metadata !{metadata !2, null}
|
||||
!2 = metadata !{}
|
||||
|
@ -2,5 +2,5 @@
|
||||
; RUN: verify-uselistorder < %s
|
||||
|
||||
!llvm.foo = !{!0}
|
||||
!0 = metadata !{i32 42}
|
||||
!0 = !{i32 42}
|
||||
@my.str = internal constant [4 x i8] c"foo\00"
|
||||
|
@ -27,9 +27,9 @@ for.end: ; preds = %for.cond
|
||||
ret void
|
||||
}
|
||||
|
||||
; CHECK: !{metadata !"llvm.loop.interleave.count", i32 4}
|
||||
; CHECK: !{metadata !"llvm.loop.vectorize.width", i32 8}
|
||||
; CHECK: !{metadata !"llvm.loop.vectorize.enable", i1 true}
|
||||
; CHECK: !{!"llvm.loop.interleave.count", i32 4}
|
||||
; CHECK: !{!"llvm.loop.vectorize.width", i32 8}
|
||||
; CHECK: !{!"llvm.loop.vectorize.enable", i1 true}
|
||||
|
||||
!0 = metadata !{metadata !"clang version 3.5.0 (trunk 211528)"}
|
||||
!1 = metadata !{metadata !1, metadata !2, metadata !3, metadata !4, metadata !4}
|
||||
|
@ -4,7 +4,7 @@
|
||||
; Function Attrs: nounwind
|
||||
define void @_Z4testPiPf(i32* nocapture %pI, float* nocapture %pF) #0 {
|
||||
entry:
|
||||
store i32 0, i32* %pI, align 4, !tbaa !{metadata !"int", metadata !0}
|
||||
store i32 0, i32* %pI, align 4, !tbaa !{!"int", !0}
|
||||
; CHECK: store i32 0, i32* %pI, align 4, !tbaa [[TAG_INT:!.*]]
|
||||
store float 1.000000e+00, float* %pF, align 4, !tbaa !2
|
||||
; CHECK: store float 1.000000e+00, float* %pF, align 4, !tbaa [[TAG_FLOAT:!.*]]
|
||||
@ -13,12 +13,12 @@ entry:
|
||||
|
||||
attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||
|
||||
!0 = metadata !{metadata !"omnipotent char", metadata !1}
|
||||
!1 = metadata !{metadata !"Simple C/C++ TBAA"}
|
||||
!2 = metadata !{metadata !"float", metadata !0}
|
||||
!0 = !{!"omnipotent char", !1}
|
||||
!1 = !{!"Simple C/C++ TBAA"}
|
||||
!2 = !{!"float", !0}
|
||||
|
||||
; CHECK: [[TAG_INT]] = metadata !{metadata [[TYPE_INT:!.*]], metadata [[TYPE_INT]], i64 0}
|
||||
; CHECK: [[TYPE_INT]] = metadata !{metadata !"int", metadata [[TYPE_CHAR:!.*]]}
|
||||
; CHECK: [[TYPE_CHAR]] = metadata !{metadata !"omnipotent char", metadata !{{.*}}
|
||||
; CHECK: [[TAG_FLOAT]] = metadata !{metadata [[TYPE_FLOAT:!.*]], metadata [[TYPE_FLOAT]], i64 0}
|
||||
; CHECK: [[TYPE_FLOAT]] = metadata !{metadata !"float", metadata [[TYPE_CHAR]]}
|
||||
; CHECK: [[TAG_INT]] = !{[[TYPE_INT:!.*]], [[TYPE_INT]], i64 0}
|
||||
; CHECK: [[TYPE_INT]] = !{!"int", [[TYPE_CHAR:!.*]]}
|
||||
; CHECK: [[TYPE_CHAR]] = !{!"omnipotent char", !{{.*}}
|
||||
; CHECK: [[TAG_FLOAT]] = !{[[TYPE_FLOAT:!.*]], [[TYPE_FLOAT]], i64 0}
|
||||
; CHECK: [[TYPE_FLOAT]] = !{!"float", [[TYPE_CHAR]]}
|
||||
|
@ -5,11 +5,11 @@
|
||||
; Bugpoint should keep the call's metadata attached to the call.
|
||||
|
||||
; CHECK: call void @foo(), !dbg ![[LOC:[0-9]+]], !attach ![[CALL:[0-9]+]]
|
||||
; CHECK: ![[LOC]] = metadata !{i32 104, i32 105, metadata ![[SCOPE:[0-9]+]], metadata ![[SCOPE]]}
|
||||
; CHECK: ![[SCOPE]] = metadata !{metadata !"0x11\000\00me\001\00\000\00\000", metadata ![[FILE:[0-9]+]], metadata ![[LIST:[0-9]+]], metadata ![[LIST]], null, null, null}
|
||||
; CHECK: ![[FILE]] = metadata !{metadata !"source.c", metadata !"/dir"}
|
||||
; CHECK: ![[LIST]] = metadata !{i32 0}
|
||||
; CHECK: ![[CALL]] = metadata !{metadata !"the call to foo"}
|
||||
; CHECK: ![[LOC]] = !{i32 104, i32 105, ![[SCOPE:[0-9]+]], ![[SCOPE]]}
|
||||
; CHECK: ![[SCOPE]] = !{!"0x11\000\00me\001\00\000\00\000", ![[FILE:[0-9]+]], ![[LIST:[0-9]+]], ![[LIST]], null, null, null}
|
||||
; CHECK: ![[FILE]] = !{!"source.c", !"/dir"}
|
||||
; CHECK: ![[LIST]] = !{i32 0}
|
||||
; CHECK: ![[CALL]] = !{!"the call to foo"}
|
||||
|
||||
%rust_task = type {}
|
||||
define void @test(i32* %a, i8* %b) {
|
||||
@ -25,18 +25,18 @@ declare void @foo()
|
||||
|
||||
!llvm.module.flags = !{!17}
|
||||
|
||||
!0 = metadata !{metadata !"boring"}
|
||||
!1 = metadata !{metadata !"uninteresting"}
|
||||
!2 = metadata !{metadata !"the call to foo"}
|
||||
!3 = metadata !{metadata !"noise"}
|
||||
!4 = metadata !{metadata !"filler"}
|
||||
!0 = !{!"boring"}
|
||||
!1 = !{!"uninteresting"}
|
||||
!2 = !{!"the call to foo"}
|
||||
!3 = !{!"noise"}
|
||||
!4 = !{!"filler"}
|
||||
|
||||
!9 = metadata !{metadata !"0x11\000\00me\001\00\000\00\000", metadata !15, metadata !16, metadata !16, null, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!10 = metadata !{i32 100, i32 101, metadata !9, metadata !9}
|
||||
!11 = metadata !{i32 102, i32 103, metadata !9, metadata !9}
|
||||
!12 = metadata !{i32 104, i32 105, metadata !9, metadata !9}
|
||||
!13 = metadata !{i32 106, i32 107, metadata !9, metadata !9}
|
||||
!14 = metadata !{i32 108, i32 109, metadata !9, metadata !9}
|
||||
!15 = metadata !{metadata !"source.c", metadata !"/dir"}
|
||||
!16 = metadata !{i32 0}
|
||||
!17 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!9 = !{!"0x11\000\00me\001\00\000\00\000", !15, !16, !16, null, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!10 = !{i32 100, i32 101, !9, !9}
|
||||
!11 = !{i32 102, i32 103, !9, !9}
|
||||
!12 = !{i32 104, i32 105, !9, !9}
|
||||
!13 = !{i32 106, i32 107, !9, !9}
|
||||
!14 = !{i32 108, i32 109, !9, !9}
|
||||
!15 = !{!"source.c", !"/dir"}
|
||||
!16 = !{i32 0}
|
||||
!17 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
@ -16,7 +16,7 @@ for.body: ; preds = %for.body, %entry
|
||||
%add53 = add nsw i64 %n1, 0, !dbg !52
|
||||
%add55 = add nsw i64 %n1, 0, !dbg !53
|
||||
%mul63 = mul nsw i64 %add53, -20995, !dbg !54
|
||||
tail call void @llvm.dbg.value(metadata !{i64 %mul63}, i64 0, metadata !30, metadata !{metadata !"0x102"}), !dbg !55
|
||||
tail call void @llvm.dbg.value(metadata i64 %mul63, i64 0, metadata !30, metadata !{!"0x102"}), !dbg !55
|
||||
%mul65 = mul nsw i64 %add55, -3196, !dbg !56
|
||||
%add67 = add nsw i64 0, %mul65, !dbg !57
|
||||
%add80 = add i64 0, 1024, !dbg !58
|
||||
@ -44,63 +44,63 @@ attributes #1 = { nounwind readnone }
|
||||
!llvm.module.flags = !{!36, !37}
|
||||
!llvm.ident = !{!38}
|
||||
|
||||
!0 = metadata !{metadata !"0x11\0012\00clang version 3.6.0 \001\00\000\00\001", metadata !1, metadata !2, metadata !2, metadata !3, metadata !2, metadata !2} ; [ DW_TAG_compile_unit ] [] [] []
|
||||
!1 = metadata !{metadata !"test.c", metadata !""}
|
||||
!2 = metadata !{}
|
||||
!3 = metadata !{metadata !4}
|
||||
!4 = metadata !{metadata !"0x2e\00\00\00\00140\000\001\000\006\00256\001\00141", metadata !1, metadata !5, metadata !6, null, void ()* @test, null, null, metadata !12} ; [ DW_TAG_subprogram ] [] [] [def] [scope 141] []
|
||||
!5 = metadata !{metadata !"0x29", metadata !1} ; [ DW_TAG_file_type ] [] []
|
||||
!6 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", i32 0, null, null, metadata !7, null, null, null} ; [ DW_TAG_subroutine_type ] [] [] [from ]
|
||||
!7 = metadata !{null, metadata !8}
|
||||
!8 = metadata !{metadata !"0xf\00\000\0064\0064\000\000", null, null, metadata !9} ; [ DW_TAG_pointer_type ] [] [] []
|
||||
!9 = metadata !{metadata !"0x16\00\0030\000\000\000\000", metadata !10, null, metadata !11} ; [ DW_TAG_typedef ] [] [] [] [from int]
|
||||
!10 = metadata !{metadata !"", metadata !""}
|
||||
!11 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [] [int] []
|
||||
!12 = metadata !{metadata !13, metadata !14, metadata !18, metadata !19, metadata !20, metadata !21, metadata !22, metadata !23, metadata !24, metadata !25, metadata !26, metadata !27, metadata !28, metadata !29, metadata !30, metadata !31, metadata !32, metadata !33, metadata !34, metadata !35}
|
||||
!13 = metadata !{metadata !"0x101\00\0016777356\000", metadata !4, metadata !5, metadata !8} ; [ DW_TAG_arg_variable ] [] [data] []
|
||||
!14 = metadata !{metadata !"0x100\00\00142\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!15 = metadata !{metadata !"0x16\00\00183\000\000\000\000", metadata !16, null, metadata !17} ; [ DW_TAG_typedef ] [] [INT32] [] [from long int]
|
||||
!16 = metadata !{metadata !"", metadata !""}
|
||||
!17 = metadata !{metadata !"0x24\00\000\0064\0064\000\000\005", null, null} ; [ DW_TAG_base_type ] [] [long int] []
|
||||
!18 = metadata !{metadata !"0x100\00\00142\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!19 = metadata !{metadata !"0x100\00\00142\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!20 = metadata !{metadata !"0x100\00\00142\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!21 = metadata !{metadata !"0x100\00\00142\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!22 = metadata !{metadata !"0x100\00\00142\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!23 = metadata !{metadata !"0x100\00\00142\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!24 = metadata !{metadata !"0x100\00\00142\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!25 = metadata !{metadata !"0x100\00\00143\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!26 = metadata !{metadata !"0x100\00\00143\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!27 = metadata !{metadata !"0x100\00\00143\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!28 = metadata !{metadata !"0x100\00\00143\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!29 = metadata !{metadata !"0x100\00\00144\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!30 = metadata !{metadata !"0x100\00\00144\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!31 = metadata !{metadata !"0x100\00\00144\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!32 = metadata !{metadata !"0x100\00\00144\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!33 = metadata !{metadata !"0x100\00\00144\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!34 = metadata !{metadata !"0x100\00\00145\000", metadata !4, metadata !5, metadata !8} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!35 = metadata !{metadata !"0x100\00\00146\000", metadata !4, metadata !5, metadata !11} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!36 = metadata !{i32 2, metadata !"Dwarf Version", i32 4}
|
||||
!37 = metadata !{i32 2, metadata !"Debug Info Version", i32 2}
|
||||
!38 = metadata !{metadata !"clang version 3.6.0 "}
|
||||
!39 = metadata !{i32 154, i32 8, metadata !40, null}
|
||||
!40 = metadata !{metadata !"0xb\00154\008\002", metadata !1, metadata !41} ; [ DW_TAG_lexical_block ] [ ] []
|
||||
!41 = metadata !{metadata !"0xb\00154\008\001", metadata !1, metadata !42} ; [ DW_TAG_lexical_block ] [ ] []
|
||||
!42 = metadata !{metadata !"0xb\00154\003\000", metadata !1, metadata !4} ; [ DW_TAG_lexical_block ] [ ] []
|
||||
!43 = metadata !{i32 157, i32 5, metadata !44, null}
|
||||
!44 = metadata !{metadata !"0xb\00154\0042\000", metadata !1, metadata !42} ; [ DW_TAG_lexical_block ] [ ] []
|
||||
!45 = metadata !{i32 159, i32 5, metadata !44, null}
|
||||
!46 = metadata !{metadata !47, metadata !47, i64 0}
|
||||
!47 = metadata !{metadata !"int", metadata !48, i64 0}
|
||||
!48 = metadata !{metadata !"omnipotent char", metadata !49, i64 0}
|
||||
!49 = metadata !{metadata !"Simple C/C++ TBAA"}
|
||||
!50 = metadata !{i32 160, i32 5, metadata !44, null}
|
||||
!51 = metadata !{i32 161, i32 5, metadata !44, null}
|
||||
!52 = metadata !{i32 188, i32 5, metadata !44, null}
|
||||
!53 = metadata !{i32 190, i32 5, metadata !44, null}
|
||||
!54 = metadata !{i32 198, i32 5, metadata !44, null}
|
||||
!55 = metadata !{i32 144, i32 13, metadata !4, null}
|
||||
!56 = metadata !{i32 200, i32 5, metadata !44, null}
|
||||
!57 = metadata !{i32 203, i32 5, metadata !44, null}
|
||||
!58 = metadata !{i32 207, i32 5, metadata !44, null}
|
||||
!59 = metadata !{i32 208, i32 5, metadata !44, null}
|
||||
!0 = !{!"0x11\0012\00clang version 3.6.0 \001\00\000\00\001", !1, !2, !2, !3, !2, !2} ; [ DW_TAG_compile_unit ] [] [] []
|
||||
!1 = !{!"test.c", !""}
|
||||
!2 = !{}
|
||||
!3 = !{!4}
|
||||
!4 = !{!"0x2e\00\00\00\00140\000\001\000\006\00256\001\00141", !1, !5, !6, null, void ()* @test, null, null, !12} ; [ DW_TAG_subprogram ] [] [] [def] [scope 141] []
|
||||
!5 = !{!"0x29", !1} ; [ DW_TAG_file_type ] [] []
|
||||
!6 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !7, null, null, null} ; [ DW_TAG_subroutine_type ] [] [] [from ]
|
||||
!7 = !{null, !8}
|
||||
!8 = !{!"0xf\00\000\0064\0064\000\000", null, null, !9} ; [ DW_TAG_pointer_type ] [] [] []
|
||||
!9 = !{!"0x16\00\0030\000\000\000\000", !10, null, !11} ; [ DW_TAG_typedef ] [] [] [] [from int]
|
||||
!10 = !{!"", !""}
|
||||
!11 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [] [int] []
|
||||
!12 = !{!13, !14, !18, !19, !20, !21, !22, !23, !24, !25, !26, !27, !28, !29, !30, !31, !32, !33, !34, !35}
|
||||
!13 = !{!"0x101\00\0016777356\000", !4, !5, !8} ; [ DW_TAG_arg_variable ] [] [data] []
|
||||
!14 = !{!"0x100\00\00142\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!15 = !{!"0x16\00\00183\000\000\000\000", !16, null, !17} ; [ DW_TAG_typedef ] [] [INT32] [] [from long int]
|
||||
!16 = !{!"", !""}
|
||||
!17 = !{!"0x24\00\000\0064\0064\000\000\005", null, null} ; [ DW_TAG_base_type ] [] [long int] []
|
||||
!18 = !{!"0x100\00\00142\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!19 = !{!"0x100\00\00142\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!20 = !{!"0x100\00\00142\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!21 = !{!"0x100\00\00142\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!22 = !{!"0x100\00\00142\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!23 = !{!"0x100\00\00142\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [] [] []
|
||||
!24 = !{!"0x100\00\00142\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!25 = !{!"0x100\00\00143\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!26 = !{!"0x100\00\00143\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!27 = !{!"0x100\00\00143\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!28 = !{!"0x100\00\00143\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!29 = !{!"0x100\00\00144\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!30 = !{!"0x100\00\00144\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!31 = !{!"0x100\00\00144\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!32 = !{!"0x100\00\00144\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!33 = !{!"0x100\00\00144\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!34 = !{!"0x100\00\00145\000", !4, !5, !8} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!35 = !{!"0x100\00\00146\000", !4, !5, !11} ; [ DW_TAG_auto_variable ] [ ] [] []
|
||||
!36 = !{i32 2, !"Dwarf Version", i32 4}
|
||||
!37 = !{i32 2, !"Debug Info Version", i32 2}
|
||||
!38 = !{!"clang version 3.6.0 "}
|
||||
!39 = !{i32 154, i32 8, !40, null}
|
||||
!40 = !{!"0xb\00154\008\002", !1, !41} ; [ DW_TAG_lexical_block ] [ ] []
|
||||
!41 = !{!"0xb\00154\008\001", !1, !42} ; [ DW_TAG_lexical_block ] [ ] []
|
||||
!42 = !{!"0xb\00154\003\000", !1, !4} ; [ DW_TAG_lexical_block ] [ ] []
|
||||
!43 = !{i32 157, i32 5, !44, null}
|
||||
!44 = !{!"0xb\00154\0042\000", !1, !42} ; [ DW_TAG_lexical_block ] [ ] []
|
||||
!45 = !{i32 159, i32 5, !44, null}
|
||||
!46 = !{!47, !47, i64 0}
|
||||
!47 = !{!"int", !48, i64 0}
|
||||
!48 = !{!"omnipotent char", !49, i64 0}
|
||||
!49 = !{!"Simple C/C++ TBAA"}
|
||||
!50 = !{i32 160, i32 5, !44, null}
|
||||
!51 = !{i32 161, i32 5, !44, null}
|
||||
!52 = !{i32 188, i32 5, !44, null}
|
||||
!53 = !{i32 190, i32 5, !44, null}
|
||||
!54 = !{i32 198, i32 5, !44, null}
|
||||
!55 = !{i32 144, i32 13, !4, null}
|
||||
!56 = !{i32 200, i32 5, !44, null}
|
||||
!57 = !{i32 203, i32 5, !44, null}
|
||||
!58 = !{i32 207, i32 5, !44, null}
|
||||
!59 = !{i32 208, i32 5, !44, null}
|
||||
|
@ -7,8 +7,8 @@ declare void @test_true()
|
||||
declare void @test_false()
|
||||
|
||||
; !0 corresponds to a branch being taken, !1 to not being takne.
|
||||
!0 = metadata !{metadata !"branch_weights", i32 64, i32 4}
|
||||
!1 = metadata !{metadata !"branch_weights", i32 4, i32 64}
|
||||
!0 = !{!"branch_weights", i32 64, i32 4}
|
||||
!1 = !{!"branch_weights", i32 4, i32 64}
|
||||
|
||||
define void @test_Bcc_fallthrough_taken(i32 %in) nounwind {
|
||||
; CHECK-LABEL: test_Bcc_fallthrough_taken:
|
||||
|
@ -11,7 +11,7 @@ if.then24: ; preds = %entry
|
||||
unreachable
|
||||
|
||||
if.else295: ; preds = %entry
|
||||
call void @llvm.dbg.declare(metadata !{i32* %do_tab_convert}, metadata !16, metadata !{metadata !"0x102"}), !dbg !18
|
||||
call void @llvm.dbg.declare(metadata i32* %do_tab_convert, metadata !16, metadata !{!"0x102"}), !dbg !18
|
||||
store i32 0, i32* %do_tab_convert, align 4, !dbg !19
|
||||
unreachable
|
||||
}
|
||||
@ -21,25 +21,25 @@ declare void @llvm.dbg.declare(metadata, metadata, metadata) nounwind readnone
|
||||
!llvm.dbg.gv = !{!0}
|
||||
!llvm.dbg.sp = !{!1, !7, !10, !11, !12}
|
||||
|
||||
!0 = metadata !{metadata !"0x34\00vsplive\00vsplive\00\00617\001\001", metadata !1, metadata !2, metadata !6, null, null} ; [ DW_TAG_variable ]
|
||||
!1 = metadata !{metadata !"0x2e\00drt_vsprintf\00drt_vsprintf\00\00616\000\001\000\006\00256\000\000", metadata !20, metadata !2, metadata !4, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!2 = metadata !{metadata !"0x29", metadata !20} ; [ DW_TAG_file_type ]
|
||||
!3 = metadata !{metadata !"0x11\0012\00clang version 3.0 (http://llvm.org/git/clang.git git:/git/puzzlebox/clang.git/ c4d1aea01c4444eb81bdbf391f1be309127c3cf1)\001\00\000\00\000", metadata !20, metadata !21, metadata !21, null, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!4 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !20, metadata !2, null, metadata !5, i32 0} ; [ DW_TAG_subroutine_type ]
|
||||
!5 = metadata !{metadata !6}
|
||||
!6 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, metadata !3} ; [ DW_TAG_base_type ]
|
||||
!7 = metadata !{metadata !"0x2e\00putc_mem\00putc_mem\00\0030\001\001\000\006\00256\000\000", metadata !20, metadata !2, metadata !8, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!8 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !20, metadata !2, null, metadata !9, i32 0} ; [ DW_TAG_subroutine_type ]
|
||||
!9 = metadata !{null}
|
||||
!10 = metadata !{metadata !"0x2e\00print_double\00print_double\00\00203\001\001\000\006\00256\000\000", metadata !20, metadata !2, metadata !4, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!11 = metadata !{metadata !"0x2e\00print_number\00print_number\00\0075\001\001\000\006\00256\000\000", metadata !20, metadata !2, metadata !4, i32 0, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!12 = metadata !{metadata !"0x2e\00get_flags\00get_flags\00\00508\001\001\000\006\00256\000\000", metadata !20, metadata !2, metadata !8, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!13 = metadata !{i32 653, i32 5, metadata !14, null}
|
||||
!14 = metadata !{metadata !"0xb\00652\0035\002", metadata !20, metadata !15} ; [ DW_TAG_lexical_block ]
|
||||
!15 = metadata !{metadata !"0xb\00616\001\000", metadata !20, metadata !1} ; [ DW_TAG_lexical_block ]
|
||||
!16 = metadata !{metadata !"0x100\00do_tab_convert\00853\000", metadata !17, metadata !2, metadata !6} ; [ DW_TAG_auto_variable ]
|
||||
!17 = metadata !{metadata !"0xb\00850\0012\0033", metadata !20, metadata !14} ; [ DW_TAG_lexical_block ]
|
||||
!18 = metadata !{i32 853, i32 11, metadata !17, null}
|
||||
!19 = metadata !{i32 853, i32 29, metadata !17, null}
|
||||
!20 = metadata !{metadata !"print.i", metadata !"/Volumes/Ebi/echeng/radars/r9146594"}
|
||||
!21 = metadata !{i32 0}
|
||||
!0 = !{!"0x34\00vsplive\00vsplive\00\00617\001\001", !1, !2, !6, null, null} ; [ DW_TAG_variable ]
|
||||
!1 = !{!"0x2e\00drt_vsprintf\00drt_vsprintf\00\00616\000\001\000\006\00256\000\000", !20, !2, !4, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!2 = !{!"0x29", !20} ; [ DW_TAG_file_type ]
|
||||
!3 = !{!"0x11\0012\00clang version 3.0 (http://llvm.org/git/clang.git git:/git/puzzlebox/clang.git/ c4d1aea01c4444eb81bdbf391f1be309127c3cf1)\001\00\000\00\000", !20, !21, !21, null, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!4 = !{!"0x15\00\000\000\000\000\000\000", !20, !2, null, !5, i32 0} ; [ DW_TAG_subroutine_type ]
|
||||
!5 = !{!6}
|
||||
!6 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !3} ; [ DW_TAG_base_type ]
|
||||
!7 = !{!"0x2e\00putc_mem\00putc_mem\00\0030\001\001\000\006\00256\000\000", !20, !2, !8, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!8 = !{!"0x15\00\000\000\000\000\000\000", !20, !2, null, !9, i32 0} ; [ DW_TAG_subroutine_type ]
|
||||
!9 = !{null}
|
||||
!10 = !{!"0x2e\00print_double\00print_double\00\00203\001\001\000\006\00256\000\000", !20, !2, !4, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!11 = !{!"0x2e\00print_number\00print_number\00\0075\001\001\000\006\00256\000\000", !20, !2, !4, i32 0, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!12 = !{!"0x2e\00get_flags\00get_flags\00\00508\001\001\000\006\00256\000\000", !20, !2, !8, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!13 = !{i32 653, i32 5, !14, null}
|
||||
!14 = !{!"0xb\00652\0035\002", !20, !15} ; [ DW_TAG_lexical_block ]
|
||||
!15 = !{!"0xb\00616\001\000", !20, !1} ; [ DW_TAG_lexical_block ]
|
||||
!16 = !{!"0x100\00do_tab_convert\00853\000", !17, !2, !6} ; [ DW_TAG_auto_variable ]
|
||||
!17 = !{!"0xb\00850\0012\0033", !20, !14} ; [ DW_TAG_lexical_block ]
|
||||
!18 = !{i32 853, i32 11, !17, null}
|
||||
!19 = !{i32 853, i32 29, !17, null}
|
||||
!20 = !{!"print.i", !"/Volumes/Ebi/echeng/radars/r9146594"}
|
||||
!21 = !{i32 0}
|
||||
|
@ -43,8 +43,8 @@ entry:
|
||||
|
||||
!llvm.module.flags = !{!0, !1, !2, !3}
|
||||
|
||||
!0 = metadata !{i32 1, metadata !"Objective-C Version", i32 2}
|
||||
!1 = metadata !{i32 1, metadata !"Objective-C Image Info Version", i32 0}
|
||||
!2 = metadata !{i32 1, metadata !"Objective-C Image Info Section", metadata !"__DATA, __objc_imageinfo, regular, no_dead_strip"}
|
||||
!3 = metadata !{i32 4, metadata !"Objective-C Garbage Collection", i32 0}
|
||||
!4 = metadata !{}
|
||||
!0 = !{i32 1, !"Objective-C Version", i32 2}
|
||||
!1 = !{i32 1, !"Objective-C Image Info Version", i32 0}
|
||||
!2 = !{i32 1, !"Objective-C Image Info Section", !"__DATA, __objc_imageinfo, regular, no_dead_strip"}
|
||||
!3 = !{i32 4, !"Objective-C Garbage Collection", i32 0}
|
||||
!4 = !{}
|
||||
|
@ -61,7 +61,7 @@ entry:
|
||||
|
||||
!llvm.module.flags = !{!0, !1, !2, !3}
|
||||
|
||||
!0 = metadata !{i32 1, metadata !"Objective-C Version", i32 2}
|
||||
!1 = metadata !{i32 1, metadata !"Objective-C Image Info Version", i32 0}
|
||||
!2 = metadata !{i32 1, metadata !"Objective-C Image Info Section", metadata !"__DATA, __objc_imageinfo, regular, no_dead_strip"}
|
||||
!3 = metadata !{i32 4, metadata !"Objective-C Garbage Collection", i32 0}
|
||||
!0 = !{i32 1, !"Objective-C Version", i32 2}
|
||||
!1 = !{i32 1, !"Objective-C Image Info Version", i32 0}
|
||||
!2 = !{i32 1, !"Objective-C Image Info Section", !"__DATA, __objc_imageinfo, regular, no_dead_strip"}
|
||||
!3 = !{i32 4, !"Objective-C Garbage Collection", i32 0}
|
||||
|
@ -527,8 +527,8 @@ attributes #3 = { nounwind "fp-contract-model"="standard" "relocation-model"="pi
|
||||
attributes #4 = { nounwind }
|
||||
attributes #5 = { nobuiltin }
|
||||
|
||||
!0 = metadata !{metadata !"int", metadata !1}
|
||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
||||
!3 = metadata !{metadata !"short", metadata !1}
|
||||
!4 = metadata !{i64 0, i64 4, metadata !0, i64 4, i64 2, metadata !3, i64 8, i64 4, metadata !0, i64 12, i64 2, metadata !3, i64 16, i64 4, metadata !0, i64 20, i64 2, metadata !3}
|
||||
!0 = !{!"int", !1}
|
||||
!1 = !{!"omnipotent char", !2}
|
||||
!2 = !{!"Simple C/C++ TBAA"}
|
||||
!3 = !{!"short", !1}
|
||||
!4 = !{i64 0, i64 4, !0, i64 4, i64 2, !3, i64 8, i64 4, !0, i64 12, i64 2, !3, i64 16, i64 4, !0, i64 20, i64 2, !3}
|
||||
|
@ -184,7 +184,7 @@ declare hidden fastcc i32 @Maze1Mech(i64, i64, i64, i64, i64, i32, i32) nounwind
|
||||
; Materializable
|
||||
declare hidden fastcc void @CleanNet(i64) nounwind ssp
|
||||
|
||||
!0 = metadata !{metadata !"long", metadata !1}
|
||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
||||
!3 = metadata !{metadata !"any pointer", metadata !1}
|
||||
!0 = !{!"long", !1}
|
||||
!1 = !{!"omnipotent char", !2}
|
||||
!2 = !{!"Simple C/C++ TBAA"}
|
||||
!3 = !{!"any pointer", !1}
|
||||
|
@ -19,6 +19,6 @@ define internal fastcc void @callee(i32* nocapture %p, i32 %a) nounwind optsize
|
||||
ret void
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !"int", metadata !1}
|
||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
||||
!0 = !{!"int", !1}
|
||||
!1 = !{!"omnipotent char", !2}
|
||||
!2 = !{!"Simple C/C++ TBAA"}
|
||||
|
@ -72,8 +72,8 @@ entry:
|
||||
|
||||
!llvm.module.flags = !{!0, !1, !2, !3}
|
||||
|
||||
!0 = metadata !{i32 1, metadata !"Objective-C Version", i32 2}
|
||||
!1 = metadata !{i32 1, metadata !"Objective-C Image Info Version", i32 0}
|
||||
!2 = metadata !{i32 1, metadata !"Objective-C Image Info Section", metadata !"__DATA, __objc_imageinfo, regular, no_dead_strip"}
|
||||
!3 = metadata !{i32 4, metadata !"Objective-C Garbage Collection", i32 0}
|
||||
!4 = metadata !{}
|
||||
!0 = !{i32 1, !"Objective-C Version", i32 2}
|
||||
!1 = !{i32 1, !"Objective-C Image Info Version", i32 0}
|
||||
!2 = !{i32 1, !"Objective-C Image Info Section", !"__DATA, __objc_imageinfo, regular, no_dead_strip"}
|
||||
!3 = !{i32 4, !"Objective-C Garbage Collection", i32 0}
|
||||
!4 = !{}
|
||||
|
@ -34,7 +34,7 @@ declare i64 @llvm.objectsize.i64.p0i8(i8*, i1) #1
|
||||
attributes #0 = { nounwind ssp "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||
attributes #1 = { nounwind readnone }
|
||||
|
||||
!1 = metadata !{metadata !2, metadata !2, i64 0}
|
||||
!2 = metadata !{metadata !"double", metadata !3, i64 0}
|
||||
!3 = metadata !{metadata !"omnipotent char", metadata !4, i64 0}
|
||||
!4 = metadata !{metadata !"Simple C/C++ TBAA"}
|
||||
!1 = !{!2, !2, i64 0}
|
||||
!2 = !{!"double", !3, i64 0}
|
||||
!3 = !{!"omnipotent char", !4, i64 0}
|
||||
!4 = !{!"Simple C/C++ TBAA"}
|
||||
|
@ -11,4 +11,4 @@ entry:
|
||||
|
||||
declare i32 @llvm.read_register.i32(metadata) nounwind
|
||||
|
||||
!0 = metadata !{metadata !"x5\00"}
|
||||
!0 = !{!"x5\00"}
|
||||
|
@ -10,4 +10,4 @@ entry:
|
||||
|
||||
declare i32 @llvm.read_register.i32(metadata) nounwind
|
||||
|
||||
!0 = metadata !{metadata !"notareg\00"}
|
||||
!0 = !{!"notareg\00"}
|
||||
|
@ -117,7 +117,7 @@ entry:
|
||||
|
||||
declare void @llvm.prefetch(i8* nocapture, i32, i32, i32) nounwind
|
||||
|
||||
!0 = metadata !{metadata !"int", metadata !1}
|
||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
||||
!2 = metadata !{metadata !"Simple C/C++ TBAA"}
|
||||
!3 = metadata !{metadata !"any pointer", metadata !1}
|
||||
!0 = !{!"int", !1}
|
||||
!1 = !{!"omnipotent char", !2}
|
||||
!2 = !{!"Simple C/C++ TBAA"}
|
||||
!3 = !{!"any pointer", !1}
|
||||
|
@ -21,4 +21,4 @@ declare void @llvm.write_register.i64(metadata, i64) nounwind
|
||||
|
||||
; register unsigned long current_stack_pointer asm("sp");
|
||||
; CHECK-NOT: .asciz "sp"
|
||||
!0 = metadata !{metadata !"sp\00"}
|
||||
!0 = !{!"sp\00"}
|
||||
|
@ -22,10 +22,10 @@ attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"=
|
||||
|
||||
!llvm.ident = !{!0}
|
||||
|
||||
!0 = metadata !{metadata !"clang version 3.6.0 "}
|
||||
!1 = metadata !{metadata !2, metadata !2, i64 0}
|
||||
!2 = metadata !{metadata !"any pointer", metadata !3, i64 0}
|
||||
!3 = metadata !{metadata !"omnipotent char", metadata !4, i64 0}
|
||||
!4 = metadata !{metadata !"Simple C/C++ TBAA"}
|
||||
!5 = metadata !{metadata !6, metadata !6, i64 0}
|
||||
!6 = metadata !{metadata !"int", metadata !3, i64 0}
|
||||
!0 = !{!"clang version 3.6.0 "}
|
||||
!1 = !{!2, !2, i64 0}
|
||||
!2 = !{!"any pointer", !3, i64 0}
|
||||
!3 = !{!"omnipotent char", !4, i64 0}
|
||||
!4 = !{!"Simple C/C++ TBAA"}
|
||||
!5 = !{!6, !6, i64 0}
|
||||
!6 = !{!"int", !3, i64 0}
|
||||
|
@ -8,5 +8,5 @@ target triple = "aarch64--linux-gnu"
|
||||
|
||||
!llvm.ident = !{!0}
|
||||
|
||||
!0 = metadata !{metadata !"some LLVM version"}
|
||||
!0 = !{!"some LLVM version"}
|
||||
|
||||
|
@ -38,5 +38,5 @@ bb4:
|
||||
|
||||
declare i64 @bar()
|
||||
|
||||
!0 = metadata !{metadata !"branch_weights", i32 5128, i32 32}
|
||||
!1 = metadata !{metadata !"branch_weights", i32 1024, i32 4136}
|
||||
!0 = !{!"branch_weights", i32 5128, i32 32}
|
||||
!1 = !{!"branch_weights", i32 1024, i32 4136}
|
||||
|
@ -16,4 +16,4 @@ success:
|
||||
ret i64 0
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !"branch_weights", i32 0, i32 2147483647}
|
||||
!0 = !{!"branch_weights", i32 0, i32 2147483647}
|
||||
|
@ -291,5 +291,5 @@ bb2:
|
||||
ret i32 0
|
||||
}
|
||||
|
||||
!0 = metadata !{metadata !"branch_weights", i32 0, i32 2147483647}
|
||||
!1 = metadata !{metadata !"branch_weights", i32 2147483647, i32 0}
|
||||
!0 = !{!"branch_weights", i32 0, i32 2147483647}
|
||||
!1 = !{!"branch_weights", i32 2147483647, i32 0}
|
||||
|
@ -271,27 +271,27 @@ return:
|
||||
%retval.0 = phi i32 [ 0, %entry ], [ 1, %land.lhs.true52 ], [ 1, %land.lhs.true43 ], [ 0, %if.else123 ], [ 1, %while.cond59.preheader ], [ 1, %while.cond95.preheader ], [ 1, %while.cond130.preheader ], [ 1, %land.lhs.true28 ], [ 1, %if.then83 ], [ 0, %lor.lhs.false74 ], [ 1, %land.rhs ], [ 1, %if.then117 ], [ 0, %while.body104 ], [ 1, %land.rhs99 ], [ 1, %if.then152 ], [ 0, %while.body139 ], [ 1, %land.rhs134 ], [ 0, %while.body ]
|
||||
ret i32 %retval.0
|
||||
}
|
||||
!181 = metadata !{metadata !"branch_weights", i32 662038, i32 1}
|
||||
!988 = metadata !{metadata !"branch_weights", i32 12091450, i32 1916}
|
||||
!989 = metadata !{metadata !"branch_weights", i32 7564670, i32 4526781}
|
||||
!990 = metadata !{metadata !"branch_weights", i32 7484958, i32 13283499}
|
||||
!991 = metadata !{metadata !"branch_weights", i32 8677007, i32 4606493}
|
||||
!992 = metadata !{metadata !"branch_weights", i32 -1172426948, i32 145094705}
|
||||
!993 = metadata !{metadata !"branch_weights", i32 1468914, i32 5683688}
|
||||
!994 = metadata !{metadata !"branch_weights", i32 114025221, i32 -1217548794, i32 -1199521551, i32 87712616}
|
||||
!995 = metadata !{metadata !"branch_weights", i32 1853716452, i32 -444717951, i32 932776759}
|
||||
!996 = metadata !{metadata !"branch_weights", i32 1004870, i32 20259}
|
||||
!997 = metadata !{metadata !"branch_weights", i32 20071, i32 189}
|
||||
!998 = metadata !{metadata !"branch_weights", i32 -1020255939, i32 572177766}
|
||||
!999 = metadata !{metadata !"branch_weights", i32 2666513, i32 3466431}
|
||||
!1000 = metadata !{metadata !"branch_weights", i32 5117635, i32 1859780}
|
||||
!1001 = metadata !{metadata !"branch_weights", i32 354902465, i32 -1444604407}
|
||||
!1002 = metadata !{metadata !"branch_weights", i32 -1762419279, i32 1592770684}
|
||||
!1003 = metadata !{metadata !"branch_weights", i32 1435905930, i32 -1951930624}
|
||||
!1004 = metadata !{metadata !"branch_weights", i32 1, i32 504888}
|
||||
!1005 = metadata !{metadata !"branch_weights", i32 94662, i32 504888}
|
||||
!1006 = metadata !{metadata !"branch_weights", i32 -1897793104, i32 160196332}
|
||||
!1007 = metadata !{metadata !"branch_weights", i32 2074643678, i32 -29579071}
|
||||
!1008 = metadata !{metadata !"branch_weights", i32 1, i32 226163}
|
||||
!1009 = metadata !{metadata !"branch_weights", i32 58357, i32 226163}
|
||||
!1010 = metadata !{metadata !"branch_weights", i32 -2072848646, i32 92907517}
|
||||
!181 = !{!"branch_weights", i32 662038, i32 1}
|
||||
!988 = !{!"branch_weights", i32 12091450, i32 1916}
|
||||
!989 = !{!"branch_weights", i32 7564670, i32 4526781}
|
||||
!990 = !{!"branch_weights", i32 7484958, i32 13283499}
|
||||
!991 = !{!"branch_weights", i32 8677007, i32 4606493}
|
||||
!992 = !{!"branch_weights", i32 -1172426948, i32 145094705}
|
||||
!993 = !{!"branch_weights", i32 1468914, i32 5683688}
|
||||
!994 = !{!"branch_weights", i32 114025221, i32 -1217548794, i32 -1199521551, i32 87712616}
|
||||
!995 = !{!"branch_weights", i32 1853716452, i32 -444717951, i32 932776759}
|
||||
!996 = !{!"branch_weights", i32 1004870, i32 20259}
|
||||
!997 = !{!"branch_weights", i32 20071, i32 189}
|
||||
!998 = !{!"branch_weights", i32 -1020255939, i32 572177766}
|
||||
!999 = !{!"branch_weights", i32 2666513, i32 3466431}
|
||||
!1000 = !{!"branch_weights", i32 5117635, i32 1859780}
|
||||
!1001 = !{!"branch_weights", i32 354902465, i32 -1444604407}
|
||||
!1002 = !{!"branch_weights", i32 -1762419279, i32 1592770684}
|
||||
!1003 = !{!"branch_weights", i32 1435905930, i32 -1951930624}
|
||||
!1004 = !{!"branch_weights", i32 1, i32 504888}
|
||||
!1005 = !{!"branch_weights", i32 94662, i32 504888}
|
||||
!1006 = !{!"branch_weights", i32 -1897793104, i32 160196332}
|
||||
!1007 = !{!"branch_weights", i32 2074643678, i32 -29579071}
|
||||
!1008 = !{!"branch_weights", i32 1, i32 226163}
|
||||
!1009 = !{!"branch_weights", i32 58357, i32 226163}
|
||||
!1010 = !{!"branch_weights", i32 -2072848646, i32 92907517}
|
||||
|
@ -9,7 +9,7 @@ entry:
|
||||
br label %do.body, !dbg !0
|
||||
|
||||
do.body: ; preds = %entry
|
||||
call void @llvm.dbg.declare(metadata !{i32* %count_}, metadata !4, metadata !{metadata !"0x102"})
|
||||
call void @llvm.dbg.declare(metadata i32* %count_, metadata !4, metadata !{!"0x102"})
|
||||
%conv = ptrtoint i32* %count_ to i32, !dbg !0 ; <i32> [#uses=1]
|
||||
%call = call i32 @foo(i32 %conv) ssp, !dbg !0 ; <i32> [#uses=0]
|
||||
br label %do.end, !dbg !0
|
||||
@ -22,13 +22,13 @@ declare void @llvm.dbg.declare(metadata, metadata, metadata) nounwind readnone
|
||||
|
||||
declare i32 @foo(i32) ssp
|
||||
|
||||
!0 = metadata !{i32 5, i32 2, metadata !1, null}
|
||||
!1 = metadata !{metadata !"0xb\001\001\000", null, metadata !2}; [DW_TAG_lexical_block ]
|
||||
!2 = metadata !{metadata !"0x2e\00bar\00bar\00bar\004\000\001\000\006\000\000\000", i32 0, metadata !3, null, null, null, null, null, null}; [DW_TAG_subprogram ]
|
||||
!3 = metadata !{metadata !"0x11\0012\00clang 1.1\001\00\000\00\000", metadata !8, null, metadata !9, null, null, null}; [DW_TAG_compile_unit ]
|
||||
!4 = metadata !{metadata !"0x100\00count_\005\000", metadata !5, metadata !3, metadata !6}; [ DW_TAG_auto_variable ]
|
||||
!5 = metadata !{metadata !"0xb\001\001\000", null, metadata !1}; [DW_TAG_lexical_block ]
|
||||
!6 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, metadata !3}; [DW_TAG_base_type ]
|
||||
!7 = metadata !{i32 6, i32 1, metadata !2, null}
|
||||
!8 = metadata !{metadata !"genmodes.i", metadata !"/Users/yash/Downloads"}
|
||||
!9 = metadata !{i32 0}
|
||||
!0 = !{i32 5, i32 2, !1, null}
|
||||
!1 = !{!"0xb\001\001\000", null, !2}; [DW_TAG_lexical_block ]
|
||||
!2 = !{!"0x2e\00bar\00bar\00bar\004\000\001\000\006\000\000\000", i32 0, !3, null, null, null, null, null, null}; [DW_TAG_subprogram ]
|
||||
!3 = !{!"0x11\0012\00clang 1.1\001\00\000\00\000", !8, null, !9, null, null, null}; [DW_TAG_compile_unit ]
|
||||
!4 = !{!"0x100\00count_\005\000", !5, !3, !6}; [ DW_TAG_auto_variable ]
|
||||
!5 = !{!"0xb\001\001\000", null, !1}; [DW_TAG_lexical_block ]
|
||||
!6 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !3}; [DW_TAG_base_type ]
|
||||
!7 = !{i32 6, i32 1, !2, null}
|
||||
!8 = !{!"genmodes.i", !"/Users/yash/Downloads"}
|
||||
!9 = !{i32 0}
|
||||
|
@ -5,7 +5,7 @@ target triple = "armv4t-apple-darwin10"
|
||||
|
||||
define hidden i32 @__addvsi3(i32 %a, i32 %b) nounwind {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %b}, i64 0, metadata !0, metadata !{metadata !"0x102"})
|
||||
tail call void @llvm.dbg.value(metadata i32 %b, i64 0, metadata !0, metadata !{!"0x102"})
|
||||
%0 = add nsw i32 %b, %a, !dbg !9 ; <i32> [#uses=1]
|
||||
ret i32 %0, !dbg !11
|
||||
}
|
||||
@ -14,19 +14,19 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon
|
||||
|
||||
!llvm.dbg.cu = !{!3}
|
||||
!llvm.module.flags = !{!15}
|
||||
!0 = metadata !{metadata !"0x101\00b\0093\000", metadata !1, metadata !2, metadata !6} ; [ DW_TAG_arg_variable ]
|
||||
!1 = metadata !{metadata !"0x2e\00__addvsi3\00__addvsi3\00__addvsi3\0094\000\001\000\006\000\000\000", metadata !12, null, metadata !4, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!2 = metadata !{metadata !"0x29", metadata !12} ; [ DW_TAG_file_type ]
|
||||
!12 = metadata !{metadata !"libgcc2.c", metadata !"/Users/bwilson/local/nightly/test-2010-04-14/build/llvmgcc.roots/llvmgcc~obj/src/gcc"}
|
||||
!3 = metadata !{metadata !"0x11\001\004.2.1 (Based on Apple Inc. build 5658) (LLVM build 00)\001\00\000\00\000", metadata !12, metadata !13, metadata !13, metadata !14, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!4 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !12, metadata !2, null, metadata !5, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!5 = metadata !{metadata !6, metadata !6, metadata !6}
|
||||
!6 = metadata !{metadata !"0x16\00SItype\00152\000\000\000\000", metadata !12, null, metadata !8} ; [ DW_TAG_typedef ]
|
||||
!7 = metadata !{metadata !"0x29", metadata !"libgcc2.h", metadata !"/Users/bwilson/local/nightly/test-2010-04-14/build/llvmgcc.roots/llvmgcc~obj/src/gcc", metadata !3} ; [ DW_TAG_file_type ]
|
||||
!8 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", metadata !12, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!9 = metadata !{i32 95, i32 0, metadata !10, null}
|
||||
!10 = metadata !{metadata !"0xb\0094\000\000", metadata !12, metadata !1} ; [ DW_TAG_lexical_block ]
|
||||
!11 = metadata !{i32 100, i32 0, metadata !10, null}
|
||||
!13 = metadata !{i32 0}
|
||||
!14 = metadata !{metadata !1}
|
||||
!15 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!0 = !{!"0x101\00b\0093\000", !1, !2, !6} ; [ DW_TAG_arg_variable ]
|
||||
!1 = !{!"0x2e\00__addvsi3\00__addvsi3\00__addvsi3\0094\000\001\000\006\000\000\000", !12, null, !4, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!2 = !{!"0x29", !12} ; [ DW_TAG_file_type ]
|
||||
!12 = !{!"libgcc2.c", !"/Users/bwilson/local/nightly/test-2010-04-14/build/llvmgcc.roots/llvmgcc~obj/src/gcc"}
|
||||
!3 = !{!"0x11\001\004.2.1 (Based on Apple Inc. build 5658) (LLVM build 00)\001\00\000\00\000", !12, !13, !13, !14, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!4 = !{!"0x15\00\000\000\000\000\000\000", !12, !2, null, !5, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!5 = !{!6, !6, !6}
|
||||
!6 = !{!"0x16\00SItype\00152\000\000\000\000", !12, null, !8} ; [ DW_TAG_typedef ]
|
||||
!7 = !{!"0x29", !"libgcc2.h", !"/Users/bwilson/local/nightly/test-2010-04-14/build/llvmgcc.roots/llvmgcc~obj/src/gcc", !3} ; [ DW_TAG_file_type ]
|
||||
!8 = !{!"0x24\00int\000\0032\0032\000\000\005", !12, !2} ; [ DW_TAG_base_type ]
|
||||
!9 = !{i32 95, i32 0, !10, null}
|
||||
!10 = !{!"0xb\0094\000\000", !12, !1} ; [ DW_TAG_lexical_block ]
|
||||
!11 = !{i32 100, i32 0, !10, null}
|
||||
!13 = !{i32 0}
|
||||
!14 = !{!1}
|
||||
!15 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
@ -7,16 +7,16 @@ target triple = "thumbv7-apple-darwin3.0.0-iphoneos"
|
||||
|
||||
define void @x0(i8* nocapture %buf, i32 %nbytes) nounwind optsize {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i8* %buf}, i64 0, metadata !0, metadata !{metadata !"0x102"}), !dbg !15
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %nbytes}, i64 0, metadata !8, metadata !{metadata !"0x102"}), !dbg !16
|
||||
tail call void @llvm.dbg.value(metadata i8* %buf, i64 0, metadata !0, metadata !{!"0x102"}), !dbg !15
|
||||
tail call void @llvm.dbg.value(metadata i32 %nbytes, i64 0, metadata !8, metadata !{!"0x102"}), !dbg !16
|
||||
%tmp = load i32* @length, !dbg !17 ; <i32> [#uses=3]
|
||||
%cmp = icmp eq i32 %tmp, -1, !dbg !17 ; <i1> [#uses=1]
|
||||
%cmp.not = xor i1 %cmp, true ; <i1> [#uses=1]
|
||||
%cmp3 = icmp ult i32 %tmp, %nbytes, !dbg !17 ; <i1> [#uses=1]
|
||||
%or.cond = and i1 %cmp.not, %cmp3 ; <i1> [#uses=1]
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %tmp}, i64 0, metadata !8, metadata !{metadata !"0x102"}), !dbg !17
|
||||
tail call void @llvm.dbg.value(metadata i32 %tmp, i64 0, metadata !8, metadata !{!"0x102"}), !dbg !17
|
||||
%nbytes.addr.0 = select i1 %or.cond, i32 %tmp, i32 %nbytes ; <i32> [#uses=1]
|
||||
tail call void @llvm.dbg.value(metadata !18, i64 0, metadata !10, metadata !{metadata !"0x102"}), !dbg !19
|
||||
tail call void @llvm.dbg.value(metadata i32 0, i64 0, metadata !10, metadata !{!"0x102"}), !dbg !19
|
||||
br label %while.cond, !dbg !20
|
||||
|
||||
while.cond: ; preds = %while.body, %entry
|
||||
@ -47,30 +47,30 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon
|
||||
!llvm.dbg.lv.fn = !{!0, !8, !10, !12}
|
||||
!llvm.dbg.gv = !{!14}
|
||||
|
||||
!0 = metadata !{metadata !"0x101\00buf\004\000", metadata !1, metadata !2, metadata !6} ; [ DW_TAG_arg_variable ]
|
||||
!1 = metadata !{metadata !"0x2e\00x0\00x0\00x0\005\000\001\000\006\000\000\000", metadata !26, null, metadata !4, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!2 = metadata !{metadata !"0x29", metadata !26} ; [ DW_TAG_file_type ]
|
||||
!3 = metadata !{metadata !"0x11\0012\00clang 2.0\001\00\00\00\00", metadata !26, null, null, null, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!4 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !26, metadata !2, null, metadata !5, null} ; [ DW_TAG_subroutine_type ]
|
||||
!5 = metadata !{null}
|
||||
!6 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", metadata !26, metadata !2, metadata !7} ; [ DW_TAG_pointer_type ]
|
||||
!7 = metadata !{metadata !"0x24\00unsigned char\000\008\008\000\000\008", metadata !26, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!8 = metadata !{metadata !"0x101\00nbytes\004\000", metadata !1, metadata !2, metadata !9} ; [ DW_TAG_arg_variable ]
|
||||
!9 = metadata !{metadata !"0x24\00unsigned long\000\0032\0032\000\000\007", metadata !26, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!10 = metadata !{metadata !"0x100\00nread\006\000", metadata !11, metadata !2, metadata !9} ; [ DW_TAG_auto_variable ]
|
||||
!11 = metadata !{metadata !"0xb\005\001\000", metadata !26, metadata !1} ; [ DW_TAG_lexical_block ]
|
||||
!12 = metadata !{metadata !"0x100\00c\007\000", metadata !11, metadata !2, metadata !13} ; [ DW_TAG_auto_variable ]
|
||||
!13 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", metadata !26, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!14 = metadata !{metadata !"0x34\00length\00length\00length\001\000\001", metadata !2, metadata !2, metadata !13, i32* @length} ; [ DW_TAG_variable ]
|
||||
!15 = metadata !{i32 4, i32 24, metadata !1, null}
|
||||
!16 = metadata !{i32 4, i32 43, metadata !1, null}
|
||||
!17 = metadata !{i32 9, i32 2, metadata !11, null}
|
||||
!18 = metadata !{i32 0}
|
||||
!19 = metadata !{i32 10, i32 2, metadata !11, null}
|
||||
!20 = metadata !{i32 11, i32 2, metadata !11, null}
|
||||
!21 = metadata !{i32 12, i32 3, metadata !22, null}
|
||||
!22 = metadata !{metadata !"0xb\0011\0045\000", metadata !26, metadata !11} ; [ DW_TAG_lexical_block ]
|
||||
!23 = metadata !{i32 13, i32 3, metadata !22, null}
|
||||
!24 = metadata !{i32 14, i32 2, metadata !22, null}
|
||||
!25 = metadata !{i32 15, i32 1, metadata !11, null}
|
||||
!26 = metadata !{metadata !"t.c", metadata !"/private/tmp"}
|
||||
!0 = !{!"0x101\00buf\004\000", !1, !2, !6} ; [ DW_TAG_arg_variable ]
|
||||
!1 = !{!"0x2e\00x0\00x0\00x0\005\000\001\000\006\000\000\000", !26, null, !4, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!2 = !{!"0x29", !26} ; [ DW_TAG_file_type ]
|
||||
!3 = !{!"0x11\0012\00clang 2.0\001\00\00\00\00", !26, null, null, null, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!4 = !{!"0x15\00\000\000\000\000\000\000", !26, !2, null, !5, null} ; [ DW_TAG_subroutine_type ]
|
||||
!5 = !{null}
|
||||
!6 = !{!"0xf\00\000\0032\0032\000\000", !26, !2, !7} ; [ DW_TAG_pointer_type ]
|
||||
!7 = !{!"0x24\00unsigned char\000\008\008\000\000\008", !26, !2} ; [ DW_TAG_base_type ]
|
||||
!8 = !{!"0x101\00nbytes\004\000", !1, !2, !9} ; [ DW_TAG_arg_variable ]
|
||||
!9 = !{!"0x24\00unsigned long\000\0032\0032\000\000\007", !26, !2} ; [ DW_TAG_base_type ]
|
||||
!10 = !{!"0x100\00nread\006\000", !11, !2, !9} ; [ DW_TAG_auto_variable ]
|
||||
!11 = !{!"0xb\005\001\000", !26, !1} ; [ DW_TAG_lexical_block ]
|
||||
!12 = !{!"0x100\00c\007\000", !11, !2, !13} ; [ DW_TAG_auto_variable ]
|
||||
!13 = !{!"0x24\00int\000\0032\0032\000\000\005", !26, !2} ; [ DW_TAG_base_type ]
|
||||
!14 = !{!"0x34\00length\00length\00length\001\000\001", !2, !2, !13, i32* @length} ; [ DW_TAG_variable ]
|
||||
!15 = !{i32 4, i32 24, !1, null}
|
||||
!16 = !{i32 4, i32 43, !1, null}
|
||||
!17 = !{i32 9, i32 2, !11, null}
|
||||
!18 = !{i32 0}
|
||||
!19 = !{i32 10, i32 2, !11, null}
|
||||
!20 = !{i32 11, i32 2, !11, null}
|
||||
!21 = !{i32 12, i32 3, !22, null}
|
||||
!22 = !{!"0xb\0011\0045\000", !26, !11} ; [ DW_TAG_lexical_block ]
|
||||
!23 = !{i32 13, i32 3, !22, null}
|
||||
!24 = !{i32 14, i32 2, !22, null}
|
||||
!25 = !{i32 15, i32 1, !11, null}
|
||||
!26 = !{!"t.c", !"/private/tmp"}
|
||||
|
@ -6,8 +6,8 @@
|
||||
define i32 @_Z3fooi4SVal(i32 %i, %struct.SVal* noalias %location) nounwind ssp {
|
||||
entry:
|
||||
%"alloca point" = bitcast i32 0 to i32 ; <i32> [#uses=0]
|
||||
call void @llvm.dbg.value(metadata !{i32 %i}, i64 0, metadata !23, metadata !{metadata !"0x102"}), !dbg !24
|
||||
call void @llvm.dbg.value(metadata !{%struct.SVal* %location}, i64 0, metadata !25, metadata !{metadata !"0x102"}), !dbg !24
|
||||
call void @llvm.dbg.value(metadata i32 %i, i64 0, metadata !23, metadata !{!"0x102"}), !dbg !24
|
||||
call void @llvm.dbg.value(metadata %struct.SVal* %location, i64 0, metadata !25, metadata !{!"0x102"}), !dbg !24
|
||||
%0 = icmp ne i32 %i, 0, !dbg !27 ; <i1> [#uses=1]
|
||||
br i1 %0, label %bb, label %bb1, !dbg !27
|
||||
|
||||
@ -34,7 +34,7 @@ return: ; preds = %bb2
|
||||
define linkonce_odr void @_ZN4SValC1Ev(%struct.SVal* %this) nounwind ssp align 2 {
|
||||
entry:
|
||||
%"alloca point" = bitcast i32 0 to i32 ; <i32> [#uses=0]
|
||||
call void @llvm.dbg.value(metadata !{%struct.SVal* %this}, i64 0, metadata !31, metadata !{metadata !"0x102"}), !dbg !34
|
||||
call void @llvm.dbg.value(metadata %struct.SVal* %this, i64 0, metadata !31, metadata !{!"0x102"}), !dbg !34
|
||||
%0 = getelementptr inbounds %struct.SVal* %this, i32 0, i32 0, !dbg !34 ; <i8**> [#uses=1]
|
||||
store i8* null, i8** %0, align 8, !dbg !34
|
||||
%1 = getelementptr inbounds %struct.SVal* %this, i32 0, i32 1, !dbg !34 ; <i32*> [#uses=1]
|
||||
@ -52,7 +52,7 @@ entry:
|
||||
%0 = alloca %struct.SVal ; <%struct.SVal*> [#uses=3]
|
||||
%v = alloca %struct.SVal ; <%struct.SVal*> [#uses=4]
|
||||
%"alloca point" = bitcast i32 0 to i32 ; <i32> [#uses=0]
|
||||
call void @llvm.dbg.declare(metadata !{%struct.SVal* %v}, metadata !38, metadata !{metadata !"0x102"}), !dbg !41
|
||||
call void @llvm.dbg.declare(metadata %struct.SVal* %v, metadata !38, metadata !{!"0x102"}), !dbg !41
|
||||
call void @_ZN4SValC1Ev(%struct.SVal* %v) nounwind, !dbg !41
|
||||
%1 = getelementptr inbounds %struct.SVal* %v, i32 0, i32 1, !dbg !42 ; <i32*> [#uses=1]
|
||||
store i32 1, i32* %1, align 8, !dbg !42
|
||||
@ -65,7 +65,7 @@ entry:
|
||||
%7 = load i32* %6, align 8, !dbg !43 ; <i32> [#uses=1]
|
||||
store i32 %7, i32* %5, align 8, !dbg !43
|
||||
%8 = call i32 @_Z3fooi4SVal(i32 2, %struct.SVal* noalias %0) nounwind, !dbg !43 ; <i32> [#uses=0]
|
||||
call void @llvm.dbg.value(metadata !{i32 %8}, i64 0, metadata !44, metadata !{metadata !"0x102"}), !dbg !43
|
||||
call void @llvm.dbg.value(metadata i32 %8, i64 0, metadata !44, metadata !{!"0x102"}), !dbg !43
|
||||
br label %return, !dbg !45
|
||||
|
||||
return: ; preds = %entry
|
||||
@ -77,53 +77,53 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon
|
||||
!llvm.dbg.cu = !{!3}
|
||||
!llvm.module.flags = !{!49}
|
||||
|
||||
!0 = metadata !{metadata !"0x2e\00SVal\00SVal\00\0011\000\000\000\006\000\000\000", metadata !48, metadata !1, metadata !14, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!1 = metadata !{metadata !"0x13\00SVal\001\00128\0064\000\000\000", metadata !48, null, null, metadata !4, null, null, null} ; [ DW_TAG_structure_type ] [SVal] [line 1, size 128, align 64, offset 0] [def] [from ]
|
||||
!2 = metadata !{metadata !"0x29", metadata !48} ; [ DW_TAG_file_type ]
|
||||
!3 = metadata !{metadata !"0x11\004\004.2.1 (Based on Apple Inc. build 5658) (LLVM build)\000\00\000\00\001", metadata !48, metadata !47, metadata !47, metadata !46, metadata !47, metadata !47} ; [ DW_TAG_compile_unit ]
|
||||
!4 = metadata !{metadata !5, metadata !7, metadata !0, metadata !9}
|
||||
!5 = metadata !{metadata !"0xd\00Data\007\0064\0064\000\000", metadata !48, metadata !1, metadata !6} ; [ DW_TAG_member ]
|
||||
!6 = metadata !{metadata !"0xf\00\000\0064\0064\000\000", metadata !48, null, null} ; [ DW_TAG_pointer_type ]
|
||||
!7 = metadata !{metadata !"0xd\00Kind\008\0032\0032\0064\000", metadata !48, metadata !1, metadata !8} ; [ DW_TAG_member ]
|
||||
!8 = metadata !{metadata !"0x24\00unsigned int\000\0032\0032\000\000\007", metadata !48, null} ; [ DW_TAG_base_type ]
|
||||
!9 = metadata !{metadata !"0x2e\00~SVal\00~SVal\00\0012\000\000\000\006\000\000\000", metadata !48, metadata !1, metadata !10, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!10 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !48, null, null, metadata !11, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!11 = metadata !{null, metadata !12, metadata !13}
|
||||
!12 = metadata !{metadata !"0xf\00\000\0064\0064\000\0064", metadata !48, null, metadata !1} ; [ DW_TAG_pointer_type ]
|
||||
!13 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", metadata !48, null} ; [ DW_TAG_base_type ]
|
||||
!14 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !48, null, null, metadata !15, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!15 = metadata !{null, metadata !12}
|
||||
!16 = metadata !{metadata !"0x2e\00SVal\00SVal\00_ZN4SValC1Ev\0011\000\001\000\006\000\000\000", metadata !48, metadata !1, metadata !14, null, void (%struct.SVal*)* @_ZN4SValC1Ev, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!17 = metadata !{metadata !"0x2e\00foo\00foo\00_Z3fooi4SVal\0016\000\001\000\006\000\000\000", metadata !48, metadata !2, metadata !18, null, i32 (i32, %struct.SVal*)* @_Z3fooi4SVal, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!18 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !48, null, null, metadata !19, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!19 = metadata !{metadata !13, metadata !13, metadata !1}
|
||||
!20 = metadata !{metadata !"0x2e\00main\00main\00main\0023\000\001\000\006\000\000\000", metadata !48, metadata !2, metadata !21, null, i32 ()* @main, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!21 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !48, null, null, metadata !22, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!22 = metadata !{metadata !13}
|
||||
!23 = metadata !{metadata !"0x101\00i\0016\000", metadata !17, metadata !2, metadata !13} ; [ DW_TAG_arg_variable ]
|
||||
!24 = metadata !{i32 16, i32 0, metadata !17, null}
|
||||
!25 = metadata !{metadata !"0x101\00location\0016\000", metadata !17, metadata !2, metadata !26} ; [ DW_TAG_arg_variable ]
|
||||
!26 = metadata !{metadata !"0x10\00SVal\000\0064\0064\000\000", metadata !48, metadata !2, metadata !1} ; [ DW_TAG_reference_type ]
|
||||
!27 = metadata !{i32 17, i32 0, metadata !28, null}
|
||||
!28 = metadata !{metadata !"0xb\0016\000\002", metadata !2, metadata !17} ; [ DW_TAG_lexical_block ]
|
||||
!29 = metadata !{i32 18, i32 0, metadata !28, null}
|
||||
!30 = metadata !{i32 20, i32 0, metadata !28, null}
|
||||
!31 = metadata !{metadata !"0x101\00this\0011\000", metadata !16, metadata !2, metadata !32} ; [ DW_TAG_arg_variable ]
|
||||
!32 = metadata !{metadata !"0x26\00\000\0064\0064\000\0064", metadata !48, metadata !2, metadata !33} ; [ DW_TAG_const_type ]
|
||||
!33 = metadata !{metadata !"0xf\00\000\0064\0064\000\000", metadata !48, metadata !2, metadata !1} ; [ DW_TAG_pointer_type ]
|
||||
!34 = metadata !{i32 11, i32 0, metadata !16, null}
|
||||
!35 = metadata !{i32 11, i32 0, metadata !36, null}
|
||||
!36 = metadata !{metadata !"0xb\0011\000\001", metadata !48, metadata !37} ; [ DW_TAG_lexical_block ]
|
||||
!37 = metadata !{metadata !"0xb\0011\000\000", metadata !48, metadata !16} ; [ DW_TAG_lexical_block ]
|
||||
!38 = metadata !{metadata !"0x100\00v\0024\000", metadata !39, metadata !2, metadata !1} ; [ DW_TAG_auto_variable ]
|
||||
!39 = metadata !{metadata !"0xb\0023\000\004", metadata !48, metadata !40} ; [ DW_TAG_lexical_block ]
|
||||
!40 = metadata !{metadata !"0xb\0023\000\003", metadata !48, metadata !20} ; [ DW_TAG_lexical_block ]
|
||||
!41 = metadata !{i32 24, i32 0, metadata !39, null}
|
||||
!42 = metadata !{i32 25, i32 0, metadata !39, null}
|
||||
!43 = metadata !{i32 26, i32 0, metadata !39, null}
|
||||
!44 = metadata !{metadata !"0x100\00k\0026\000", metadata !39, metadata !2, metadata !13} ; [ DW_TAG_auto_variable ]
|
||||
!45 = metadata !{i32 27, i32 0, metadata !39, null}
|
||||
!46 = metadata !{metadata !16, metadata !17, metadata !20}
|
||||
!47 = metadata !{}
|
||||
!48 = metadata !{metadata !"small.cc", metadata !"/Users/manav/R8248330"}
|
||||
!49 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!0 = !{!"0x2e\00SVal\00SVal\00\0011\000\000\000\006\000\000\000", !48, !1, !14, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!1 = !{!"0x13\00SVal\001\00128\0064\000\000\000", !48, null, null, !4, null, null, null} ; [ DW_TAG_structure_type ] [SVal] [line 1, size 128, align 64, offset 0] [def] [from ]
|
||||
!2 = !{!"0x29", !48} ; [ DW_TAG_file_type ]
|
||||
!3 = !{!"0x11\004\004.2.1 (Based on Apple Inc. build 5658) (LLVM build)\000\00\000\00\001", !48, !47, !47, !46, !47, !47} ; [ DW_TAG_compile_unit ]
|
||||
!4 = !{!5, !7, !0, !9}
|
||||
!5 = !{!"0xd\00Data\007\0064\0064\000\000", !48, !1, !6} ; [ DW_TAG_member ]
|
||||
!6 = !{!"0xf\00\000\0064\0064\000\000", !48, null, null} ; [ DW_TAG_pointer_type ]
|
||||
!7 = !{!"0xd\00Kind\008\0032\0032\0064\000", !48, !1, !8} ; [ DW_TAG_member ]
|
||||
!8 = !{!"0x24\00unsigned int\000\0032\0032\000\000\007", !48, null} ; [ DW_TAG_base_type ]
|
||||
!9 = !{!"0x2e\00~SVal\00~SVal\00\0012\000\000\000\006\000\000\000", !48, !1, !10, null, null, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!10 = !{!"0x15\00\000\000\000\000\000\000", !48, null, null, !11, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!11 = !{null, !12, !13}
|
||||
!12 = !{!"0xf\00\000\0064\0064\000\0064", !48, null, !1} ; [ DW_TAG_pointer_type ]
|
||||
!13 = !{!"0x24\00int\000\0032\0032\000\000\005", !48, null} ; [ DW_TAG_base_type ]
|
||||
!14 = !{!"0x15\00\000\000\000\000\000\000", !48, null, null, !15, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!15 = !{null, !12}
|
||||
!16 = !{!"0x2e\00SVal\00SVal\00_ZN4SValC1Ev\0011\000\001\000\006\000\000\000", !48, !1, !14, null, void (%struct.SVal*)* @_ZN4SValC1Ev, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!17 = !{!"0x2e\00foo\00foo\00_Z3fooi4SVal\0016\000\001\000\006\000\000\000", !48, !2, !18, null, i32 (i32, %struct.SVal*)* @_Z3fooi4SVal, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!18 = !{!"0x15\00\000\000\000\000\000\000", !48, null, null, !19, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!19 = !{!13, !13, !1}
|
||||
!20 = !{!"0x2e\00main\00main\00main\0023\000\001\000\006\000\000\000", !48, !2, !21, null, i32 ()* @main, null, null, null} ; [ DW_TAG_subprogram ]
|
||||
!21 = !{!"0x15\00\000\000\000\000\000\000", !48, null, null, !22, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!22 = !{!13}
|
||||
!23 = !{!"0x101\00i\0016\000", !17, !2, !13} ; [ DW_TAG_arg_variable ]
|
||||
!24 = !{i32 16, i32 0, !17, null}
|
||||
!25 = !{!"0x101\00location\0016\000", !17, !2, !26} ; [ DW_TAG_arg_variable ]
|
||||
!26 = !{!"0x10\00SVal\000\0064\0064\000\000", !48, !2, !1} ; [ DW_TAG_reference_type ]
|
||||
!27 = !{i32 17, i32 0, !28, null}
|
||||
!28 = !{!"0xb\0016\000\002", !2, !17} ; [ DW_TAG_lexical_block ]
|
||||
!29 = !{i32 18, i32 0, !28, null}
|
||||
!30 = !{i32 20, i32 0, !28, null}
|
||||
!31 = !{!"0x101\00this\0011\000", !16, !2, !32} ; [ DW_TAG_arg_variable ]
|
||||
!32 = !{!"0x26\00\000\0064\0064\000\0064", !48, !2, !33} ; [ DW_TAG_const_type ]
|
||||
!33 = !{!"0xf\00\000\0064\0064\000\000", !48, !2, !1} ; [ DW_TAG_pointer_type ]
|
||||
!34 = !{i32 11, i32 0, !16, null}
|
||||
!35 = !{i32 11, i32 0, !36, null}
|
||||
!36 = !{!"0xb\0011\000\001", !48, !37} ; [ DW_TAG_lexical_block ]
|
||||
!37 = !{!"0xb\0011\000\000", !48, !16} ; [ DW_TAG_lexical_block ]
|
||||
!38 = !{!"0x100\00v\0024\000", !39, !2, !1} ; [ DW_TAG_auto_variable ]
|
||||
!39 = !{!"0xb\0023\000\004", !48, !40} ; [ DW_TAG_lexical_block ]
|
||||
!40 = !{!"0xb\0023\000\003", !48, !20} ; [ DW_TAG_lexical_block ]
|
||||
!41 = !{i32 24, i32 0, !39, null}
|
||||
!42 = !{i32 25, i32 0, !39, null}
|
||||
!43 = !{i32 26, i32 0, !39, null}
|
||||
!44 = !{!"0x100\00k\0026\000", !39, !2, !13} ; [ DW_TAG_auto_variable ]
|
||||
!45 = !{i32 27, i32 0, !39, null}
|
||||
!46 = !{!16, !17, !20}
|
||||
!47 = !{}
|
||||
!48 = !{!"small.cc", !"/Users/manav/R8248330"}
|
||||
!49 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
@ -30,9 +30,9 @@ target triple = "thumbv7-apple-darwin10"
|
||||
|
||||
define zeroext i8 @get1(i8 zeroext %a) nounwind optsize {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %a}, i64 0, metadata !10, metadata !{metadata !"0x102"}), !dbg !30
|
||||
tail call void @llvm.dbg.value(metadata i8 %a, i64 0, metadata !10, metadata !{!"0x102"}), !dbg !30
|
||||
%0 = load i8* @x1, align 4, !dbg !30
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %0}, i64 0, metadata !11, metadata !{metadata !"0x102"}), !dbg !30
|
||||
tail call void @llvm.dbg.value(metadata i8 %0, i64 0, metadata !11, metadata !{!"0x102"}), !dbg !30
|
||||
store i8 %a, i8* @x1, align 4, !dbg !30
|
||||
ret i8 %0, !dbg !31
|
||||
}
|
||||
@ -41,36 +41,36 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon
|
||||
|
||||
define zeroext i8 @get2(i8 zeroext %a) nounwind optsize {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %a}, i64 0, metadata !18, metadata !{metadata !"0x102"}), !dbg !32
|
||||
tail call void @llvm.dbg.value(metadata i8 %a, i64 0, metadata !18, metadata !{!"0x102"}), !dbg !32
|
||||
%0 = load i8* @x2, align 4, !dbg !32
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %0}, i64 0, metadata !19, metadata !{metadata !"0x102"}), !dbg !32
|
||||
tail call void @llvm.dbg.value(metadata i8 %0, i64 0, metadata !19, metadata !{!"0x102"}), !dbg !32
|
||||
store i8 %a, i8* @x2, align 4, !dbg !32
|
||||
ret i8 %0, !dbg !33
|
||||
}
|
||||
|
||||
define zeroext i8 @get3(i8 zeroext %a) nounwind optsize {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %a}, i64 0, metadata !21, metadata !{metadata !"0x102"}), !dbg !34
|
||||
tail call void @llvm.dbg.value(metadata i8 %a, i64 0, metadata !21, metadata !{!"0x102"}), !dbg !34
|
||||
%0 = load i8* @x3, align 4, !dbg !34
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %0}, i64 0, metadata !22, metadata !{metadata !"0x102"}), !dbg !34
|
||||
tail call void @llvm.dbg.value(metadata i8 %0, i64 0, metadata !22, metadata !{!"0x102"}), !dbg !34
|
||||
store i8 %a, i8* @x3, align 4, !dbg !34
|
||||
ret i8 %0, !dbg !35
|
||||
}
|
||||
|
||||
define zeroext i8 @get4(i8 zeroext %a) nounwind optsize {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %a}, i64 0, metadata !24, metadata !{metadata !"0x102"}), !dbg !36
|
||||
tail call void @llvm.dbg.value(metadata i8 %a, i64 0, metadata !24, metadata !{!"0x102"}), !dbg !36
|
||||
%0 = load i8* @x4, align 4, !dbg !36
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %0}, i64 0, metadata !25, metadata !{metadata !"0x102"}), !dbg !36
|
||||
tail call void @llvm.dbg.value(metadata i8 %0, i64 0, metadata !25, metadata !{!"0x102"}), !dbg !36
|
||||
store i8 %a, i8* @x4, align 4, !dbg !36
|
||||
ret i8 %0, !dbg !37
|
||||
}
|
||||
|
||||
define zeroext i8 @get5(i8 zeroext %a) nounwind optsize {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %a}, i64 0, metadata !27, metadata !{metadata !"0x102"}), !dbg !38
|
||||
tail call void @llvm.dbg.value(metadata i8 %a, i64 0, metadata !27, metadata !{!"0x102"}), !dbg !38
|
||||
%0 = load i8* @x5, align 4, !dbg !38
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %0}, i64 0, metadata !28, metadata !{metadata !"0x102"}), !dbg !38
|
||||
tail call void @llvm.dbg.value(metadata i8 %0, i64 0, metadata !28, metadata !{!"0x102"}), !dbg !38
|
||||
store i8 %a, i8* @x5, align 4, !dbg !38
|
||||
ret i8 %0, !dbg !39
|
||||
}
|
||||
@ -78,53 +78,53 @@ entry:
|
||||
!llvm.dbg.cu = !{!2}
|
||||
!llvm.module.flags = !{!49}
|
||||
|
||||
!0 = metadata !{metadata !"0x2e\00get1\00get1\00get1\004\000\001\000\006\00256\001\004", metadata !47, metadata !1, metadata !3, null, i8 (i8)* @get1, null, null, metadata !42} ; [ DW_TAG_subprogram ]
|
||||
!1 = metadata !{metadata !"0x29", metadata !47} ; [ DW_TAG_file_type ]
|
||||
!2 = metadata !{metadata !"0x11\001\004.2.1 (Based on Apple Inc. build 5658) (LLVM build 2369.8)\001\00\000\00\000", metadata !47, metadata !48, metadata !48, metadata !40, metadata !41, metadata !48} ; [ DW_TAG_compile_unit ]
|
||||
!3 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !47, metadata !1, null, metadata !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = metadata !{metadata !5, metadata !5}
|
||||
!5 = metadata !{metadata !"0x24\00_Bool\000\008\008\000\000\002", metadata !47, metadata !1} ; [ DW_TAG_base_type ]
|
||||
!6 = metadata !{metadata !"0x2e\00get2\00get2\00get2\007\000\001\000\006\00256\001\007", metadata !47, metadata !1, metadata !3, null, i8 (i8)* @get2, null, null, metadata !43} ; [ DW_TAG_subprogram ]
|
||||
!7 = metadata !{metadata !"0x2e\00get3\00get3\00get3\0010\000\001\000\006\00256\001\0010", metadata !47, metadata !1, metadata !3, null, i8 (i8)* @get3, null, null, metadata !44} ; [ DW_TAG_subprogram ]
|
||||
!8 = metadata !{metadata !"0x2e\00get4\00get4\00get4\0013\000\001\000\006\00256\001\0013", metadata !47, metadata !1, metadata !3, null, i8 (i8)* @get4, null, null, metadata !45} ; [ DW_TAG_subprogram ]
|
||||
!9 = metadata !{metadata !"0x2e\00get5\00get5\00get5\0016\000\001\000\006\00256\001\0016", metadata !47, metadata !1, metadata !3, null, i8 (i8)* @get5, null, null, metadata !46} ; [ DW_TAG_subprogram ]
|
||||
!10 = metadata !{metadata !"0x101\00a\004\000", metadata !0, metadata !1, metadata !5} ; [ DW_TAG_arg_variable ]
|
||||
!11 = metadata !{metadata !"0x100\00b\004\000", metadata !12, metadata !1, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!12 = metadata !{metadata !"0xb\004\000\000", metadata !47, metadata !0} ; [ DW_TAG_lexical_block ]
|
||||
!13 = metadata !{metadata !"0x34\00x1\00x1\00\003\001\001", metadata !1, metadata !1, metadata !5, i8* @x1, null} ; [ DW_TAG_variable ]
|
||||
!14 = metadata !{metadata !"0x34\00x2\00x2\00\006\001\001", metadata !1, metadata !1, metadata !5, i8* @x2, null} ; [ DW_TAG_variable ]
|
||||
!15 = metadata !{metadata !"0x34\00x3\00x3\00\009\001\001", metadata !1, metadata !1, metadata !5, i8* @x3, null} ; [ DW_TAG_variable ]
|
||||
!16 = metadata !{metadata !"0x34\00x4\00x4\00\0012\001\001", metadata !1, metadata !1, metadata !5, i8* @x4, null} ; [ DW_TAG_variable ]
|
||||
!17 = metadata !{metadata !"0x34\00x5\00x5\00\0015\000\001", metadata !1, metadata !1, metadata !5, i8* @x5, null} ; [ DW_TAG_variable ]
|
||||
!18 = metadata !{metadata !"0x101\00a\007\000", metadata !6, metadata !1, metadata !5} ; [ DW_TAG_arg_variable ]
|
||||
!19 = metadata !{metadata !"0x100\00b\007\000", metadata !20, metadata !1, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!20 = metadata !{metadata !"0xb\007\000\001", metadata !47, metadata !6} ; [ DW_TAG_lexical_block ]
|
||||
!21 = metadata !{metadata !"0x101\00a\0010\000", metadata !7, metadata !1, metadata !5} ; [ DW_TAG_arg_variable ]
|
||||
!22 = metadata !{metadata !"0x100\00b\0010\000", metadata !23, metadata !1, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!23 = metadata !{metadata !"0xb\0010\000\002", metadata !47, metadata !7} ; [ DW_TAG_lexical_block ]
|
||||
!24 = metadata !{metadata !"0x101\00a\0013\000", metadata !8, metadata !1, metadata !5} ; [ DW_TAG_arg_variable ]
|
||||
!25 = metadata !{metadata !"0x100\00b\0013\000", metadata !26, metadata !1, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!26 = metadata !{metadata !"0xb\0013\000\003", metadata !47, metadata !8} ; [ DW_TAG_lexical_block ]
|
||||
!27 = metadata !{metadata !"0x101\00a\0016\000", metadata !9, metadata !1, metadata !5} ; [ DW_TAG_arg_variable ]
|
||||
!28 = metadata !{metadata !"0x100\00b\0016\000", metadata !29, metadata !1, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!29 = metadata !{metadata !"0xb\0016\000\004", metadata !47, metadata !9} ; [ DW_TAG_lexical_block ]
|
||||
!30 = metadata !{i32 4, i32 0, metadata !0, null}
|
||||
!31 = metadata !{i32 4, i32 0, metadata !12, null}
|
||||
!32 = metadata !{i32 7, i32 0, metadata !6, null}
|
||||
!33 = metadata !{i32 7, i32 0, metadata !20, null}
|
||||
!34 = metadata !{i32 10, i32 0, metadata !7, null}
|
||||
!35 = metadata !{i32 10, i32 0, metadata !23, null}
|
||||
!36 = metadata !{i32 13, i32 0, metadata !8, null}
|
||||
!37 = metadata !{i32 13, i32 0, metadata !26, null}
|
||||
!38 = metadata !{i32 16, i32 0, metadata !9, null}
|
||||
!39 = metadata !{i32 16, i32 0, metadata !29, null}
|
||||
!40 = metadata !{metadata !0, metadata !6, metadata !7, metadata !8, metadata !9}
|
||||
!41 = metadata !{metadata !13, metadata !14, metadata !15, metadata !16, metadata !17}
|
||||
!42 = metadata !{metadata !10, metadata !11}
|
||||
!43 = metadata !{metadata !18, metadata !19}
|
||||
!44 = metadata !{metadata !21, metadata !22}
|
||||
!45 = metadata !{metadata !24, metadata !25}
|
||||
!46 = metadata !{metadata !27, metadata !28}
|
||||
!47 = metadata !{metadata !"foo.c", metadata !"/tmp/"}
|
||||
!48 = metadata !{}
|
||||
!49 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!0 = !{!"0x2e\00get1\00get1\00get1\004\000\001\000\006\00256\001\004", !47, !1, !3, null, i8 (i8)* @get1, null, null, !42} ; [ DW_TAG_subprogram ]
|
||||
!1 = !{!"0x29", !47} ; [ DW_TAG_file_type ]
|
||||
!2 = !{!"0x11\001\004.2.1 (Based on Apple Inc. build 5658) (LLVM build 2369.8)\001\00\000\00\000", !47, !48, !48, !40, !41, !48} ; [ DW_TAG_compile_unit ]
|
||||
!3 = !{!"0x15\00\000\000\000\000\000\000", !47, !1, null, !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = !{!5, !5}
|
||||
!5 = !{!"0x24\00_Bool\000\008\008\000\000\002", !47, !1} ; [ DW_TAG_base_type ]
|
||||
!6 = !{!"0x2e\00get2\00get2\00get2\007\000\001\000\006\00256\001\007", !47, !1, !3, null, i8 (i8)* @get2, null, null, !43} ; [ DW_TAG_subprogram ]
|
||||
!7 = !{!"0x2e\00get3\00get3\00get3\0010\000\001\000\006\00256\001\0010", !47, !1, !3, null, i8 (i8)* @get3, null, null, !44} ; [ DW_TAG_subprogram ]
|
||||
!8 = !{!"0x2e\00get4\00get4\00get4\0013\000\001\000\006\00256\001\0013", !47, !1, !3, null, i8 (i8)* @get4, null, null, !45} ; [ DW_TAG_subprogram ]
|
||||
!9 = !{!"0x2e\00get5\00get5\00get5\0016\000\001\000\006\00256\001\0016", !47, !1, !3, null, i8 (i8)* @get5, null, null, !46} ; [ DW_TAG_subprogram ]
|
||||
!10 = !{!"0x101\00a\004\000", !0, !1, !5} ; [ DW_TAG_arg_variable ]
|
||||
!11 = !{!"0x100\00b\004\000", !12, !1, !5} ; [ DW_TAG_auto_variable ]
|
||||
!12 = !{!"0xb\004\000\000", !47, !0} ; [ DW_TAG_lexical_block ]
|
||||
!13 = !{!"0x34\00x1\00x1\00\003\001\001", !1, !1, !5, i8* @x1, null} ; [ DW_TAG_variable ]
|
||||
!14 = !{!"0x34\00x2\00x2\00\006\001\001", !1, !1, !5, i8* @x2, null} ; [ DW_TAG_variable ]
|
||||
!15 = !{!"0x34\00x3\00x3\00\009\001\001", !1, !1, !5, i8* @x3, null} ; [ DW_TAG_variable ]
|
||||
!16 = !{!"0x34\00x4\00x4\00\0012\001\001", !1, !1, !5, i8* @x4, null} ; [ DW_TAG_variable ]
|
||||
!17 = !{!"0x34\00x5\00x5\00\0015\000\001", !1, !1, !5, i8* @x5, null} ; [ DW_TAG_variable ]
|
||||
!18 = !{!"0x101\00a\007\000", !6, !1, !5} ; [ DW_TAG_arg_variable ]
|
||||
!19 = !{!"0x100\00b\007\000", !20, !1, !5} ; [ DW_TAG_auto_variable ]
|
||||
!20 = !{!"0xb\007\000\001", !47, !6} ; [ DW_TAG_lexical_block ]
|
||||
!21 = !{!"0x101\00a\0010\000", !7, !1, !5} ; [ DW_TAG_arg_variable ]
|
||||
!22 = !{!"0x100\00b\0010\000", !23, !1, !5} ; [ DW_TAG_auto_variable ]
|
||||
!23 = !{!"0xb\0010\000\002", !47, !7} ; [ DW_TAG_lexical_block ]
|
||||
!24 = !{!"0x101\00a\0013\000", !8, !1, !5} ; [ DW_TAG_arg_variable ]
|
||||
!25 = !{!"0x100\00b\0013\000", !26, !1, !5} ; [ DW_TAG_auto_variable ]
|
||||
!26 = !{!"0xb\0013\000\003", !47, !8} ; [ DW_TAG_lexical_block ]
|
||||
!27 = !{!"0x101\00a\0016\000", !9, !1, !5} ; [ DW_TAG_arg_variable ]
|
||||
!28 = !{!"0x100\00b\0016\000", !29, !1, !5} ; [ DW_TAG_auto_variable ]
|
||||
!29 = !{!"0xb\0016\000\004", !47, !9} ; [ DW_TAG_lexical_block ]
|
||||
!30 = !{i32 4, i32 0, !0, null}
|
||||
!31 = !{i32 4, i32 0, !12, null}
|
||||
!32 = !{i32 7, i32 0, !6, null}
|
||||
!33 = !{i32 7, i32 0, !20, null}
|
||||
!34 = !{i32 10, i32 0, !7, null}
|
||||
!35 = !{i32 10, i32 0, !23, null}
|
||||
!36 = !{i32 13, i32 0, !8, null}
|
||||
!37 = !{i32 13, i32 0, !26, null}
|
||||
!38 = !{i32 16, i32 0, !9, null}
|
||||
!39 = !{i32 16, i32 0, !29, null}
|
||||
!40 = !{!0, !6, !7, !8, !9}
|
||||
!41 = !{!13, !14, !15, !16, !17}
|
||||
!42 = !{!10, !11}
|
||||
!43 = !{!18, !19}
|
||||
!44 = !{!21, !22}
|
||||
!45 = !{!24, !25}
|
||||
!46 = !{!27, !28}
|
||||
!47 = !{!"foo.c", !"/tmp/"}
|
||||
!48 = !{}
|
||||
!49 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
@ -12,4 +12,4 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
!0 = metadata !{i32 109}
|
||||
!0 = !{i32 109}
|
||||
|
@ -81,8 +81,8 @@ declare void @_Unwind_SjLj_Resume_or_Rethrow(i8*)
|
||||
|
||||
declare void @_ZSt9terminatev()
|
||||
|
||||
!0 = metadata !{metadata !"any pointer", metadata !1}
|
||||
!1 = metadata !{metadata !"omnipotent char", metadata !2}
|
||||
!2 = metadata !{metadata !"Simple C/C++ TBAA", null}
|
||||
!3 = metadata !{metadata !"bool", metadata !1}
|
||||
!4 = metadata !{metadata !"int", metadata !1}
|
||||
!0 = !{!"any pointer", !1}
|
||||
!1 = !{!"omnipotent char", !2}
|
||||
!2 = !{!"Simple C/C++ TBAA", null}
|
||||
!3 = !{!"bool", !1}
|
||||
!4 = !{!"int", !1}
|
||||
|
@ -29,41 +29,41 @@ target triple = "thumbv7-apple-macosx10.7.0"
|
||||
@x5 = global i32 0, align 4
|
||||
|
||||
define i32 @get1(i32 %a) nounwind optsize ssp {
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %a}, i64 0, metadata !10, metadata !{metadata !"0x102"}), !dbg !30
|
||||
tail call void @llvm.dbg.value(metadata i32 %a, i64 0, metadata !10, metadata !{!"0x102"}), !dbg !30
|
||||
%1 = load i32* @x1, align 4, !dbg !31
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %1}, i64 0, metadata !11, metadata !{metadata !"0x102"}), !dbg !31
|
||||
tail call void @llvm.dbg.value(metadata i32 %1, i64 0, metadata !11, metadata !{!"0x102"}), !dbg !31
|
||||
store i32 %a, i32* @x1, align 4, !dbg !31
|
||||
ret i32 %1, !dbg !31
|
||||
}
|
||||
|
||||
define i32 @get2(i32 %a) nounwind optsize ssp {
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %a}, i64 0, metadata !13, metadata !{metadata !"0x102"}), !dbg !32
|
||||
tail call void @llvm.dbg.value(metadata i32 %a, i64 0, metadata !13, metadata !{!"0x102"}), !dbg !32
|
||||
%1 = load i32* @x2, align 4, !dbg !33
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %1}, i64 0, metadata !14, metadata !{metadata !"0x102"}), !dbg !33
|
||||
tail call void @llvm.dbg.value(metadata i32 %1, i64 0, metadata !14, metadata !{!"0x102"}), !dbg !33
|
||||
store i32 %a, i32* @x2, align 4, !dbg !33
|
||||
ret i32 %1, !dbg !33
|
||||
}
|
||||
|
||||
define i32 @get3(i32 %a) nounwind optsize ssp {
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %a}, i64 0, metadata !16, metadata !{metadata !"0x102"}), !dbg !34
|
||||
tail call void @llvm.dbg.value(metadata i32 %a, i64 0, metadata !16, metadata !{!"0x102"}), !dbg !34
|
||||
%1 = load i32* @x3, align 4, !dbg !35
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %1}, i64 0, metadata !17, metadata !{metadata !"0x102"}), !dbg !35
|
||||
tail call void @llvm.dbg.value(metadata i32 %1, i64 0, metadata !17, metadata !{!"0x102"}), !dbg !35
|
||||
store i32 %a, i32* @x3, align 4, !dbg !35
|
||||
ret i32 %1, !dbg !35
|
||||
}
|
||||
|
||||
define i32 @get4(i32 %a) nounwind optsize ssp {
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %a}, i64 0, metadata !19, metadata !{metadata !"0x102"}), !dbg !36
|
||||
tail call void @llvm.dbg.value(metadata i32 %a, i64 0, metadata !19, metadata !{!"0x102"}), !dbg !36
|
||||
%1 = load i32* @x4, align 4, !dbg !37
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %1}, i64 0, metadata !20, metadata !{metadata !"0x102"}), !dbg !37
|
||||
tail call void @llvm.dbg.value(metadata i32 %1, i64 0, metadata !20, metadata !{!"0x102"}), !dbg !37
|
||||
store i32 %a, i32* @x4, align 4, !dbg !37
|
||||
ret i32 %1, !dbg !37
|
||||
}
|
||||
|
||||
define i32 @get5(i32 %a) nounwind optsize ssp {
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %a}, i64 0, metadata !27, metadata !{metadata !"0x102"}), !dbg !38
|
||||
tail call void @llvm.dbg.value(metadata i32 %a, i64 0, metadata !27, metadata !{!"0x102"}), !dbg !38
|
||||
%1 = load i32* @x5, align 4, !dbg !39
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %1}, i64 0, metadata !28, metadata !{metadata !"0x102"}), !dbg !39
|
||||
tail call void @llvm.dbg.value(metadata i32 %1, i64 0, metadata !28, metadata !{!"0x102"}), !dbg !39
|
||||
store i32 %a, i32* @x5, align 4, !dbg !39
|
||||
ret i32 %1, !dbg !39
|
||||
}
|
||||
@ -73,50 +73,50 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon
|
||||
!llvm.dbg.cu = !{!0}
|
||||
!llvm.module.flags = !{!49}
|
||||
|
||||
!0 = metadata !{metadata !"0x11\0012\00clang\001\00\000\00\001", metadata !47, metadata !48, metadata !48, metadata !40, metadata !41, metadata !48} ; [ DW_TAG_compile_unit ]
|
||||
!1 = metadata !{metadata !"0x2e\00get1\00get1\00\005\000\001\000\006\00256\001\005", metadata !47, metadata !2, metadata !3, null, i32 (i32)* @get1, null, null, metadata !42} ; [ DW_TAG_subprogram ] [line 5] [def] [get1]
|
||||
!2 = metadata !{metadata !"0x29", metadata !47} ; [ DW_TAG_file_type ]
|
||||
!3 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !47, metadata !2, null, metadata !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = metadata !{metadata !5}
|
||||
!5 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, metadata !0} ; [ DW_TAG_base_type ]
|
||||
!6 = metadata !{metadata !"0x2e\00get2\00get2\00\008\000\001\000\006\00256\001\008", metadata !47, metadata !2, metadata !3, null, i32 (i32)* @get2, null, null, metadata !43} ; [ DW_TAG_subprogram ] [line 8] [def] [get2]
|
||||
!7 = metadata !{metadata !"0x2e\00get3\00get3\00\0011\000\001\000\006\00256\001\0011", metadata !47, metadata !2, metadata !3, null, i32 (i32)* @get3, null, null, metadata !44} ; [ DW_TAG_subprogram ] [line 11] [def] [get3]
|
||||
!8 = metadata !{metadata !"0x2e\00get4\00get4\00\0014\000\001\000\006\00256\001\0014", metadata !47, metadata !2, metadata !3, null, i32 (i32)* @get4, null, null, metadata !45} ; [ DW_TAG_subprogram ] [line 14] [def] [get4]
|
||||
!9 = metadata !{metadata !"0x2e\00get5\00get5\00\0017\000\001\000\006\00256\001\0017", metadata !47, metadata !2, metadata !3, null, i32 (i32)* @get5, null, null, metadata !46} ; [ DW_TAG_subprogram ] [line 17] [def] [get5]
|
||||
!10 = metadata !{metadata !"0x101\00a\0016777221\000", metadata !1, metadata !2, metadata !5} ; [ DW_TAG_arg_variable ]
|
||||
!11 = metadata !{metadata !"0x100\00b\005\000", metadata !12, metadata !2, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!12 = metadata !{metadata !"0xb\005\0019\000", metadata !47, metadata !1} ; [ DW_TAG_lexical_block ]
|
||||
!13 = metadata !{metadata !"0x101\00a\0016777224\000", metadata !6, metadata !2, metadata !5} ; [ DW_TAG_arg_variable ]
|
||||
!14 = metadata !{metadata !"0x100\00b\008\000", metadata !15, metadata !2, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!15 = metadata !{metadata !"0xb\008\0017\001", metadata !47, metadata !6} ; [ DW_TAG_lexical_block ]
|
||||
!16 = metadata !{metadata !"0x101\00a\0016777227\000", metadata !7, metadata !2, metadata !5} ; [ DW_TAG_arg_variable ]
|
||||
!17 = metadata !{metadata !"0x100\00b\0011\000", metadata !18, metadata !2, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!18 = metadata !{metadata !"0xb\0011\0019\002", metadata !47, metadata !7} ; [ DW_TAG_lexical_block ]
|
||||
!19 = metadata !{metadata !"0x101\00a\0016777230\000", metadata !8, metadata !2, metadata !5} ; [ DW_TAG_arg_variable ]
|
||||
!20 = metadata !{metadata !"0x100\00b\0014\000", metadata !21, metadata !2, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!21 = metadata !{metadata !"0xb\0014\0019\003", metadata !47, metadata !8} ; [ DW_TAG_lexical_block ]
|
||||
!25 = metadata !{metadata !"0x34\00x1\00x1\00\004\001\001", metadata !0, metadata !2, metadata !5, i32* @x1, null} ; [ DW_TAG_variable ]
|
||||
!26 = metadata !{metadata !"0x34\00x2\00x2\00\007\001\001", metadata !0, metadata !2, metadata !5, i32* @x2, null} ; [ DW_TAG_variable ]
|
||||
!27 = metadata !{metadata !"0x101\00a\0016777233\000", metadata !9, metadata !2, metadata !5} ; [ DW_TAG_arg_variable ]
|
||||
!28 = metadata !{metadata !"0x100\00b\0017\000", metadata !29, metadata !2, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!29 = metadata !{metadata !"0xb\0017\0019\004", metadata !47, metadata !9} ; [ DW_TAG_lexical_block ]
|
||||
!30 = metadata !{i32 5, i32 16, metadata !1, null}
|
||||
!31 = metadata !{i32 5, i32 32, metadata !12, null}
|
||||
!32 = metadata !{i32 8, i32 14, metadata !6, null}
|
||||
!33 = metadata !{i32 8, i32 29, metadata !15, null}
|
||||
!34 = metadata !{i32 11, i32 16, metadata !7, null}
|
||||
!35 = metadata !{i32 11, i32 32, metadata !18, null}
|
||||
!36 = metadata !{i32 14, i32 16, metadata !8, null}
|
||||
!37 = metadata !{i32 14, i32 32, metadata !21, null}
|
||||
!38 = metadata !{i32 17, i32 16, metadata !9, null}
|
||||
!39 = metadata !{i32 17, i32 32, metadata !29, null}
|
||||
!40 = metadata !{metadata !1, metadata !6, metadata !7, metadata !8, metadata !9}
|
||||
!41 = metadata !{metadata !25, metadata !26}
|
||||
!42 = metadata !{metadata !10, metadata !11}
|
||||
!43 = metadata !{metadata !13, metadata !14}
|
||||
!44 = metadata !{metadata !16, metadata !17}
|
||||
!45 = metadata !{metadata !19, metadata !20}
|
||||
!46 = metadata !{metadata !27, metadata !28}
|
||||
!47 = metadata !{metadata !"ss3.c", metadata !"/private/tmp"}
|
||||
!48 = metadata !{}
|
||||
!49 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!0 = !{!"0x11\0012\00clang\001\00\000\00\001", !47, !48, !48, !40, !41, !48} ; [ DW_TAG_compile_unit ]
|
||||
!1 = !{!"0x2e\00get1\00get1\00\005\000\001\000\006\00256\001\005", !47, !2, !3, null, i32 (i32)* @get1, null, null, !42} ; [ DW_TAG_subprogram ] [line 5] [def] [get1]
|
||||
!2 = !{!"0x29", !47} ; [ DW_TAG_file_type ]
|
||||
!3 = !{!"0x15\00\000\000\000\000\000\000", !47, !2, null, !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = !{!5}
|
||||
!5 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !0} ; [ DW_TAG_base_type ]
|
||||
!6 = !{!"0x2e\00get2\00get2\00\008\000\001\000\006\00256\001\008", !47, !2, !3, null, i32 (i32)* @get2, null, null, !43} ; [ DW_TAG_subprogram ] [line 8] [def] [get2]
|
||||
!7 = !{!"0x2e\00get3\00get3\00\0011\000\001\000\006\00256\001\0011", !47, !2, !3, null, i32 (i32)* @get3, null, null, !44} ; [ DW_TAG_subprogram ] [line 11] [def] [get3]
|
||||
!8 = !{!"0x2e\00get4\00get4\00\0014\000\001\000\006\00256\001\0014", !47, !2, !3, null, i32 (i32)* @get4, null, null, !45} ; [ DW_TAG_subprogram ] [line 14] [def] [get4]
|
||||
!9 = !{!"0x2e\00get5\00get5\00\0017\000\001\000\006\00256\001\0017", !47, !2, !3, null, i32 (i32)* @get5, null, null, !46} ; [ DW_TAG_subprogram ] [line 17] [def] [get5]
|
||||
!10 = !{!"0x101\00a\0016777221\000", !1, !2, !5} ; [ DW_TAG_arg_variable ]
|
||||
!11 = !{!"0x100\00b\005\000", !12, !2, !5} ; [ DW_TAG_auto_variable ]
|
||||
!12 = !{!"0xb\005\0019\000", !47, !1} ; [ DW_TAG_lexical_block ]
|
||||
!13 = !{!"0x101\00a\0016777224\000", !6, !2, !5} ; [ DW_TAG_arg_variable ]
|
||||
!14 = !{!"0x100\00b\008\000", !15, !2, !5} ; [ DW_TAG_auto_variable ]
|
||||
!15 = !{!"0xb\008\0017\001", !47, !6} ; [ DW_TAG_lexical_block ]
|
||||
!16 = !{!"0x101\00a\0016777227\000", !7, !2, !5} ; [ DW_TAG_arg_variable ]
|
||||
!17 = !{!"0x100\00b\0011\000", !18, !2, !5} ; [ DW_TAG_auto_variable ]
|
||||
!18 = !{!"0xb\0011\0019\002", !47, !7} ; [ DW_TAG_lexical_block ]
|
||||
!19 = !{!"0x101\00a\0016777230\000", !8, !2, !5} ; [ DW_TAG_arg_variable ]
|
||||
!20 = !{!"0x100\00b\0014\000", !21, !2, !5} ; [ DW_TAG_auto_variable ]
|
||||
!21 = !{!"0xb\0014\0019\003", !47, !8} ; [ DW_TAG_lexical_block ]
|
||||
!25 = !{!"0x34\00x1\00x1\00\004\001\001", !0, !2, !5, i32* @x1, null} ; [ DW_TAG_variable ]
|
||||
!26 = !{!"0x34\00x2\00x2\00\007\001\001", !0, !2, !5, i32* @x2, null} ; [ DW_TAG_variable ]
|
||||
!27 = !{!"0x101\00a\0016777233\000", !9, !2, !5} ; [ DW_TAG_arg_variable ]
|
||||
!28 = !{!"0x100\00b\0017\000", !29, !2, !5} ; [ DW_TAG_auto_variable ]
|
||||
!29 = !{!"0xb\0017\0019\004", !47, !9} ; [ DW_TAG_lexical_block ]
|
||||
!30 = !{i32 5, i32 16, !1, null}
|
||||
!31 = !{i32 5, i32 32, !12, null}
|
||||
!32 = !{i32 8, i32 14, !6, null}
|
||||
!33 = !{i32 8, i32 29, !15, null}
|
||||
!34 = !{i32 11, i32 16, !7, null}
|
||||
!35 = !{i32 11, i32 32, !18, null}
|
||||
!36 = !{i32 14, i32 16, !8, null}
|
||||
!37 = !{i32 14, i32 32, !21, null}
|
||||
!38 = !{i32 17, i32 16, !9, null}
|
||||
!39 = !{i32 17, i32 32, !29, null}
|
||||
!40 = !{!1, !6, !7, !8, !9}
|
||||
!41 = !{!25, !26}
|
||||
!42 = !{!10, !11}
|
||||
!43 = !{!13, !14}
|
||||
!44 = !{!16, !17}
|
||||
!45 = !{!19, !20}
|
||||
!46 = !{!27, !28}
|
||||
!47 = !{!"ss3.c", !"/private/tmp"}
|
||||
!48 = !{}
|
||||
!49 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
@ -65,7 +65,7 @@ declare i32 @__gxx_personality_sj0(...)
|
||||
|
||||
!llvm.module.flags = !{!0, !1, !2, !3}
|
||||
|
||||
!0 = metadata !{i32 1, metadata !"Objective-C Version", i32 2}
|
||||
!1 = metadata !{i32 1, metadata !"Objective-C Image Info Version", i32 0}
|
||||
!2 = metadata !{i32 1, metadata !"Objective-C Image Info Section", metadata !"__DATA, __objc_imageinfo, regular, no_dead_strip"}
|
||||
!3 = metadata !{i32 4, metadata !"Objective-C Garbage Collection", i32 0}
|
||||
!0 = !{i32 1, !"Objective-C Version", i32 2}
|
||||
!1 = !{i32 1, !"Objective-C Image Info Version", i32 0}
|
||||
!2 = !{i32 1, !"Objective-C Image Info Section", !"__DATA, __objc_imageinfo, regular, no_dead_strip"}
|
||||
!3 = !{i32 4, !"Objective-C Garbage Collection", i32 0}
|
||||
|
@ -169,4 +169,4 @@ define arm_aapcs_vfpcc void @foo(float, i1 zeroext, i1 zeroext) nounwind uwtable
|
||||
|
||||
declare arm_aapcs_vfpcc void @bar(%0*, float)
|
||||
|
||||
!0 = metadata !{metadata !"branch_weights", i32 64, i32 4}
|
||||
!0 = !{!"branch_weights", i32 64, i32 4}
|
||||
|
@ -8,4 +8,4 @@ define void @f() nounwind ssp {
|
||||
ret void
|
||||
}
|
||||
|
||||
!0 = metadata !{i32 318437}
|
||||
!0 = !{i32 318437}
|
||||
|
@ -8,4 +8,4 @@ define hidden void @f(i32* %corr, i32 %order) nounwind ssp {
|
||||
ret void
|
||||
}
|
||||
|
||||
!0 = metadata !{i32 257}
|
||||
!0 = !{i32 257}
|
||||
|
@ -27,11 +27,11 @@ for.cond1: ; preds = %for.end9, %for.cond
|
||||
|
||||
for.body2: ; preds = %for.cond1
|
||||
store i32 %storemerge11, i32* @b, align 4, !dbg !26
|
||||
tail call void @llvm.dbg.value(metadata !27, i64 0, metadata !11, metadata !{metadata !"0x102"}), !dbg !28
|
||||
tail call void @llvm.dbg.value(metadata i32* null, i64 0, metadata !11, metadata !{!"0x102"}), !dbg !28
|
||||
%0 = load i64* @a, align 8, !dbg !29
|
||||
%xor = xor i64 %0, %e.1.ph, !dbg !29
|
||||
%conv3 = trunc i64 %xor to i32, !dbg !29
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %conv3}, i64 0, metadata !10, metadata !{metadata !"0x102"}), !dbg !29
|
||||
tail call void @llvm.dbg.value(metadata i32 %conv3, i64 0, metadata !10, metadata !{!"0x102"}), !dbg !29
|
||||
%tobool4 = icmp eq i32 %conv3, 0, !dbg !29
|
||||
br i1 %tobool4, label %land.end, label %land.rhs, !dbg !29
|
||||
|
||||
@ -79,33 +79,33 @@ attributes #3 = { nounwind }
|
||||
!llvm.dbg.cu = !{!0}
|
||||
!llvm.module.flags = !{!33}
|
||||
|
||||
!0 = metadata !{metadata !"0x11\0012\00clang version 3.4 (trunk 182024) (llvm/trunk 182023)\001\00\000\00\000", metadata !1, metadata !2, metadata !2, metadata !3, metadata !15, metadata !2} ; [ DW_TAG_compile_unit ] [/d/b/pr16110.c] [DW_LANG_C99]
|
||||
!1 = metadata !{metadata !"pr16110.c", metadata !"/d/b"}
|
||||
!2 = metadata !{}
|
||||
!3 = metadata !{metadata !4}
|
||||
!4 = metadata !{metadata !"0x2e\00pr16110\00pr16110\00\007\000\001\000\006\000\001\007", metadata !1, metadata !5, metadata !6, null, i32 ()* @pr16110, null, null, metadata !9} ; [ DW_TAG_subprogram ] [line 7] [def] [pr16110]
|
||||
!5 = metadata !{metadata !"0x29", metadata !1} ; [ DW_TAG_file_type ] [/d/b/pr16110.c]
|
||||
!6 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", i32 0, null, null, metadata !7, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!7 = metadata !{metadata !8}
|
||||
!8 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc DW_ATE_signed]
|
||||
!9 = metadata !{metadata !10, metadata !11}
|
||||
!10 = metadata !{metadata !"0x100\00e\008\000", metadata !4, metadata !5, metadata !8} ; [ DW_TAG_auto_variable ] [e] [line 8]
|
||||
!11 = metadata !{metadata !"0x100\00f\0013\000", metadata !12, metadata !5, metadata !14} ; [ DW_TAG_auto_variable ] [f] [line 13]
|
||||
!12 = metadata !{metadata !"0xb\0012\000\002", metadata !1, metadata !13} ; [ DW_TAG_lexical_block ] [/d/b/pr16110.c]
|
||||
!13 = metadata !{metadata !"0xb\0012\000\001", metadata !1, metadata !4} ; [ DW_TAG_lexical_block ] [/d/b/pr16110.c]
|
||||
!14 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, null, metadata !8} ; [ DW_TAG_pointer_type ] [line 0, size 32, align 32, offset 0] [from int]
|
||||
!15 = metadata !{metadata !16, metadata !18, metadata !19, metadata !20}
|
||||
!16 = metadata !{metadata !"0x34\00a\00a\00\001\000\001", null, metadata !5, metadata !17, i64* @a, null} ; [ DW_TAG_variable ] [a] [line 1] [def]
|
||||
!17 = metadata !{metadata !"0x24\00long long int\000\0064\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [long long int] [line 0, size 64, align 32, offset 0, enc DW_ATE_signed]
|
||||
!18 = metadata !{metadata !"0x34\00b\00b\00\002\000\001", null, metadata !5, metadata !8, i32* @b, null} ; [ DW_TAG_variable ] [b] [line 2] [def]
|
||||
!19 = metadata !{metadata !"0x34\00c\00c\00\003\000\001", null, metadata !5, metadata !8, i32* @c, null} ; [ DW_TAG_variable ] [c] [line 3] [def]
|
||||
!20 = metadata !{metadata !"0x34\00d\00d\00\004\000\001", null, metadata !5, metadata !8, i32* @d, null} ; [ DW_TAG_variable ] [d] [line 4] [def]
|
||||
!21 = metadata !{i32 10, i32 0, metadata !22, null}
|
||||
!22 = metadata !{metadata !"0xb\0010\000\000", metadata !1, metadata !4} ; [ DW_TAG_lexical_block ] [/d/b/pr16110.c]
|
||||
!26 = metadata !{i32 12, i32 0, metadata !13, null}
|
||||
!27 = metadata !{i32* null}
|
||||
!28 = metadata !{i32 13, i32 0, metadata !12, null}
|
||||
!29 = metadata !{i32 14, i32 0, metadata !12, null}
|
||||
!31 = metadata !{i32 16, i32 0, metadata !4, null}
|
||||
!32 = metadata !{i32 18, i32 0, metadata !4, null}
|
||||
!33 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!0 = !{!"0x11\0012\00clang version 3.4 (trunk 182024) (llvm/trunk 182023)\001\00\000\00\000", !1, !2, !2, !3, !15, !2} ; [ DW_TAG_compile_unit ] [/d/b/pr16110.c] [DW_LANG_C99]
|
||||
!1 = !{!"pr16110.c", !"/d/b"}
|
||||
!2 = !{}
|
||||
!3 = !{!4}
|
||||
!4 = !{!"0x2e\00pr16110\00pr16110\00\007\000\001\000\006\000\001\007", !1, !5, !6, null, i32 ()* @pr16110, null, null, !9} ; [ DW_TAG_subprogram ] [line 7] [def] [pr16110]
|
||||
!5 = !{!"0x29", !1} ; [ DW_TAG_file_type ] [/d/b/pr16110.c]
|
||||
!6 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !7, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!7 = !{!8}
|
||||
!8 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc DW_ATE_signed]
|
||||
!9 = !{!10, !11}
|
||||
!10 = !{!"0x100\00e\008\000", !4, !5, !8} ; [ DW_TAG_auto_variable ] [e] [line 8]
|
||||
!11 = !{!"0x100\00f\0013\000", !12, !5, !14} ; [ DW_TAG_auto_variable ] [f] [line 13]
|
||||
!12 = !{!"0xb\0012\000\002", !1, !13} ; [ DW_TAG_lexical_block ] [/d/b/pr16110.c]
|
||||
!13 = !{!"0xb\0012\000\001", !1, !4} ; [ DW_TAG_lexical_block ] [/d/b/pr16110.c]
|
||||
!14 = !{!"0xf\00\000\0032\0032\000\000", null, null, !8} ; [ DW_TAG_pointer_type ] [line 0, size 32, align 32, offset 0] [from int]
|
||||
!15 = !{!16, !18, !19, !20}
|
||||
!16 = !{!"0x34\00a\00a\00\001\000\001", null, !5, !17, i64* @a, null} ; [ DW_TAG_variable ] [a] [line 1] [def]
|
||||
!17 = !{!"0x24\00long long int\000\0064\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [long long int] [line 0, size 64, align 32, offset 0, enc DW_ATE_signed]
|
||||
!18 = !{!"0x34\00b\00b\00\002\000\001", null, !5, !8, i32* @b, null} ; [ DW_TAG_variable ] [b] [line 2] [def]
|
||||
!19 = !{!"0x34\00c\00c\00\003\000\001", null, !5, !8, i32* @c, null} ; [ DW_TAG_variable ] [c] [line 3] [def]
|
||||
!20 = !{!"0x34\00d\00d\00\004\000\001", null, !5, !8, i32* @d, null} ; [ DW_TAG_variable ] [d] [line 4] [def]
|
||||
!21 = !{i32 10, i32 0, !22, null}
|
||||
!22 = !{!"0xb\0010\000\000", !1, !4} ; [ DW_TAG_lexical_block ] [/d/b/pr16110.c]
|
||||
!26 = !{i32 12, i32 0, !13, null}
|
||||
!27 = !{i32* null}
|
||||
!28 = !{i32 13, i32 0, !12, null}
|
||||
!29 = !{i32 14, i32 0, !12, null}
|
||||
!31 = !{i32 16, i32 0, !4, null}
|
||||
!32 = !{i32 18, i32 0, !4, null}
|
||||
!33 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
@ -25,40 +25,40 @@
|
||||
!llvm.module.flags = !{!9, !10}
|
||||
!llvm.ident = !{!11}
|
||||
|
||||
!0 = metadata !{metadata !"0x11\0012\00clang version 3.5 \000\00\000\00\000", metadata !1, metadata !2, metadata !2, metadata !3, metadata !2, metadata !2} ; [ DW_TAG_compile_unit ] [/tmp/var.c] [DW_LANG_C99]
|
||||
!1 = metadata !{metadata !"var.c", metadata !"/tmp"}
|
||||
!2 = metadata !{}
|
||||
!3 = metadata !{metadata !4}
|
||||
!4 = metadata !{metadata !"0x2e\00sum\00sum\00\005\000\001\000\006\00256\000\005", metadata !1, metadata !5, metadata !6, null, i32 (i32, ...)* @sum, null, null, metadata !2} ; [ DW_TAG_subprogram ] [line 5] [def] [sum]
|
||||
!5 = metadata !{metadata !"0x29", metadata !1} ; [ DW_TAG_file_type ] [/tmp/var.c]
|
||||
!6 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", i32 0, null, null, metadata !7, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!7 = metadata !{metadata !8, metadata !8}
|
||||
!8 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc DW_ATE_signed]
|
||||
!9 = metadata !{i32 2, metadata !"Dwarf Version", i32 4}
|
||||
!10 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!11 = metadata !{metadata !"clang version 3.5 "}
|
||||
!12 = metadata !{metadata !"0x101\00count\0016777221\000", metadata !4, metadata !5, metadata !8} ; [ DW_TAG_arg_variable ] [count] [line 5]
|
||||
!13 = metadata !{i32 5, i32 0, metadata !4, null}
|
||||
!14 = metadata !{metadata !"0x100\00vl\006\000", metadata !4, metadata !5, metadata !15} ; [ DW_TAG_auto_variable ] [vl] [line 6]
|
||||
!15 = metadata !{metadata !"0x16\00va_list\0030\000\000\000\000", metadata !16, null, metadata !17} ; [ DW_TAG_typedef ] [va_list] [line 30, size 0, align 0, offset 0] [from __builtin_va_list]
|
||||
!16 = metadata !{metadata !"/linux-x86_64-high/gcc_4.7.2/dbg/llvm/bin/../lib/clang/3.5/include/stdarg.h", metadata !"/tmp"}
|
||||
!17 = metadata !{metadata !"0x16\00__builtin_va_list\006\000\000\000\000", metadata !1, null, metadata !18} ; [ DW_TAG_typedef ] [__builtin_va_list] [line 6, size 0, align 0, offset 0] [from __va_list]
|
||||
!18 = metadata !{metadata !"0x13\00__va_list\006\0032\0032\000\000\000", metadata !1, null, null, metadata !19, null, null, null} ; [ DW_TAG_structure_type ] [__va_list] [line 6, size 32, align 32, offset 0] [def] [from ]
|
||||
!19 = metadata !{metadata !20}
|
||||
!20 = metadata !{metadata !"0xd\00__ap\006\0032\0032\000\000", metadata !1, metadata !18, metadata !21} ; [ DW_TAG_member ] [__ap] [line 6, size 32, align 32, offset 0] [from ]
|
||||
!21 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, null, null} ; [ DW_TAG_pointer_type ] [line 0, size 32, align 32, offset 0] [from ]
|
||||
!22 = metadata !{i32 6, i32 0, metadata !4, null}
|
||||
!23 = metadata !{i32 7, i32 0, metadata !4, null}
|
||||
!24 = metadata !{metadata !"0x100\00sum\008\000", metadata !4, metadata !5, metadata !8} ; [ DW_TAG_auto_variable ] [sum] [line 8]
|
||||
!25 = metadata !{i32 8, i32 0, metadata !4, null}
|
||||
!26 = metadata !{metadata !"0x100\00i\009\000", metadata !27, metadata !5, metadata !8} ; [ DW_TAG_auto_variable ] [i] [line 9]
|
||||
!27 = metadata !{metadata !"0xb\009\000\000", metadata !1, metadata !4} ; [ DW_TAG_lexical_block ] [/tmp/var.c]
|
||||
!28 = metadata !{i32 9, i32 0, metadata !27, null}
|
||||
!29 = metadata !{i32 10, i32 0, metadata !30, null}
|
||||
!30 = metadata !{metadata !"0xb\009\000\001", metadata !1, metadata !27} ; [ DW_TAG_lexical_block ] [/tmp/var.c]
|
||||
!31 = metadata !{i32 11, i32 0, metadata !30, null}
|
||||
!32 = metadata !{i32 12, i32 0, metadata !4, null}
|
||||
!33 = metadata !{i32 13, i32 0, metadata !4, null}
|
||||
!0 = !{!"0x11\0012\00clang version 3.5 \000\00\000\00\000", !1, !2, !2, !3, !2, !2} ; [ DW_TAG_compile_unit ] [/tmp/var.c] [DW_LANG_C99]
|
||||
!1 = !{!"var.c", !"/tmp"}
|
||||
!2 = !{}
|
||||
!3 = !{!4}
|
||||
!4 = !{!"0x2e\00sum\00sum\00\005\000\001\000\006\00256\000\005", !1, !5, !6, null, i32 (i32, ...)* @sum, null, null, !2} ; [ DW_TAG_subprogram ] [line 5] [def] [sum]
|
||||
!5 = !{!"0x29", !1} ; [ DW_TAG_file_type ] [/tmp/var.c]
|
||||
!6 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !7, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!7 = !{!8, !8}
|
||||
!8 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc DW_ATE_signed]
|
||||
!9 = !{i32 2, !"Dwarf Version", i32 4}
|
||||
!10 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
!11 = !{!"clang version 3.5 "}
|
||||
!12 = !{!"0x101\00count\0016777221\000", !4, !5, !8} ; [ DW_TAG_arg_variable ] [count] [line 5]
|
||||
!13 = !{i32 5, i32 0, !4, null}
|
||||
!14 = !{!"0x100\00vl\006\000", !4, !5, !15} ; [ DW_TAG_auto_variable ] [vl] [line 6]
|
||||
!15 = !{!"0x16\00va_list\0030\000\000\000\000", !16, null, !17} ; [ DW_TAG_typedef ] [va_list] [line 30, size 0, align 0, offset 0] [from __builtin_va_list]
|
||||
!16 = !{!"/linux-x86_64-high/gcc_4.7.2/dbg/llvm/bin/../lib/clang/3.5/include/stdarg.h", !"/tmp"}
|
||||
!17 = !{!"0x16\00__builtin_va_list\006\000\000\000\000", !1, null, !18} ; [ DW_TAG_typedef ] [__builtin_va_list] [line 6, size 0, align 0, offset 0] [from __va_list]
|
||||
!18 = !{!"0x13\00__va_list\006\0032\0032\000\000\000", !1, null, null, !19, null, null, null} ; [ DW_TAG_structure_type ] [__va_list] [line 6, size 32, align 32, offset 0] [def] [from ]
|
||||
!19 = !{!20}
|
||||
!20 = !{!"0xd\00__ap\006\0032\0032\000\000", !1, !18, !21} ; [ DW_TAG_member ] [__ap] [line 6, size 32, align 32, offset 0] [from ]
|
||||
!21 = !{!"0xf\00\000\0032\0032\000\000", null, null, null} ; [ DW_TAG_pointer_type ] [line 0, size 32, align 32, offset 0] [from ]
|
||||
!22 = !{i32 6, i32 0, !4, null}
|
||||
!23 = !{i32 7, i32 0, !4, null}
|
||||
!24 = !{!"0x100\00sum\008\000", !4, !5, !8} ; [ DW_TAG_auto_variable ] [sum] [line 8]
|
||||
!25 = !{i32 8, i32 0, !4, null}
|
||||
!26 = !{!"0x100\00i\009\000", !27, !5, !8} ; [ DW_TAG_auto_variable ] [i] [line 9]
|
||||
!27 = !{!"0xb\009\000\000", !1, !4} ; [ DW_TAG_lexical_block ] [/tmp/var.c]
|
||||
!28 = !{i32 9, i32 0, !27, null}
|
||||
!29 = !{i32 10, i32 0, !30, null}
|
||||
!30 = !{!"0xb\009\000\001", !1, !27} ; [ DW_TAG_lexical_block ] [/tmp/var.c]
|
||||
!31 = !{i32 11, i32 0, !30, null}
|
||||
!32 = !{i32 12, i32 0, !4, null}
|
||||
!33 = !{i32 13, i32 0, !4, null}
|
||||
|
||||
; CHECK-FP-LABEL: sum
|
||||
; CHECK-FP: .cfi_startproc
|
||||
|
@ -128,41 +128,41 @@ declare void @_ZSt9terminatev()
|
||||
!llvm.module.flags = !{!10, !11}
|
||||
!llvm.ident = !{!12}
|
||||
|
||||
!0 = metadata !{metadata !"0x11\004\00clang version 3.5 \000\00\000\00\000", metadata !1, metadata !2, metadata !2, metadata !3, metadata !2, metadata !2} ; [ DW_TAG_compile_unit ] [/tmp/exp.cpp] [DW_LANG_C_plus_plus]
|
||||
!1 = metadata !{metadata !"exp.cpp", metadata !"/tmp"}
|
||||
!2 = metadata !{}
|
||||
!3 = metadata !{metadata !4}
|
||||
!4 = metadata !{metadata !"0x2e\00test\00test\00_Z4testiiiiiddddd\004\000\001\000\006\00256\000\005", metadata !1, metadata !5, metadata !6, null, void (i32, i32, i32, i32, i32, double, double, double, double, double)* @_Z4testiiiiiddddd, null, null, metadata !2} ; [ DW_TAG_subprogram ] [line 4] [def] [scope 5] [test]
|
||||
!5 = metadata !{metadata !"0x29", metadata !1} ; [ DW_TAG_file_type ] [/tmp/exp.cpp]
|
||||
!6 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", i32 0, null, null, metadata !7, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!7 = metadata !{null, metadata !8, metadata !8, metadata !8, metadata !8, metadata !8, metadata !9, metadata !9, metadata !9, metadata !9, metadata !9}
|
||||
!8 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc DW_ATE_signed]
|
||||
!9 = metadata !{metadata !"0x24\00double\000\0064\0064\000\000\004", null, null} ; [ DW_TAG_base_type ] [double] [line 0, size 64, align 64, offset 0, enc DW_ATE_float]
|
||||
!10 = metadata !{i32 2, metadata !"Dwarf Version", i32 4}
|
||||
!11 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!12 = metadata !{metadata !"clang version 3.5 "}
|
||||
!13 = metadata !{metadata !"0x101\00a\0016777220\000", metadata !4, metadata !5, metadata !8} ; [ DW_TAG_arg_variable ] [a] [line 4]
|
||||
!14 = metadata !{i32 4, i32 0, metadata !4, null}
|
||||
!15 = metadata !{metadata !"0x101\00b\0033554436\000", metadata !4, metadata !5, metadata !8} ; [ DW_TAG_arg_variable ] [b] [line 4]
|
||||
!16 = metadata !{metadata !"0x101\00c\0050331652\000", metadata !4, metadata !5, metadata !8} ; [ DW_TAG_arg_variable ] [c] [line 4]
|
||||
!17 = metadata !{metadata !"0x101\00d\0067108868\000", metadata !4, metadata !5, metadata !8} ; [ DW_TAG_arg_variable ] [d] [line 4]
|
||||
!18 = metadata !{metadata !"0x101\00e\0083886084\000", metadata !4, metadata !5, metadata !8} ; [ DW_TAG_arg_variable ] [e] [line 4]
|
||||
!19 = metadata !{metadata !"0x101\00m\00100663301\000", metadata !4, metadata !5, metadata !9} ; [ DW_TAG_arg_variable ] [m] [line 5]
|
||||
!20 = metadata !{i32 5, i32 0, metadata !4, null}
|
||||
!21 = metadata !{metadata !"0x101\00n\00117440517\000", metadata !4, metadata !5, metadata !9} ; [ DW_TAG_arg_variable ] [n] [line 5]
|
||||
!22 = metadata !{metadata !"0x101\00p\00134217733\000", metadata !4, metadata !5, metadata !9} ; [ DW_TAG_arg_variable ] [p] [line 5]
|
||||
!23 = metadata !{metadata !"0x101\00q\00150994949\000", metadata !4, metadata !5, metadata !9} ; [ DW_TAG_arg_variable ] [q] [line 5]
|
||||
!24 = metadata !{metadata !"0x101\00r\00167772165\000", metadata !4, metadata !5, metadata !9} ; [ DW_TAG_arg_variable ] [r] [line 5]
|
||||
!25 = metadata !{i32 7, i32 0, metadata !26, null}
|
||||
!26 = metadata !{metadata !"0xb\006\000\000", metadata !1, metadata !4} ; [ DW_TAG_lexical_block ] [/tmp/exp.cpp]
|
||||
!27 = metadata !{i32 8, i32 0, metadata !26, null}
|
||||
!28 = metadata !{i32 11, i32 0, metadata !26, null}
|
||||
!29 = metadata !{i32 9, i32 0, metadata !30, null}
|
||||
!30 = metadata !{metadata !"0xb\008\000\001", metadata !1, metadata !4} ; [ DW_TAG_lexical_block ] [/tmp/exp.cpp]
|
||||
!31 = metadata !{i32 10, i32 0, metadata !30, null}
|
||||
!32 = metadata !{i32 10, i32 0, metadata !4, null}
|
||||
!33 = metadata !{i32 11, i32 0, metadata !4, null}
|
||||
!34 = metadata !{i32 11, i32 0, metadata !30, null}
|
||||
!0 = !{!"0x11\004\00clang version 3.5 \000\00\000\00\000", !1, !2, !2, !3, !2, !2} ; [ DW_TAG_compile_unit ] [/tmp/exp.cpp] [DW_LANG_C_plus_plus]
|
||||
!1 = !{!"exp.cpp", !"/tmp"}
|
||||
!2 = !{}
|
||||
!3 = !{!4}
|
||||
!4 = !{!"0x2e\00test\00test\00_Z4testiiiiiddddd\004\000\001\000\006\00256\000\005", !1, !5, !6, null, void (i32, i32, i32, i32, i32, double, double, double, double, double)* @_Z4testiiiiiddddd, null, null, !2} ; [ DW_TAG_subprogram ] [line 4] [def] [scope 5] [test]
|
||||
!5 = !{!"0x29", !1} ; [ DW_TAG_file_type ] [/tmp/exp.cpp]
|
||||
!6 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !7, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!7 = !{null, !8, !8, !8, !8, !8, !9, !9, !9, !9, !9}
|
||||
!8 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc DW_ATE_signed]
|
||||
!9 = !{!"0x24\00double\000\0064\0064\000\000\004", null, null} ; [ DW_TAG_base_type ] [double] [line 0, size 64, align 64, offset 0, enc DW_ATE_float]
|
||||
!10 = !{i32 2, !"Dwarf Version", i32 4}
|
||||
!11 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
!12 = !{!"clang version 3.5 "}
|
||||
!13 = !{!"0x101\00a\0016777220\000", !4, !5, !8} ; [ DW_TAG_arg_variable ] [a] [line 4]
|
||||
!14 = !{i32 4, i32 0, !4, null}
|
||||
!15 = !{!"0x101\00b\0033554436\000", !4, !5, !8} ; [ DW_TAG_arg_variable ] [b] [line 4]
|
||||
!16 = !{!"0x101\00c\0050331652\000", !4, !5, !8} ; [ DW_TAG_arg_variable ] [c] [line 4]
|
||||
!17 = !{!"0x101\00d\0067108868\000", !4, !5, !8} ; [ DW_TAG_arg_variable ] [d] [line 4]
|
||||
!18 = !{!"0x101\00e\0083886084\000", !4, !5, !8} ; [ DW_TAG_arg_variable ] [e] [line 4]
|
||||
!19 = !{!"0x101\00m\00100663301\000", !4, !5, !9} ; [ DW_TAG_arg_variable ] [m] [line 5]
|
||||
!20 = !{i32 5, i32 0, !4, null}
|
||||
!21 = !{!"0x101\00n\00117440517\000", !4, !5, !9} ; [ DW_TAG_arg_variable ] [n] [line 5]
|
||||
!22 = !{!"0x101\00p\00134217733\000", !4, !5, !9} ; [ DW_TAG_arg_variable ] [p] [line 5]
|
||||
!23 = !{!"0x101\00q\00150994949\000", !4, !5, !9} ; [ DW_TAG_arg_variable ] [q] [line 5]
|
||||
!24 = !{!"0x101\00r\00167772165\000", !4, !5, !9} ; [ DW_TAG_arg_variable ] [r] [line 5]
|
||||
!25 = !{i32 7, i32 0, !26, null}
|
||||
!26 = !{!"0xb\006\000\000", !1, !4} ; [ DW_TAG_lexical_block ] [/tmp/exp.cpp]
|
||||
!27 = !{i32 8, i32 0, !26, null}
|
||||
!28 = !{i32 11, i32 0, !26, null}
|
||||
!29 = !{i32 9, i32 0, !30, null}
|
||||
!30 = !{!"0xb\008\000\001", !1, !4} ; [ DW_TAG_lexical_block ] [/tmp/exp.cpp]
|
||||
!31 = !{i32 10, i32 0, !30, null}
|
||||
!32 = !{i32 10, i32 0, !4, null}
|
||||
!33 = !{i32 11, i32 0, !4, null}
|
||||
!34 = !{i32 11, i32 0, !30, null}
|
||||
|
||||
; CHECK-FP-LABEL: _Z4testiiiiiddddd:
|
||||
; CHECK-FP: .cfi_startproc
|
||||
|
@ -7,13 +7,13 @@ target triple = "thumbv7-apple-ios"
|
||||
%struct.tag_s = type { i32, i32, i32 }
|
||||
|
||||
define void @foo(%struct.tag_s* nocapture %this, %struct.tag_s* %c, i64 %x, i64 %y, %struct.tag_s* nocapture %ptr1, %struct.tag_s* nocapture %ptr2) nounwind ssp {
|
||||
tail call void @llvm.dbg.value(metadata !{%struct.tag_s* %this}, i64 0, metadata !5, metadata !{metadata !"0x102"}), !dbg !20
|
||||
tail call void @llvm.dbg.value(metadata !{%struct.tag_s* %c}, i64 0, metadata !13, metadata !{metadata !"0x102"}), !dbg !21
|
||||
tail call void @llvm.dbg.value(metadata !{i64 %x}, i64 0, metadata !14, metadata !{metadata !"0x102"}), !dbg !22
|
||||
tail call void @llvm.dbg.value(metadata !{i64 %y}, i64 0, metadata !17, metadata !{metadata !"0x102"}), !dbg !23
|
||||
tail call void @llvm.dbg.value(metadata %struct.tag_s* %this, i64 0, metadata !5, metadata !{!"0x102"}), !dbg !20
|
||||
tail call void @llvm.dbg.value(metadata %struct.tag_s* %c, i64 0, metadata !13, metadata !{!"0x102"}), !dbg !21
|
||||
tail call void @llvm.dbg.value(metadata i64 %x, i64 0, metadata !14, metadata !{!"0x102"}), !dbg !22
|
||||
tail call void @llvm.dbg.value(metadata i64 %y, i64 0, metadata !17, metadata !{!"0x102"}), !dbg !23
|
||||
;CHECK: @DEBUG_VALUE: foo:y <- [R7+8]
|
||||
tail call void @llvm.dbg.value(metadata !{%struct.tag_s* %ptr1}, i64 0, metadata !18, metadata !{metadata !"0x102"}), !dbg !24
|
||||
tail call void @llvm.dbg.value(metadata !{%struct.tag_s* %ptr2}, i64 0, metadata !19, metadata !{metadata !"0x102"}), !dbg !25
|
||||
tail call void @llvm.dbg.value(metadata %struct.tag_s* %ptr1, i64 0, metadata !18, metadata !{!"0x102"}), !dbg !24
|
||||
tail call void @llvm.dbg.value(metadata %struct.tag_s* %ptr2, i64 0, metadata !19, metadata !{!"0x102"}), !dbg !25
|
||||
%1 = icmp eq %struct.tag_s* %c, null, !dbg !26
|
||||
br i1 %1, label %3, label %2, !dbg !26
|
||||
|
||||
@ -32,37 +32,37 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon
|
||||
!llvm.dbg.cu = !{!0}
|
||||
!llvm.module.flags = !{!33}
|
||||
|
||||
!0 = metadata !{metadata !"0x11\0012\00Apple clang version 3.0 (tags/Apple/clang-211.10.1) (based on LLVM 3.0svn)\001\00\000\00\001", metadata !32, metadata !4, metadata !4, metadata !30, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!1 = metadata !{metadata !"0x2e\00foo\00foo\00\0011\000\001\000\006\00256\001\0011", metadata !2, metadata !2, metadata !3, null, void (%struct.tag_s*, %struct.tag_s*, i64, i64, %struct.tag_s*, %struct.tag_s*)* @foo, null, null, metadata !31} ; [ DW_TAG_subprogram ] [line 11] [def] [foo]
|
||||
!2 = metadata !{metadata !"0x29", metadata !32} ; [ DW_TAG_file_type ]
|
||||
!3 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !32, metadata !2, null, metadata !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = metadata !{null}
|
||||
!5 = metadata !{metadata !"0x101\00this\0016777227\000", metadata !1, metadata !2, metadata !6} ; [ DW_TAG_arg_variable ]
|
||||
!6 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !0, metadata !7} ; [ DW_TAG_pointer_type ]
|
||||
!7 = metadata !{metadata !"0x13\00tag_s\005\0096\0032\000\000\000", metadata !32, metadata !0, null, metadata !8, null, null, null} ; [ DW_TAG_structure_type ] [tag_s] [line 5, size 96, align 32, offset 0] [def] [from ]
|
||||
!8 = metadata !{metadata !9, metadata !11, metadata !12}
|
||||
!9 = metadata !{metadata !"0xd\00x\006\0032\0032\000\000", metadata !32, metadata !7, metadata !10} ; [ DW_TAG_member ]
|
||||
!10 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, metadata !0} ; [ DW_TAG_base_type ]
|
||||
!11 = metadata !{metadata !"0xd\00y\007\0032\0032\0032\000", metadata !32, metadata !7, metadata !10} ; [ DW_TAG_member ]
|
||||
!12 = metadata !{metadata !"0xd\00z\008\0032\0032\0064\000", metadata !32, metadata !7, metadata !10} ; [ DW_TAG_member ]
|
||||
!13 = metadata !{metadata !"0x101\00c\0033554443\000", metadata !1, metadata !2, metadata !6} ; [ DW_TAG_arg_variable ]
|
||||
!14 = metadata !{metadata !"0x101\00x\0050331659\000", metadata !1, metadata !2, metadata !15} ; [ DW_TAG_arg_variable ]
|
||||
!15 = metadata !{metadata !"0x16\00UInt64\001\000\000\000\000", metadata !32, metadata !0, metadata !16} ; [ DW_TAG_typedef ]
|
||||
!16 = metadata !{metadata !"0x24\00long long unsigned int\000\0064\0032\000\000\007", null, metadata !0} ; [ DW_TAG_base_type ]
|
||||
!17 = metadata !{metadata !"0x101\00y\0067108875\000", metadata !1, metadata !2, metadata !15} ; [ DW_TAG_arg_variable ]
|
||||
!18 = metadata !{metadata !"0x101\00ptr1\0083886091\000", metadata !1, metadata !2, metadata !6} ; [ DW_TAG_arg_variable ]
|
||||
!19 = metadata !{metadata !"0x101\00ptr2\00100663307\000", metadata !1, metadata !2, metadata !6} ; [ DW_TAG_arg_variable ]
|
||||
!20 = metadata !{i32 11, i32 24, metadata !1, null}
|
||||
!21 = metadata !{i32 11, i32 44, metadata !1, null}
|
||||
!22 = metadata !{i32 11, i32 54, metadata !1, null}
|
||||
!23 = metadata !{i32 11, i32 64, metadata !1, null}
|
||||
!24 = metadata !{i32 11, i32 81, metadata !1, null}
|
||||
!25 = metadata !{i32 11, i32 101, metadata !1, null}
|
||||
!26 = metadata !{i32 12, i32 3, metadata !27, null}
|
||||
!27 = metadata !{metadata !"0xb\0011\00107\000", metadata !2, metadata !1} ; [ DW_TAG_lexical_block ]
|
||||
!28 = metadata !{i32 13, i32 5, metadata !27, null}
|
||||
!29 = metadata !{i32 14, i32 1, metadata !27, null}
|
||||
!30 = metadata !{metadata !1}
|
||||
!31 = metadata !{metadata !5, metadata !13, metadata !14, metadata !17, metadata !18, metadata!19}
|
||||
!32 = metadata !{metadata !"one.c", metadata !"/Volumes/Athwagate/R10048772"}
|
||||
!33 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!0 = !{!"0x11\0012\00Apple clang version 3.0 (tags/Apple/clang-211.10.1) (based on LLVM 3.0svn)\001\00\000\00\001", !32, !4, !4, !30, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!1 = !{!"0x2e\00foo\00foo\00\0011\000\001\000\006\00256\001\0011", !2, !2, !3, null, void (%struct.tag_s*, %struct.tag_s*, i64, i64, %struct.tag_s*, %struct.tag_s*)* @foo, null, null, !31} ; [ DW_TAG_subprogram ] [line 11] [def] [foo]
|
||||
!2 = !{!"0x29", !32} ; [ DW_TAG_file_type ]
|
||||
!3 = !{!"0x15\00\000\000\000\000\000\000", !32, !2, null, !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = !{null}
|
||||
!5 = !{!"0x101\00this\0016777227\000", !1, !2, !6} ; [ DW_TAG_arg_variable ]
|
||||
!6 = !{!"0xf\00\000\0032\0032\000\000", null, !0, !7} ; [ DW_TAG_pointer_type ]
|
||||
!7 = !{!"0x13\00tag_s\005\0096\0032\000\000\000", !32, !0, null, !8, null, null, null} ; [ DW_TAG_structure_type ] [tag_s] [line 5, size 96, align 32, offset 0] [def] [from ]
|
||||
!8 = !{!9, !11, !12}
|
||||
!9 = !{!"0xd\00x\006\0032\0032\000\000", !32, !7, !10} ; [ DW_TAG_member ]
|
||||
!10 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !0} ; [ DW_TAG_base_type ]
|
||||
!11 = !{!"0xd\00y\007\0032\0032\0032\000", !32, !7, !10} ; [ DW_TAG_member ]
|
||||
!12 = !{!"0xd\00z\008\0032\0032\0064\000", !32, !7, !10} ; [ DW_TAG_member ]
|
||||
!13 = !{!"0x101\00c\0033554443\000", !1, !2, !6} ; [ DW_TAG_arg_variable ]
|
||||
!14 = !{!"0x101\00x\0050331659\000", !1, !2, !15} ; [ DW_TAG_arg_variable ]
|
||||
!15 = !{!"0x16\00UInt64\001\000\000\000\000", !32, !0, !16} ; [ DW_TAG_typedef ]
|
||||
!16 = !{!"0x24\00long long unsigned int\000\0064\0032\000\000\007", null, !0} ; [ DW_TAG_base_type ]
|
||||
!17 = !{!"0x101\00y\0067108875\000", !1, !2, !15} ; [ DW_TAG_arg_variable ]
|
||||
!18 = !{!"0x101\00ptr1\0083886091\000", !1, !2, !6} ; [ DW_TAG_arg_variable ]
|
||||
!19 = !{!"0x101\00ptr2\00100663307\000", !1, !2, !6} ; [ DW_TAG_arg_variable ]
|
||||
!20 = !{i32 11, i32 24, !1, null}
|
||||
!21 = !{i32 11, i32 44, !1, null}
|
||||
!22 = !{i32 11, i32 54, !1, null}
|
||||
!23 = !{i32 11, i32 64, !1, null}
|
||||
!24 = !{i32 11, i32 81, !1, null}
|
||||
!25 = !{i32 11, i32 101, !1, null}
|
||||
!26 = !{i32 12, i32 3, !27, null}
|
||||
!27 = !{!"0xb\0011\00107\000", !2, !1} ; [ DW_TAG_lexical_block ]
|
||||
!28 = !{i32 13, i32 5, !27, null}
|
||||
!29 = !{i32 14, i32 1, !27, null}
|
||||
!30 = !{!1}
|
||||
!31 = !{!5, !13, !14, !17, !18, !19}
|
||||
!32 = !{!"one.c", !"/Volumes/Athwagate/R10048772"}
|
||||
!33 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
@ -31,22 +31,22 @@ define hidden void @foobar_func_block_invoke_0(i8* %.block_descriptor, %0* %load
|
||||
%1 = alloca %0*, align 4
|
||||
%bounds = alloca %struct.CR, align 4
|
||||
%data = alloca %struct.CR, align 4
|
||||
call void @llvm.dbg.value(metadata !{i8* %.block_descriptor}, i64 0, metadata !27, metadata !{metadata !"0x102"}), !dbg !129
|
||||
call void @llvm.dbg.value(metadata i8* %.block_descriptor, i64 0, metadata !27, metadata !{!"0x102"}), !dbg !129
|
||||
store %0* %loadedMydata, %0** %1, align 4
|
||||
call void @llvm.dbg.declare(metadata !{%0** %1}, metadata !130, metadata !{metadata !"0x102"}), !dbg !131
|
||||
call void @llvm.dbg.declare(metadata %0** %1, metadata !130, metadata !{!"0x102"}), !dbg !131
|
||||
%2 = bitcast %struct.CR* %bounds to %1*
|
||||
%3 = getelementptr %1* %2, i32 0, i32 0
|
||||
store [4 x i32] %bounds.coerce0, [4 x i32]* %3
|
||||
call void @llvm.dbg.declare(metadata !{%struct.CR* %bounds}, metadata !132, metadata !{metadata !"0x102"}), !dbg !133
|
||||
call void @llvm.dbg.declare(metadata %struct.CR* %bounds, metadata !132, metadata !{!"0x102"}), !dbg !133
|
||||
%4 = bitcast %struct.CR* %data to %1*
|
||||
%5 = getelementptr %1* %4, i32 0, i32 0
|
||||
store [4 x i32] %data.coerce0, [4 x i32]* %5
|
||||
call void @llvm.dbg.declare(metadata !{%struct.CR* %data}, metadata !134, metadata !{metadata !"0x102"}), !dbg !135
|
||||
call void @llvm.dbg.declare(metadata %struct.CR* %data, metadata !134, metadata !{!"0x102"}), !dbg !135
|
||||
%6 = bitcast i8* %.block_descriptor to %2*
|
||||
%7 = getelementptr inbounds %2* %6, i32 0, i32 6
|
||||
call void @llvm.dbg.declare(metadata !{%2* %6}, metadata !136, metadata !163), !dbg !137
|
||||
call void @llvm.dbg.declare(metadata !{%2* %6}, metadata !138, metadata !164), !dbg !137
|
||||
call void @llvm.dbg.declare(metadata !{%2* %6}, metadata !139, metadata !165), !dbg !140
|
||||
call void @llvm.dbg.declare(metadata %2* %6, metadata !136, metadata !163), !dbg !137
|
||||
call void @llvm.dbg.declare(metadata %2* %6, metadata !138, metadata !164), !dbg !137
|
||||
call void @llvm.dbg.declare(metadata %2* %6, metadata !139, metadata !165), !dbg !140
|
||||
%8 = load %0** %1, align 4, !dbg !141
|
||||
%9 = load i8** @"\01L_OBJC_SELECTOR_REFERENCES_13", !dbg !141
|
||||
%10 = bitcast %0* %8 to i8*, !dbg !141
|
||||
@ -95,169 +95,169 @@ define hidden void @foobar_func_block_invoke_0(i8* %.block_descriptor, %0* %load
|
||||
!llvm.dbg.cu = !{!0}
|
||||
!llvm.module.flags = !{!162}
|
||||
|
||||
!0 = metadata !{metadata !"0x11\0016\00Apple clang version 2.1\000\00\002\00\001", metadata !153, metadata !147, metadata !26, metadata !148, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!1 = metadata !{metadata !"0x4\00\00248\0032\0032\000\000\000", metadata !160, metadata !0, null, metadata !3, null, null, null} ; [ DW_TAG_enumeration_type ] [line 248, size 32, align 32, offset 0] [def] [from ]
|
||||
!2 = metadata !{metadata !"0x29", metadata !160} ; [ DW_TAG_file_type ]
|
||||
!3 = metadata !{metadata !4}
|
||||
!4 = metadata !{metadata !"0x28\00Ver1\000"} ; [ DW_TAG_enumerator ]
|
||||
!5 = metadata !{metadata !"0x4\00Mode\0079\0032\0032\000\000\000", metadata !160, metadata !0, null, metadata !7, null, null, null} ; [ DW_TAG_enumeration_type ] [Mode] [line 79, size 32, align 32, offset 0] [def] [from ]
|
||||
!6 = metadata !{metadata !"0x29", metadata !161} ; [ DW_TAG_file_type ]
|
||||
!7 = metadata !{metadata !8}
|
||||
!8 = metadata !{metadata !"0x28\00One\000"} ; [ DW_TAG_enumerator ]
|
||||
!9 = metadata !{metadata !"0x4\00\0015\0032\0032\000\000\000", metadata !149, metadata !0, null, metadata !11, null, null, null} ; [ DW_TAG_enumeration_type ] [line 15, size 32, align 32, offset 0] [def] [from ]
|
||||
!10 = metadata !{metadata !"0x29", metadata !149} ; [ DW_TAG_file_type ]
|
||||
!11 = metadata !{metadata !12, metadata !13}
|
||||
!12 = metadata !{metadata !"0x28\00Unknown\000"} ; [ DW_TAG_enumerator ]
|
||||
!13 = metadata !{metadata !"0x28\00Known\001"} ; [ DW_TAG_enumerator ]
|
||||
!14 = metadata !{metadata !"0x4\00\0020\0032\0032\000\000\000", metadata !150, metadata !0, null, metadata !16, null, null, null} ; [ DW_TAG_enumeration_type ] [line 20, size 32, align 32, offset 0] [def] [from ]
|
||||
!15 = metadata !{metadata !"0x29", metadata !150} ; [ DW_TAG_file_type ]
|
||||
!16 = metadata !{metadata !17, metadata !18}
|
||||
!17 = metadata !{metadata !"0x28\00Single\000"} ; [ DW_TAG_enumerator ]
|
||||
!18 = metadata !{metadata !"0x28\00Double\001"} ; [ DW_TAG_enumerator ]
|
||||
!19 = metadata !{metadata !"0x4\00\0014\0032\0032\000\000\000", metadata !151, metadata !0, null, metadata !21, null, null, null} ; [ DW_TAG_enumeration_type ] [line 14, size 32, align 32, offset 0] [def] [from ]
|
||||
!20 = metadata !{metadata !"0x29", metadata !151} ; [ DW_TAG_file_type ]
|
||||
!21 = metadata !{metadata !22}
|
||||
!22 = metadata !{metadata !"0x28\00Eleven\000"} ; [ DW_TAG_enumerator ]
|
||||
!23 = metadata !{metadata !"0x2e\00foobar_func_block_invoke_0\00foobar_func_block_invoke_0\00\00609\001\001\000\006\00256\000\00609", metadata !152, metadata !24, metadata !25, null, void (i8*, %0*, [4 x i32], [4 x i32])* @foobar_func_block_invoke_0, null, null, null} ; [ DW_TAG_subprogram ] [line 609] [local] [def] [foobar_func_block_invoke_0]
|
||||
!24 = metadata !{metadata !"0x29", metadata !152} ; [ DW_TAG_file_type ]
|
||||
!25 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !152, metadata !24, null, metadata !26, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!26 = metadata !{null}
|
||||
!27 = metadata !{metadata !"0x101\00.block_descriptor\0016777825\0064", metadata !23, metadata !24, metadata !28} ; [ DW_TAG_arg_variable ]
|
||||
!28 = metadata !{metadata !"0xf\00\000\0032\000\000\000", null, metadata !0, metadata !29} ; [ DW_TAG_pointer_type ]
|
||||
!29 = metadata !{metadata !"0x13\00__block_literal_14\00609\00256\0032\000\000\000", metadata !152, metadata !24, null, metadata !30, null, null, null} ; [ DW_TAG_structure_type ] [__block_literal_14] [line 609, size 256, align 32, offset 0] [def] [from ]
|
||||
!30 = metadata !{metadata !31, metadata !33, metadata !35, metadata !36, metadata !37, metadata !48, metadata !89, metadata !124}
|
||||
!31 = metadata !{metadata !"0xd\00__isa\00609\0032\0032\000\000", metadata !152, metadata !24, metadata !32} ; [ DW_TAG_member ]
|
||||
!32 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !0, null} ; [ DW_TAG_pointer_type ]
|
||||
!33 = metadata !{metadata !"0xd\00__flags\00609\0032\0032\0032\000", metadata !152, metadata !24, metadata !34} ; [ DW_TAG_member ]
|
||||
!34 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, metadata !0} ; [ DW_TAG_base_type ]
|
||||
!35 = metadata !{metadata !"0xd\00__reserved\00609\0032\0032\0064\000", metadata !152, metadata !24, metadata !34} ; [ DW_TAG_member ]
|
||||
!36 = metadata !{metadata !"0xd\00__FuncPtr\00609\0032\0032\0096\000", metadata !152, metadata !24, metadata !32} ; [ DW_TAG_member ]
|
||||
!37 = metadata !{metadata !"0xd\00__descriptor\00609\0032\0032\00128\000", metadata !152, metadata !24, metadata !38} ; [ DW_TAG_member ]
|
||||
!38 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !0, metadata !39} ; [ DW_TAG_pointer_type ]
|
||||
!39 = metadata !{metadata !"0x13\00__block_descriptor_withcopydispose\00307\00128\0032\000\000\000", metadata !153, metadata !0, null, metadata !41, null, null, null} ; [ DW_TAG_structure_type ] [__block_descriptor_withcopydispose] [line 307, size 128, align 32, offset 0] [def] [from ]
|
||||
!40 = metadata !{metadata !"0x29", metadata !153} ; [ DW_TAG_file_type ]
|
||||
!41 = metadata !{metadata !42, metadata !44, metadata !45, metadata !47}
|
||||
!42 = metadata !{metadata !"0xd\00reserved\00307\0032\0032\000\000", metadata !153, metadata !40, metadata !43} ; [ DW_TAG_member ]
|
||||
!43 = metadata !{metadata !"0x24\00long unsigned int\000\0032\0032\000\000\007", null, metadata !0} ; [ DW_TAG_base_type ]
|
||||
!44 = metadata !{metadata !"0xd\00Size\00307\0032\0032\0032\000", metadata !153, metadata !40, metadata !43} ; [ DW_TAG_member ]
|
||||
!45 = metadata !{metadata !"0xd\00CopyFuncPtr\00307\0032\0032\0064\000", metadata !153, metadata !40, metadata !46} ; [ DW_TAG_member ]
|
||||
!46 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !0, metadata !32} ; [ DW_TAG_pointer_type ]
|
||||
!47 = metadata !{metadata !"0xd\00DestroyFuncPtr\00307\0032\0032\0096\000", metadata !153, metadata !40, metadata !46} ; [ DW_TAG_member ]
|
||||
!48 = metadata !{metadata !"0xd\00mydata\00609\0032\0032\00160\000", metadata !152, metadata !24, metadata !49} ; [ DW_TAG_member ]
|
||||
!49 = metadata !{metadata !"0xf\00\000\0032\000\000\000", null, metadata !0, metadata !50} ; [ DW_TAG_pointer_type ]
|
||||
!50 = metadata !{metadata !"0x13\00\000\00224\000\000\0016\000", metadata !152, metadata !24, null, metadata !51, null, null, null} ; [ DW_TAG_structure_type ] [line 0, size 224, align 0, offset 0] [def] [from ]
|
||||
!51 = metadata !{metadata !52, metadata !53, metadata !54, metadata !55, metadata !56, metadata !57, metadata !58}
|
||||
!52 = metadata !{metadata !"0xd\00__isa\000\0032\0032\000\000", metadata !152, metadata !24, metadata !32} ; [ DW_TAG_member ]
|
||||
!53 = metadata !{metadata !"0xd\00__forwarding\000\0032\0032\0032\000", metadata !152, metadata !24, metadata !32} ; [ DW_TAG_member ]
|
||||
!54 = metadata !{metadata !"0xd\00__flags\000\0032\0032\0064\000", metadata !152, metadata !24, metadata !34} ; [ DW_TAG_member ]
|
||||
!55 = metadata !{metadata !"0xd\00__size\000\0032\0032\0096\000", metadata !152, metadata !24, metadata !34} ; [ DW_TAG_member ]
|
||||
!56 = metadata !{metadata !"0xd\00__copy_helper\000\0032\0032\00128\000", metadata !152, metadata !24, metadata !32} ; [ DW_TAG_member ]
|
||||
!57 = metadata !{metadata !"0xd\00__destroy_helper\000\0032\0032\00160\000", metadata !152, metadata !24, metadata !32} ; [ DW_TAG_member ]
|
||||
!58 = metadata !{metadata !"0xd\00mydata\000\0032\0032\00192\000", metadata !152, metadata !24, metadata !59} ; [ DW_TAG_member ]
|
||||
!59 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !0, metadata !60} ; [ DW_TAG_pointer_type ]
|
||||
!60 = metadata !{metadata !"0x13\00UIMydata\0026\00128\0032\000\000\0016", metadata !154, metadata !24, null, metadata !62, null, null, null} ; [ DW_TAG_structure_type ] [UIMydata] [line 26, size 128, align 32, offset 0] [def] [from ]
|
||||
!61 = metadata !{metadata !"0x29", metadata !154} ; [ DW_TAG_file_type ]
|
||||
!62 = metadata !{metadata !63, metadata !71, metadata !75, metadata !79}
|
||||
!63 = metadata !{metadata !"0x1c\00\000\000\000\000\000", metadata !60, null, metadata !64} ; [ DW_TAG_inheritance ]
|
||||
!64 = metadata !{metadata !"0x13\00NSO\0066\0032\0032\000\000\0016", metadata !155, metadata !40, null, metadata !66, null, null, null} ; [ DW_TAG_structure_type ] [NSO] [line 66, size 32, align 32, offset 0] [def] [from ]
|
||||
!65 = metadata !{metadata !"0x29", metadata !155} ; [ DW_TAG_file_type ]
|
||||
!66 = metadata !{metadata !67}
|
||||
!67 = metadata !{metadata !"0xd\00isa\0067\0032\0032\000\002", metadata !155, metadata !65, metadata !68, metadata !"", metadata !"", metadata !"", i32 0} ; [ DW_TAG_member ]
|
||||
!68 = metadata !{metadata !"0x16\00Class\00197\000\000\000\000", metadata !153, metadata !0, metadata !69} ; [ DW_TAG_typedef ]
|
||||
!69 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !0, metadata !70} ; [ DW_TAG_pointer_type ]
|
||||
!70 = metadata !{metadata !"0x13\00objc_class\000\000\000\000\004\000", metadata !153, metadata !0, null, null, null, null, null} ; [ DW_TAG_structure_type ] [objc_class] [line 0, size 0, align 0, offset 0] [decl] [from ]
|
||||
!71 = metadata !{metadata !"0xd\00_mydataRef\0028\0032\0032\0032\000", metadata !154, metadata !61, metadata !72, metadata !"", metadata !"", metadata !"", i32 0} ; [ DW_TAG_member ]
|
||||
!72 = metadata !{metadata !"0x16\00CFTypeRef\00313\000\000\000\000", metadata !152, metadata !0, metadata !73} ; [ DW_TAG_typedef ]
|
||||
!73 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !0, metadata !74} ; [ DW_TAG_pointer_type ]
|
||||
!74 = metadata !{metadata !"0x26\00\000\000\000\000\000", null, metadata !0, null} ; [ DW_TAG_const_type ]
|
||||
!75 = metadata !{metadata !"0xd\00_scale\0029\0032\0032\0064\000", metadata !154, metadata !61, metadata !76, metadata !"", metadata !"", metadata !"", i32 0} ; [ DW_TAG_member ]
|
||||
!76 = metadata !{metadata !"0x16\00Float\0089\000\000\000\000", metadata !156, metadata !0, metadata !78} ; [ DW_TAG_typedef ]
|
||||
!77 = metadata !{metadata !"0x29", metadata !156} ; [ DW_TAG_file_type ]
|
||||
!78 = metadata !{metadata !"0x24\00float\000\0032\0032\000\000\004", null, metadata !0} ; [ DW_TAG_base_type ]
|
||||
!79 = metadata !{metadata !"0xd\00_mydataFlags\0037\008\008\0096\000", metadata !154, metadata !61, metadata !80, metadata !"", metadata !"", metadata !"", i32 0} ; [ DW_TAG_member ]
|
||||
!80 = metadata !{metadata !"0x13\00\0030\008\008\000\000\000", metadata !154, metadata !0, null, metadata !81, null, null, null} ; [ DW_TAG_structure_type ] [line 30, size 8, align 8, offset 0] [def] [from ]
|
||||
!81 = metadata !{metadata !82, metadata !84, metadata !85, metadata !86, metadata !87, metadata !88}
|
||||
!82 = metadata !{metadata !"0xd\00named\0031\001\0032\000\000", metadata !154, metadata !61, metadata !83} ; [ DW_TAG_member ]
|
||||
!83 = metadata !{metadata !"0x24\00unsigned int\000\0032\0032\000\000\007", null, metadata !0} ; [ DW_TAG_base_type ]
|
||||
!84 = metadata !{metadata !"0xd\00mydataO\0032\003\0032\001\000", metadata !154, metadata !61, metadata !83} ; [ DW_TAG_member ]
|
||||
!85 = metadata !{metadata !"0xd\00cached\0033\001\0032\004\000", metadata !154, metadata !61, metadata !83} ; [ DW_TAG_member ]
|
||||
!86 = metadata !{metadata !"0xd\00hasBeenCached\0034\001\0032\005\000", metadata !154, metadata !61, metadata !83} ; [ DW_TAG_member ]
|
||||
!87 = metadata !{metadata !"0xd\00hasPattern\0035\001\0032\006\000", metadata !154, metadata !61, metadata !83} ; [ DW_TAG_member ]
|
||||
!88 = metadata !{metadata !"0xd\00isCIMydata\0036\001\0032\007\000", metadata !154, metadata !61, metadata !83} ; [ DW_TAG_member ]
|
||||
!89 = metadata !{metadata !"0xd\00self\00609\0032\0032\00192\000", metadata !152, metadata !24, metadata !90} ; [ DW_TAG_member ]
|
||||
!90 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !0, metadata !91} ; [ DW_TAG_pointer_type ]
|
||||
!91 = metadata !{metadata !"0x13\00MyWork\0036\00384\0032\000\000\0016", metadata !152, metadata !40, null, metadata !92, null, null, null} ; [ DW_TAG_structure_type ] [MyWork] [line 36, size 384, align 32, offset 0] [def] [from ]
|
||||
!92 = metadata !{metadata !93, metadata !98, metadata !101, metadata !107, metadata !123}
|
||||
!93 = metadata !{metadata !"0x1c\00\000\000\000\000\000", metadata !152, metadata !91, metadata !94} ; [ DW_TAG_inheritance ]
|
||||
!94 = metadata !{metadata !"0x13\00twork\0043\0032\0032\000\000\0016", metadata !157, metadata !40, null, metadata !96, null, null, null} ; [ DW_TAG_structure_type ] [twork] [line 43, size 32, align 32, offset 0] [def] [from ]
|
||||
!95 = metadata !{metadata !"0x29", metadata !157} ; [ DW_TAG_file_type ]
|
||||
!96 = metadata !{metadata !97}
|
||||
!97 = metadata !{metadata !"0x1c\00\000\000\000\000\000", metadata !94, null, metadata !64} ; [ DW_TAG_inheritance ]
|
||||
!98 = metadata !{metadata !"0xd\00_itemID\0038\0064\0032\0032\001", metadata !152, metadata !24, metadata !99, metadata !"", metadata !"", metadata !"", i32 0} ; [ DW_TAG_member ]
|
||||
!99 = metadata !{metadata !"0x16\00uint64_t\0055\000\000\000\000", metadata !153, metadata !0, metadata !100} ; [ DW_TAG_typedef ]
|
||||
!100 = metadata !{metadata !"0x24\00long long unsigned int\000\0064\0032\000\000\007", null, metadata !0} ; [ DW_TAG_base_type ]
|
||||
!101 = metadata !{metadata !"0xd\00_library\0039\0032\0032\0096\001", metadata !152, metadata !24, metadata !102, metadata !"", metadata !"", metadata !"", i32 0} ; [ DW_TAG_member ]
|
||||
!102 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !0, metadata !103} ; [ DW_TAG_pointer_type ]
|
||||
!103 = metadata !{metadata !"0x13\00MyLibrary2\0022\0032\0032\000\000\0016", metadata !158, metadata !40, null, metadata !105, null, null, null} ; [ DW_TAG_structure_type ] [MyLibrary2] [line 22, size 32, align 32, offset 0] [def] [from ]
|
||||
!104 = metadata !{metadata !"0x29", metadata !158} ; [ DW_TAG_file_type ]
|
||||
!105 = metadata !{metadata !106}
|
||||
!106 = metadata !{metadata !"0x1c\00\000\000\000\000\000", metadata !103, null, metadata !64} ; [ DW_TAG_inheritance ]
|
||||
!107 = metadata !{metadata !"0xd\00_bounds\0040\00128\0032\00128\001", metadata !152, metadata !24, metadata !108, metadata !"", metadata !"", metadata !"", i32 0} ; [ DW_TAG_member ]
|
||||
!108 = metadata !{metadata !"0x16\00CR\0033\000\000\000\000", metadata !153, metadata !0, metadata !109} ; [ DW_TAG_typedef ]
|
||||
!109 = metadata !{metadata !"0x13\00CR\0029\00128\0032\000\000\000", metadata !156, metadata !0, null, metadata !110, null, null, null} ; [ DW_TAG_structure_type ] [CR] [line 29, size 128, align 32, offset 0] [def] [from ]
|
||||
!110 = metadata !{metadata !111, metadata !117}
|
||||
!111 = metadata !{metadata !"0xd\00origin\0030\0064\0032\000\000", metadata !156, metadata !77, metadata !112} ; [ DW_TAG_member ]
|
||||
!112 = metadata !{metadata !"0x16\00CP\0017\000\000\000\000", metadata !156, metadata !0, metadata !113} ; [ DW_TAG_typedef ]
|
||||
!113 = metadata !{metadata !"0x13\00CP\0013\0064\0032\000\000\000", metadata !156, metadata !0, null, metadata !114, null, null, null} ; [ DW_TAG_structure_type ] [CP] [line 13, size 64, align 32, offset 0] [def] [from ]
|
||||
!114 = metadata !{metadata !115, metadata !116}
|
||||
!115 = metadata !{metadata !"0xd\00x\0014\0032\0032\000\000", metadata !156, metadata !77, metadata !76} ; [ DW_TAG_member ]
|
||||
!116 = metadata !{metadata !"0xd\00y\0015\0032\0032\0032\000", metadata !156, metadata !77, metadata !76} ; [ DW_TAG_member ]
|
||||
!117 = metadata !{metadata !"0xd\00size\0031\0064\0032\0064\000", metadata !156, metadata !77, metadata !118} ; [ DW_TAG_member ]
|
||||
!118 = metadata !{metadata !"0x16\00Size\0025\000\000\000\000", metadata !156, metadata !0, metadata !119} ; [ DW_TAG_typedef ]
|
||||
!119 = metadata !{metadata !"0x13\00Size\0021\0064\0032\000\000\000", metadata !156, metadata !0, null, metadata !120, null, null, null} ; [ DW_TAG_structure_type ] [Size] [line 21, size 64, align 32, offset 0] [def] [from ]
|
||||
!120 = metadata !{metadata !121, metadata !122}
|
||||
!121 = metadata !{metadata !"0xd\00width\0022\0032\0032\000\000", metadata !156, metadata !77, metadata !76} ; [ DW_TAG_member ]
|
||||
!122 = metadata !{metadata !"0xd\00height\0023\0032\0032\0032\000", metadata !156, metadata !77, metadata !76} ; [ DW_TAG_member ]
|
||||
!123 = metadata !{metadata !"0xd\00_data\0040\00128\0032\00256\001", metadata !152, metadata !24, metadata !108, metadata !"", metadata !"", metadata !"", i32 0} ; [ DW_TAG_member ]
|
||||
!124 = metadata !{metadata !"0xd\00semi\00609\0032\0032\00224\000", metadata !152, metadata !24, metadata !125} ; [ DW_TAG_member ]
|
||||
!125 = metadata !{metadata !"0x16\00d_t\0035\000\000\000\000", metadata !152, metadata !0, metadata !126} ; [ DW_TAG_typedef ]
|
||||
!126 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !0, metadata !127} ; [ DW_TAG_pointer_type ]
|
||||
!127 = metadata !{metadata !"0x13\00my_struct\0049\000\000\000\004\000", metadata !159, metadata !0, null, null, null, null, null} ; [ DW_TAG_structure_type ] [my_struct] [line 49, size 0, align 0, offset 0] [decl] [from ]
|
||||
!128 = metadata !{metadata !"0x29", metadata !159} ; [ DW_TAG_file_type ]
|
||||
!129 = metadata !{i32 609, i32 144, metadata !23, null}
|
||||
!130 = metadata !{metadata !"0x101\00loadedMydata\0033555041\000", metadata !23, metadata !24, metadata !59} ; [ DW_TAG_arg_variable ]
|
||||
!131 = metadata !{i32 609, i32 155, metadata !23, null}
|
||||
!132 = metadata !{metadata !"0x101\00bounds\0050332257\000", metadata !23, metadata !24, metadata !108} ; [ DW_TAG_arg_variable ]
|
||||
!133 = metadata !{i32 609, i32 175, metadata !23, null}
|
||||
!134 = metadata !{metadata !"0x101\00data\0067109473\000", metadata !23, metadata !24, metadata !108} ; [ DW_TAG_arg_variable ]
|
||||
!135 = metadata !{i32 609, i32 190, metadata !23, null}
|
||||
!136 = metadata !{metadata !"0x100\00mydata\00604\000", metadata !23, metadata !24, metadata !50} ; [ DW_TAG_auto_variable ]
|
||||
!137 = metadata !{i32 604, i32 49, metadata !23, null}
|
||||
!138 = metadata !{metadata !"0x100\00self\00604\000", metadata !23, metadata !40, metadata !90} ; [ DW_TAG_auto_variable ]
|
||||
!139 = metadata !{metadata !"0x100\00semi\00607\000", metadata !23, metadata !24, metadata !125} ; [ DW_TAG_auto_variable ]
|
||||
!140 = metadata !{i32 607, i32 30, metadata !23, null}
|
||||
!141 = metadata !{i32 610, i32 17, metadata !142, null}
|
||||
!142 = metadata !{metadata !"0xb\00609\00200\0094", metadata !152, metadata !23} ; [ DW_TAG_lexical_block ]
|
||||
!143 = metadata !{i32 611, i32 17, metadata !142, null}
|
||||
!144 = metadata !{i32 612, i32 17, metadata !142, null}
|
||||
!145 = metadata !{i32 613, i32 17, metadata !142, null}
|
||||
!146 = metadata !{i32 615, i32 13, metadata !142, null}
|
||||
!147 = metadata !{metadata !1, metadata !1, metadata !5, metadata !5, metadata !9, metadata !14, metadata !19, metadata !19, metadata !14, metadata !14, metadata !14, metadata !19, metadata !19, metadata !19}
|
||||
!148 = metadata !{metadata !23}
|
||||
!149 = metadata !{metadata !"header3.h", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!150 = metadata !{metadata !"Private.h", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!151 = metadata !{metadata !"header4.h", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!152 = metadata !{metadata !"MyLibrary.m", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!153 = metadata !{metadata !"MyLibrary.i", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!154 = metadata !{metadata !"header11.h", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!155 = metadata !{metadata !"NSO.h", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!156 = metadata !{metadata !"header12.h", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!157 = metadata !{metadata !"header13.h", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!158 = metadata !{metadata !"header14.h", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!159 = metadata !{metadata !"header15.h", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!160 = metadata !{metadata !"header.h", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!161 = metadata !{metadata !"header2.h", metadata !"/Volumes/Sandbox/llvm"}
|
||||
!162 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!163 = metadata !{metadata !"0x102\0034\0020\006\0034\004\006\0034\0024"} ; [ DW_TAG_expression ] [DW_OP_plus 20 DW_OP_deref DW_OP_plus 4 DW_OP_deref DW_OP_plus 24]
|
||||
!164 = metadata !{metadata !"0x102\0034\0024"} ; [ DW_TAG_expression ] [DW_OP_plus 24]
|
||||
!165 = metadata !{metadata !"0x102\0034\0028"} ; [ DW_TAG_expression ] [DW_OP_plus 28]
|
||||
!0 = !{!"0x11\0016\00Apple clang version 2.1\000\00\002\00\001", !153, !147, !26, !148, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!1 = !{!"0x4\00\00248\0032\0032\000\000\000", !160, !0, null, !3, null, null, null} ; [ DW_TAG_enumeration_type ] [line 248, size 32, align 32, offset 0] [def] [from ]
|
||||
!2 = !{!"0x29", !160} ; [ DW_TAG_file_type ]
|
||||
!3 = !{!4}
|
||||
!4 = !{!"0x28\00Ver1\000"} ; [ DW_TAG_enumerator ]
|
||||
!5 = !{!"0x4\00Mode\0079\0032\0032\000\000\000", !160, !0, null, !7, null, null, null} ; [ DW_TAG_enumeration_type ] [Mode] [line 79, size 32, align 32, offset 0] [def] [from ]
|
||||
!6 = !{!"0x29", !161} ; [ DW_TAG_file_type ]
|
||||
!7 = !{!8}
|
||||
!8 = !{!"0x28\00One\000"} ; [ DW_TAG_enumerator ]
|
||||
!9 = !{!"0x4\00\0015\0032\0032\000\000\000", !149, !0, null, !11, null, null, null} ; [ DW_TAG_enumeration_type ] [line 15, size 32, align 32, offset 0] [def] [from ]
|
||||
!10 = !{!"0x29", !149} ; [ DW_TAG_file_type ]
|
||||
!11 = !{!12, !13}
|
||||
!12 = !{!"0x28\00Unknown\000"} ; [ DW_TAG_enumerator ]
|
||||
!13 = !{!"0x28\00Known\001"} ; [ DW_TAG_enumerator ]
|
||||
!14 = !{!"0x4\00\0020\0032\0032\000\000\000", !150, !0, null, !16, null, null, null} ; [ DW_TAG_enumeration_type ] [line 20, size 32, align 32, offset 0] [def] [from ]
|
||||
!15 = !{!"0x29", !150} ; [ DW_TAG_file_type ]
|
||||
!16 = !{!17, !18}
|
||||
!17 = !{!"0x28\00Single\000"} ; [ DW_TAG_enumerator ]
|
||||
!18 = !{!"0x28\00Double\001"} ; [ DW_TAG_enumerator ]
|
||||
!19 = !{!"0x4\00\0014\0032\0032\000\000\000", !151, !0, null, !21, null, null, null} ; [ DW_TAG_enumeration_type ] [line 14, size 32, align 32, offset 0] [def] [from ]
|
||||
!20 = !{!"0x29", !151} ; [ DW_TAG_file_type ]
|
||||
!21 = !{!22}
|
||||
!22 = !{!"0x28\00Eleven\000"} ; [ DW_TAG_enumerator ]
|
||||
!23 = !{!"0x2e\00foobar_func_block_invoke_0\00foobar_func_block_invoke_0\00\00609\001\001\000\006\00256\000\00609", !152, !24, !25, null, void (i8*, %0*, [4 x i32], [4 x i32])* @foobar_func_block_invoke_0, null, null, null} ; [ DW_TAG_subprogram ] [line 609] [local] [def] [foobar_func_block_invoke_0]
|
||||
!24 = !{!"0x29", !152} ; [ DW_TAG_file_type ]
|
||||
!25 = !{!"0x15\00\000\000\000\000\000\000", !152, !24, null, !26, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!26 = !{null}
|
||||
!27 = !{!"0x101\00.block_descriptor\0016777825\0064", !23, !24, !28} ; [ DW_TAG_arg_variable ]
|
||||
!28 = !{!"0xf\00\000\0032\000\000\000", null, !0, !29} ; [ DW_TAG_pointer_type ]
|
||||
!29 = !{!"0x13\00__block_literal_14\00609\00256\0032\000\000\000", !152, !24, null, !30, null, null, null} ; [ DW_TAG_structure_type ] [__block_literal_14] [line 609, size 256, align 32, offset 0] [def] [from ]
|
||||
!30 = !{!31, !33, !35, !36, !37, !48, !89, !124}
|
||||
!31 = !{!"0xd\00__isa\00609\0032\0032\000\000", !152, !24, !32} ; [ DW_TAG_member ]
|
||||
!32 = !{!"0xf\00\000\0032\0032\000\000", null, !0, null} ; [ DW_TAG_pointer_type ]
|
||||
!33 = !{!"0xd\00__flags\00609\0032\0032\0032\000", !152, !24, !34} ; [ DW_TAG_member ]
|
||||
!34 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !0} ; [ DW_TAG_base_type ]
|
||||
!35 = !{!"0xd\00__reserved\00609\0032\0032\0064\000", !152, !24, !34} ; [ DW_TAG_member ]
|
||||
!36 = !{!"0xd\00__FuncPtr\00609\0032\0032\0096\000", !152, !24, !32} ; [ DW_TAG_member ]
|
||||
!37 = !{!"0xd\00__descriptor\00609\0032\0032\00128\000", !152, !24, !38} ; [ DW_TAG_member ]
|
||||
!38 = !{!"0xf\00\000\0032\0032\000\000", null, !0, !39} ; [ DW_TAG_pointer_type ]
|
||||
!39 = !{!"0x13\00__block_descriptor_withcopydispose\00307\00128\0032\000\000\000", !153, !0, null, !41, null, null, null} ; [ DW_TAG_structure_type ] [__block_descriptor_withcopydispose] [line 307, size 128, align 32, offset 0] [def] [from ]
|
||||
!40 = !{!"0x29", !153} ; [ DW_TAG_file_type ]
|
||||
!41 = !{!42, !44, !45, !47}
|
||||
!42 = !{!"0xd\00reserved\00307\0032\0032\000\000", !153, !40, !43} ; [ DW_TAG_member ]
|
||||
!43 = !{!"0x24\00long unsigned int\000\0032\0032\000\000\007", null, !0} ; [ DW_TAG_base_type ]
|
||||
!44 = !{!"0xd\00Size\00307\0032\0032\0032\000", !153, !40, !43} ; [ DW_TAG_member ]
|
||||
!45 = !{!"0xd\00CopyFuncPtr\00307\0032\0032\0064\000", !153, !40, !46} ; [ DW_TAG_member ]
|
||||
!46 = !{!"0xf\00\000\0032\0032\000\000", null, !0, !32} ; [ DW_TAG_pointer_type ]
|
||||
!47 = !{!"0xd\00DestroyFuncPtr\00307\0032\0032\0096\000", !153, !40, !46} ; [ DW_TAG_member ]
|
||||
!48 = !{!"0xd\00mydata\00609\0032\0032\00160\000", !152, !24, !49} ; [ DW_TAG_member ]
|
||||
!49 = !{!"0xf\00\000\0032\000\000\000", null, !0, !50} ; [ DW_TAG_pointer_type ]
|
||||
!50 = !{!"0x13\00\000\00224\000\000\0016\000", !152, !24, null, !51, null, null, null} ; [ DW_TAG_structure_type ] [line 0, size 224, align 0, offset 0] [def] [from ]
|
||||
!51 = !{!52, !53, !54, !55, !56, !57, !58}
|
||||
!52 = !{!"0xd\00__isa\000\0032\0032\000\000", !152, !24, !32} ; [ DW_TAG_member ]
|
||||
!53 = !{!"0xd\00__forwarding\000\0032\0032\0032\000", !152, !24, !32} ; [ DW_TAG_member ]
|
||||
!54 = !{!"0xd\00__flags\000\0032\0032\0064\000", !152, !24, !34} ; [ DW_TAG_member ]
|
||||
!55 = !{!"0xd\00__size\000\0032\0032\0096\000", !152, !24, !34} ; [ DW_TAG_member ]
|
||||
!56 = !{!"0xd\00__copy_helper\000\0032\0032\00128\000", !152, !24, !32} ; [ DW_TAG_member ]
|
||||
!57 = !{!"0xd\00__destroy_helper\000\0032\0032\00160\000", !152, !24, !32} ; [ DW_TAG_member ]
|
||||
!58 = !{!"0xd\00mydata\000\0032\0032\00192\000", !152, !24, !59} ; [ DW_TAG_member ]
|
||||
!59 = !{!"0xf\00\000\0032\0032\000\000", null, !0, !60} ; [ DW_TAG_pointer_type ]
|
||||
!60 = !{!"0x13\00UIMydata\0026\00128\0032\000\000\0016", !154, !24, null, !62, null, null, null} ; [ DW_TAG_structure_type ] [UIMydata] [line 26, size 128, align 32, offset 0] [def] [from ]
|
||||
!61 = !{!"0x29", !154} ; [ DW_TAG_file_type ]
|
||||
!62 = !{!63, !71, !75, !79}
|
||||
!63 = !{!"0x1c\00\000\000\000\000\000", !60, null, !64} ; [ DW_TAG_inheritance ]
|
||||
!64 = !{!"0x13\00NSO\0066\0032\0032\000\000\0016", !155, !40, null, !66, null, null, null} ; [ DW_TAG_structure_type ] [NSO] [line 66, size 32, align 32, offset 0] [def] [from ]
|
||||
!65 = !{!"0x29", !155} ; [ DW_TAG_file_type ]
|
||||
!66 = !{!67}
|
||||
!67 = !{!"0xd\00isa\0067\0032\0032\000\002", !155, !65, !68, !"", !"", !"", i32 0} ; [ DW_TAG_member ]
|
||||
!68 = !{!"0x16\00Class\00197\000\000\000\000", !153, !0, !69} ; [ DW_TAG_typedef ]
|
||||
!69 = !{!"0xf\00\000\0032\0032\000\000", null, !0, !70} ; [ DW_TAG_pointer_type ]
|
||||
!70 = !{!"0x13\00objc_class\000\000\000\000\004\000", !153, !0, null, null, null, null, null} ; [ DW_TAG_structure_type ] [objc_class] [line 0, size 0, align 0, offset 0] [decl] [from ]
|
||||
!71 = !{!"0xd\00_mydataRef\0028\0032\0032\0032\000", !154, !61, !72, !"", !"", !"", i32 0} ; [ DW_TAG_member ]
|
||||
!72 = !{!"0x16\00CFTypeRef\00313\000\000\000\000", !152, !0, !73} ; [ DW_TAG_typedef ]
|
||||
!73 = !{!"0xf\00\000\0032\0032\000\000", null, !0, !74} ; [ DW_TAG_pointer_type ]
|
||||
!74 = !{!"0x26\00\000\000\000\000\000", null, !0, null} ; [ DW_TAG_const_type ]
|
||||
!75 = !{!"0xd\00_scale\0029\0032\0032\0064\000", !154, !61, !76, !"", !"", !"", i32 0} ; [ DW_TAG_member ]
|
||||
!76 = !{!"0x16\00Float\0089\000\000\000\000", !156, !0, !78} ; [ DW_TAG_typedef ]
|
||||
!77 = !{!"0x29", !156} ; [ DW_TAG_file_type ]
|
||||
!78 = !{!"0x24\00float\000\0032\0032\000\000\004", null, !0} ; [ DW_TAG_base_type ]
|
||||
!79 = !{!"0xd\00_mydataFlags\0037\008\008\0096\000", !154, !61, !80, !"", !"", !"", i32 0} ; [ DW_TAG_member ]
|
||||
!80 = !{!"0x13\00\0030\008\008\000\000\000", !154, !0, null, !81, null, null, null} ; [ DW_TAG_structure_type ] [line 30, size 8, align 8, offset 0] [def] [from ]
|
||||
!81 = !{!82, !84, !85, !86, !87, !88}
|
||||
!82 = !{!"0xd\00named\0031\001\0032\000\000", !154, !61, !83} ; [ DW_TAG_member ]
|
||||
!83 = !{!"0x24\00unsigned int\000\0032\0032\000\000\007", null, !0} ; [ DW_TAG_base_type ]
|
||||
!84 = !{!"0xd\00mydataO\0032\003\0032\001\000", !154, !61, !83} ; [ DW_TAG_member ]
|
||||
!85 = !{!"0xd\00cached\0033\001\0032\004\000", !154, !61, !83} ; [ DW_TAG_member ]
|
||||
!86 = !{!"0xd\00hasBeenCached\0034\001\0032\005\000", !154, !61, !83} ; [ DW_TAG_member ]
|
||||
!87 = !{!"0xd\00hasPattern\0035\001\0032\006\000", !154, !61, !83} ; [ DW_TAG_member ]
|
||||
!88 = !{!"0xd\00isCIMydata\0036\001\0032\007\000", !154, !61, !83} ; [ DW_TAG_member ]
|
||||
!89 = !{!"0xd\00self\00609\0032\0032\00192\000", !152, !24, !90} ; [ DW_TAG_member ]
|
||||
!90 = !{!"0xf\00\000\0032\0032\000\000", null, !0, !91} ; [ DW_TAG_pointer_type ]
|
||||
!91 = !{!"0x13\00MyWork\0036\00384\0032\000\000\0016", !152, !40, null, !92, null, null, null} ; [ DW_TAG_structure_type ] [MyWork] [line 36, size 384, align 32, offset 0] [def] [from ]
|
||||
!92 = !{!93, !98, !101, !107, !123}
|
||||
!93 = !{!"0x1c\00\000\000\000\000\000", !152, !91, !94} ; [ DW_TAG_inheritance ]
|
||||
!94 = !{!"0x13\00twork\0043\0032\0032\000\000\0016", !157, !40, null, !96, null, null, null} ; [ DW_TAG_structure_type ] [twork] [line 43, size 32, align 32, offset 0] [def] [from ]
|
||||
!95 = !{!"0x29", !157} ; [ DW_TAG_file_type ]
|
||||
!96 = !{!97}
|
||||
!97 = !{!"0x1c\00\000\000\000\000\000", !94, null, !64} ; [ DW_TAG_inheritance ]
|
||||
!98 = !{!"0xd\00_itemID\0038\0064\0032\0032\001", !152, !24, !99, !"", !"", !"", i32 0} ; [ DW_TAG_member ]
|
||||
!99 = !{!"0x16\00uint64_t\0055\000\000\000\000", !153, !0, !100} ; [ DW_TAG_typedef ]
|
||||
!100 = !{!"0x24\00long long unsigned int\000\0064\0032\000\000\007", null, !0} ; [ DW_TAG_base_type ]
|
||||
!101 = !{!"0xd\00_library\0039\0032\0032\0096\001", !152, !24, !102, !"", !"", !"", i32 0} ; [ DW_TAG_member ]
|
||||
!102 = !{!"0xf\00\000\0032\0032\000\000", null, !0, !103} ; [ DW_TAG_pointer_type ]
|
||||
!103 = !{!"0x13\00MyLibrary2\0022\0032\0032\000\000\0016", !158, !40, null, !105, null, null, null} ; [ DW_TAG_structure_type ] [MyLibrary2] [line 22, size 32, align 32, offset 0] [def] [from ]
|
||||
!104 = !{!"0x29", !158} ; [ DW_TAG_file_type ]
|
||||
!105 = !{!106}
|
||||
!106 = !{!"0x1c\00\000\000\000\000\000", !103, null, !64} ; [ DW_TAG_inheritance ]
|
||||
!107 = !{!"0xd\00_bounds\0040\00128\0032\00128\001", !152, !24, !108, !"", !"", !"", i32 0} ; [ DW_TAG_member ]
|
||||
!108 = !{!"0x16\00CR\0033\000\000\000\000", !153, !0, !109} ; [ DW_TAG_typedef ]
|
||||
!109 = !{!"0x13\00CR\0029\00128\0032\000\000\000", !156, !0, null, !110, null, null, null} ; [ DW_TAG_structure_type ] [CR] [line 29, size 128, align 32, offset 0] [def] [from ]
|
||||
!110 = !{!111, !117}
|
||||
!111 = !{!"0xd\00origin\0030\0064\0032\000\000", !156, !77, !112} ; [ DW_TAG_member ]
|
||||
!112 = !{!"0x16\00CP\0017\000\000\000\000", !156, !0, !113} ; [ DW_TAG_typedef ]
|
||||
!113 = !{!"0x13\00CP\0013\0064\0032\000\000\000", !156, !0, null, !114, null, null, null} ; [ DW_TAG_structure_type ] [CP] [line 13, size 64, align 32, offset 0] [def] [from ]
|
||||
!114 = !{!115, !116}
|
||||
!115 = !{!"0xd\00x\0014\0032\0032\000\000", !156, !77, !76} ; [ DW_TAG_member ]
|
||||
!116 = !{!"0xd\00y\0015\0032\0032\0032\000", !156, !77, !76} ; [ DW_TAG_member ]
|
||||
!117 = !{!"0xd\00size\0031\0064\0032\0064\000", !156, !77, !118} ; [ DW_TAG_member ]
|
||||
!118 = !{!"0x16\00Size\0025\000\000\000\000", !156, !0, !119} ; [ DW_TAG_typedef ]
|
||||
!119 = !{!"0x13\00Size\0021\0064\0032\000\000\000", !156, !0, null, !120, null, null, null} ; [ DW_TAG_structure_type ] [Size] [line 21, size 64, align 32, offset 0] [def] [from ]
|
||||
!120 = !{!121, !122}
|
||||
!121 = !{!"0xd\00width\0022\0032\0032\000\000", !156, !77, !76} ; [ DW_TAG_member ]
|
||||
!122 = !{!"0xd\00height\0023\0032\0032\0032\000", !156, !77, !76} ; [ DW_TAG_member ]
|
||||
!123 = !{!"0xd\00_data\0040\00128\0032\00256\001", !152, !24, !108, !"", !"", !"", i32 0} ; [ DW_TAG_member ]
|
||||
!124 = !{!"0xd\00semi\00609\0032\0032\00224\000", !152, !24, !125} ; [ DW_TAG_member ]
|
||||
!125 = !{!"0x16\00d_t\0035\000\000\000\000", !152, !0, !126} ; [ DW_TAG_typedef ]
|
||||
!126 = !{!"0xf\00\000\0032\0032\000\000", null, !0, !127} ; [ DW_TAG_pointer_type ]
|
||||
!127 = !{!"0x13\00my_struct\0049\000\000\000\004\000", !159, !0, null, null, null, null, null} ; [ DW_TAG_structure_type ] [my_struct] [line 49, size 0, align 0, offset 0] [decl] [from ]
|
||||
!128 = !{!"0x29", !159} ; [ DW_TAG_file_type ]
|
||||
!129 = !{i32 609, i32 144, !23, null}
|
||||
!130 = !{!"0x101\00loadedMydata\0033555041\000", !23, !24, !59} ; [ DW_TAG_arg_variable ]
|
||||
!131 = !{i32 609, i32 155, !23, null}
|
||||
!132 = !{!"0x101\00bounds\0050332257\000", !23, !24, !108} ; [ DW_TAG_arg_variable ]
|
||||
!133 = !{i32 609, i32 175, !23, null}
|
||||
!134 = !{!"0x101\00data\0067109473\000", !23, !24, !108} ; [ DW_TAG_arg_variable ]
|
||||
!135 = !{i32 609, i32 190, !23, null}
|
||||
!136 = !{!"0x100\00mydata\00604\000", !23, !24, !50} ; [ DW_TAG_auto_variable ]
|
||||
!137 = !{i32 604, i32 49, !23, null}
|
||||
!138 = !{!"0x100\00self\00604\000", !23, !40, !90} ; [ DW_TAG_auto_variable ]
|
||||
!139 = !{!"0x100\00semi\00607\000", !23, !24, !125} ; [ DW_TAG_auto_variable ]
|
||||
!140 = !{i32 607, i32 30, !23, null}
|
||||
!141 = !{i32 610, i32 17, !142, null}
|
||||
!142 = !{!"0xb\00609\00200\0094", !152, !23} ; [ DW_TAG_lexical_block ]
|
||||
!143 = !{i32 611, i32 17, !142, null}
|
||||
!144 = !{i32 612, i32 17, !142, null}
|
||||
!145 = !{i32 613, i32 17, !142, null}
|
||||
!146 = !{i32 615, i32 13, !142, null}
|
||||
!147 = !{!1, !1, !5, !5, !9, !14, !19, !19, !14, !14, !14, !19, !19, !19}
|
||||
!148 = !{!23}
|
||||
!149 = !{!"header3.h", !"/Volumes/Sandbox/llvm"}
|
||||
!150 = !{!"Private.h", !"/Volumes/Sandbox/llvm"}
|
||||
!151 = !{!"header4.h", !"/Volumes/Sandbox/llvm"}
|
||||
!152 = !{!"MyLibrary.m", !"/Volumes/Sandbox/llvm"}
|
||||
!153 = !{!"MyLibrary.i", !"/Volumes/Sandbox/llvm"}
|
||||
!154 = !{!"header11.h", !"/Volumes/Sandbox/llvm"}
|
||||
!155 = !{!"NSO.h", !"/Volumes/Sandbox/llvm"}
|
||||
!156 = !{!"header12.h", !"/Volumes/Sandbox/llvm"}
|
||||
!157 = !{!"header13.h", !"/Volumes/Sandbox/llvm"}
|
||||
!158 = !{!"header14.h", !"/Volumes/Sandbox/llvm"}
|
||||
!159 = !{!"header15.h", !"/Volumes/Sandbox/llvm"}
|
||||
!160 = !{!"header.h", !"/Volumes/Sandbox/llvm"}
|
||||
!161 = !{!"header2.h", !"/Volumes/Sandbox/llvm"}
|
||||
!162 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
!163 = !{!"0x102\0034\0020\006\0034\004\006\0034\0024"} ; [ DW_TAG_expression ] [DW_OP_plus 20 DW_OP_deref DW_OP_plus 4 DW_OP_deref DW_OP_plus 24]
|
||||
!164 = !{!"0x102\0034\0024"} ; [ DW_TAG_expression ] [DW_OP_plus 24]
|
||||
!165 = !{!"0x102\0034\0028"} ; [ DW_TAG_expression ] [DW_OP_plus 28]
|
||||
|
@ -20,9 +20,9 @@ entry:
|
||||
|
||||
for.body9: ; preds = %for.body9, %entry
|
||||
%add19 = fadd <4 x float> undef, <float 0.000000e+00, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00>, !dbg !39
|
||||
tail call void @llvm.dbg.value(metadata !{<4 x float> %add19}, i64 0, metadata !27, metadata !{metadata !"0x102"}), !dbg !39
|
||||
tail call void @llvm.dbg.value(metadata <4 x float> %add19, i64 0, metadata !27, metadata !{!"0x102"}), !dbg !39
|
||||
%add20 = fadd <4 x float> undef, <float 0.000000e+00, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00>, !dbg !39
|
||||
tail call void @llvm.dbg.value(metadata !{<4 x float> %add20}, i64 0, metadata !28, metadata !{metadata !"0x102"}), !dbg !39
|
||||
tail call void @llvm.dbg.value(metadata <4 x float> %add20, i64 0, metadata !28, metadata !{!"0x102"}), !dbg !39
|
||||
br i1 %cond, label %for.end54, label %for.body9, !dbg !44
|
||||
|
||||
for.end54: ; preds = %for.body9
|
||||
@ -42,60 +42,60 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon
|
||||
!llvm.module.flags = !{!56}
|
||||
!llvm.dbg.cu = !{!2}
|
||||
|
||||
!0 = metadata !{metadata !"0x2e\00test0001\00test0001\00\003\000\001\000\006\00256\001\000", metadata !54, null, metadata !3, i32 0, <4 x float> (float)* @test0001, null, null, metadata !51} ; [ DW_TAG_subprogram ]
|
||||
!1 = metadata !{metadata !"0x29", metadata !54} ; [ DW_TAG_file_type ]
|
||||
!2 = metadata !{metadata !"0x11\0012\00clang version 3.0 (trunk 129915)\001\00\000\00\001", metadata !54, metadata !17, metadata !17, metadata !50, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!3 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !54, metadata !1, i32 0, metadata !4, i32 0} ; [ DW_TAG_subroutine_type ]
|
||||
!4 = metadata !{metadata !5}
|
||||
!5 = metadata !{metadata !"0x16\00v4f32\0014\000\000\000\000", metadata !54, metadata !2, metadata !6} ; [ DW_TAG_typedef ]
|
||||
!6 = metadata !{metadata !"0x1\00\000\00128\00128\000\000", metadata !54, metadata !2, metadata !7, metadata !8, i32 0, null, null, null} ; [ DW_TAG_array_type ] [line 0, size 128, align 128, offset 0] [from float]
|
||||
!7 = metadata !{metadata !"0x24\00float\000\0032\0032\000\000\004", null, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!8 = metadata !{metadata !9}
|
||||
!9 = metadata !{metadata !"0x21\000\004"} ; [ DW_TAG_subrange_type ]
|
||||
!10 = metadata !{metadata !"0x2e\00main\00main\00\0059\000\001\000\006\00256\001\000", metadata !54, null, metadata !11, null, i32 (i32, i8**, i1)* @main, null, null, metadata !52} ; [ DW_TAG_subprogram ] [line 59] [def] [scope 0] [main]
|
||||
!11 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !54, metadata !1, null, metadata !12, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!12 = metadata !{metadata !13}
|
||||
!13 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!14 = metadata !{metadata !"0x2e\00printFV\00printFV\00\0041\001\001\000\006\00256\001\000", metadata !55, null, metadata !16, null, null, null, null, metadata !53} ; [ DW_TAG_subprogram ] [line 41] [local] [def] [scope 0] [printFV]
|
||||
!15 = metadata !{metadata !"0x29", metadata !55} ; [ DW_TAG_file_type ]
|
||||
!16 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !55, metadata !15, null, metadata !17, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!17 = metadata !{null}
|
||||
!18 = metadata !{metadata !"0x101\00a\0016777219\000", metadata !0, metadata !1, metadata !7} ; [ DW_TAG_arg_variable ]
|
||||
!19 = metadata !{metadata !"0x101\00argc\0016777275\000", metadata !10, metadata !1, metadata !13} ; [ DW_TAG_arg_variable ]
|
||||
!20 = metadata !{metadata !"0x101\00argv\0033554491\000", metadata !10, metadata !1, metadata !21} ; [ DW_TAG_arg_variable ]
|
||||
!21 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !2, metadata !22} ; [ DW_TAG_pointer_type ]
|
||||
!22 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !2, metadata !23} ; [ DW_TAG_pointer_type ]
|
||||
!23 = metadata !{metadata !"0x24\00char\000\008\008\000\000\006", null, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!24 = metadata !{metadata !"0x100\00i\0060\000", metadata !25, metadata !1, metadata !13} ; [ DW_TAG_auto_variable ]
|
||||
!25 = metadata !{metadata !"0xb\0059\0033\0014", metadata !1, metadata !10} ; [ DW_TAG_lexical_block ]
|
||||
!26 = metadata !{metadata !"0x100\00j\0060\000", metadata !25, metadata !1, metadata !13} ; [ DW_TAG_auto_variable ]
|
||||
!27 = metadata !{metadata !"0x100\00x\0061\000", metadata !25, metadata !1, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!28 = metadata !{metadata !"0x100\00y\0062\000", metadata !25, metadata !1, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!29 = metadata !{metadata !"0x100\00z\0063\000", metadata !25, metadata !1, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!30 = metadata !{metadata !"0x101\00F\0016777257\000", metadata !14, metadata !15, metadata !31} ; [ DW_TAG_arg_variable ]
|
||||
!31 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !2, metadata !32} ; [ DW_TAG_pointer_type ]
|
||||
!32 = metadata !{metadata !"0x16\00FV\0025\000\000\000\000", metadata !55, metadata !2, metadata !33} ; [ DW_TAG_typedef ]
|
||||
!33 = metadata !{metadata !"0x17\00\0022\00128\00128\000\000\000", metadata !55, metadata !2, i32 0, metadata !34, null} ; [ DW_TAG_union_type ]
|
||||
!34 = metadata !{metadata !35, metadata !37}
|
||||
!35 = metadata !{metadata !"0xd\00V\0023\00128\00128\000\000", metadata !55, metadata !15, metadata !36} ; [ DW_TAG_member ]
|
||||
!36 = metadata !{metadata !"0x16\00v4sf\003\000\000\000\000", metadata !55, metadata !2, metadata !6} ; [ DW_TAG_typedef ]
|
||||
!37 = metadata !{metadata !"0xd\00A\0024\00128\0032\000\000", metadata !55, metadata !15, metadata !38} ; [ DW_TAG_member ]
|
||||
!38 = metadata !{metadata !"0x1\00\000\00128\0032\000\000", null, metadata !2, metadata !7, metadata !8, i32 0, i32 0} ; [ DW_TAG_array_type ]
|
||||
!39 = metadata !{i32 79, i32 7, metadata !40, null}
|
||||
!40 = metadata !{metadata !"0xb\0075\0035\0018", metadata !1, metadata !41} ; [ DW_TAG_lexical_block ]
|
||||
!41 = metadata !{metadata !"0xb\0075\005\0017", metadata !1, metadata !42} ; [ DW_TAG_lexical_block ]
|
||||
!42 = metadata !{metadata !"0xb\0071\0032\0016", metadata !1, metadata !43} ; [ DW_TAG_lexical_block ]
|
||||
!43 = metadata !{metadata !"0xb\0071\003\0015", metadata !1, metadata !25} ; [ DW_TAG_lexical_block ]
|
||||
!44 = metadata !{i32 75, i32 5, metadata !42, null}
|
||||
!45 = metadata !{i32 42, i32 2, metadata !46, metadata !48}
|
||||
!46 = metadata !{metadata !"0xb\0042\002\0020", metadata !15, metadata !47} ; [ DW_TAG_lexical_block ]
|
||||
!47 = metadata !{metadata !"0xb\0041\0028\0019", metadata !15, metadata !14} ; [ DW_TAG_lexical_block ]
|
||||
!48 = metadata !{i32 95, i32 3, metadata !25, null}
|
||||
!49 = metadata !{i32 99, i32 3, metadata !25, null}
|
||||
!50 = metadata !{metadata !0, metadata !10, metadata !14}
|
||||
!51 = metadata !{metadata !18}
|
||||
!52 = metadata !{metadata !19, metadata !20, metadata !24, metadata !26, metadata !27, metadata !28, metadata !29}
|
||||
!53 = metadata !{metadata !30}
|
||||
!54 = metadata !{metadata !"build2.c", metadata !"/private/tmp"}
|
||||
!55 = metadata !{metadata !"/Volumes/Lalgate/work/llvm/projects/llvm-test/SingleSource/UnitTests/Vector/helpers.h", metadata !"/private/tmp"}
|
||||
!56 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!0 = !{!"0x2e\00test0001\00test0001\00\003\000\001\000\006\00256\001\000", !54, null, !3, i32 0, <4 x float> (float)* @test0001, null, null, !51} ; [ DW_TAG_subprogram ]
|
||||
!1 = !{!"0x29", !54} ; [ DW_TAG_file_type ]
|
||||
!2 = !{!"0x11\0012\00clang version 3.0 (trunk 129915)\001\00\000\00\001", !54, !17, !17, !50, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!3 = !{!"0x15\00\000\000\000\000\000\000", !54, !1, i32 0, !4, i32 0} ; [ DW_TAG_subroutine_type ]
|
||||
!4 = !{!5}
|
||||
!5 = !{!"0x16\00v4f32\0014\000\000\000\000", !54, !2, !6} ; [ DW_TAG_typedef ]
|
||||
!6 = !{!"0x1\00\000\00128\00128\000\000", !54, !2, !7, !8, i32 0, null, null, null} ; [ DW_TAG_array_type ] [line 0, size 128, align 128, offset 0] [from float]
|
||||
!7 = !{!"0x24\00float\000\0032\0032\000\000\004", null, !2} ; [ DW_TAG_base_type ]
|
||||
!8 = !{!9}
|
||||
!9 = !{!"0x21\000\004"} ; [ DW_TAG_subrange_type ]
|
||||
!10 = !{!"0x2e\00main\00main\00\0059\000\001\000\006\00256\001\000", !54, null, !11, null, i32 (i32, i8**, i1)* @main, null, null, !52} ; [ DW_TAG_subprogram ] [line 59] [def] [scope 0] [main]
|
||||
!11 = !{!"0x15\00\000\000\000\000\000\000", !54, !1, null, !12, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!12 = !{!13}
|
||||
!13 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !2} ; [ DW_TAG_base_type ]
|
||||
!14 = !{!"0x2e\00printFV\00printFV\00\0041\001\001\000\006\00256\001\000", !55, null, !16, null, null, null, null, !53} ; [ DW_TAG_subprogram ] [line 41] [local] [def] [scope 0] [printFV]
|
||||
!15 = !{!"0x29", !55} ; [ DW_TAG_file_type ]
|
||||
!16 = !{!"0x15\00\000\000\000\000\000\000", !55, !15, null, !17, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!17 = !{null}
|
||||
!18 = !{!"0x101\00a\0016777219\000", !0, !1, !7} ; [ DW_TAG_arg_variable ]
|
||||
!19 = !{!"0x101\00argc\0016777275\000", !10, !1, !13} ; [ DW_TAG_arg_variable ]
|
||||
!20 = !{!"0x101\00argv\0033554491\000", !10, !1, !21} ; [ DW_TAG_arg_variable ]
|
||||
!21 = !{!"0xf\00\000\0032\0032\000\000", null, !2, !22} ; [ DW_TAG_pointer_type ]
|
||||
!22 = !{!"0xf\00\000\0032\0032\000\000", null, !2, !23} ; [ DW_TAG_pointer_type ]
|
||||
!23 = !{!"0x24\00char\000\008\008\000\000\006", null, !2} ; [ DW_TAG_base_type ]
|
||||
!24 = !{!"0x100\00i\0060\000", !25, !1, !13} ; [ DW_TAG_auto_variable ]
|
||||
!25 = !{!"0xb\0059\0033\0014", !1, !10} ; [ DW_TAG_lexical_block ]
|
||||
!26 = !{!"0x100\00j\0060\000", !25, !1, !13} ; [ DW_TAG_auto_variable ]
|
||||
!27 = !{!"0x100\00x\0061\000", !25, !1, !5} ; [ DW_TAG_auto_variable ]
|
||||
!28 = !{!"0x100\00y\0062\000", !25, !1, !5} ; [ DW_TAG_auto_variable ]
|
||||
!29 = !{!"0x100\00z\0063\000", !25, !1, !5} ; [ DW_TAG_auto_variable ]
|
||||
!30 = !{!"0x101\00F\0016777257\000", !14, !15, !31} ; [ DW_TAG_arg_variable ]
|
||||
!31 = !{!"0xf\00\000\0032\0032\000\000", null, !2, !32} ; [ DW_TAG_pointer_type ]
|
||||
!32 = !{!"0x16\00FV\0025\000\000\000\000", !55, !2, !33} ; [ DW_TAG_typedef ]
|
||||
!33 = !{!"0x17\00\0022\00128\00128\000\000\000", !55, !2, i32 0, !34, null} ; [ DW_TAG_union_type ]
|
||||
!34 = !{!35, !37}
|
||||
!35 = !{!"0xd\00V\0023\00128\00128\000\000", !55, !15, !36} ; [ DW_TAG_member ]
|
||||
!36 = !{!"0x16\00v4sf\003\000\000\000\000", !55, !2, !6} ; [ DW_TAG_typedef ]
|
||||
!37 = !{!"0xd\00A\0024\00128\0032\000\000", !55, !15, !38} ; [ DW_TAG_member ]
|
||||
!38 = !{!"0x1\00\000\00128\0032\000\000", null, !2, !7, !8, i32 0, i32 0} ; [ DW_TAG_array_type ]
|
||||
!39 = !{i32 79, i32 7, !40, null}
|
||||
!40 = !{!"0xb\0075\0035\0018", !1, !41} ; [ DW_TAG_lexical_block ]
|
||||
!41 = !{!"0xb\0075\005\0017", !1, !42} ; [ DW_TAG_lexical_block ]
|
||||
!42 = !{!"0xb\0071\0032\0016", !1, !43} ; [ DW_TAG_lexical_block ]
|
||||
!43 = !{!"0xb\0071\003\0015", !1, !25} ; [ DW_TAG_lexical_block ]
|
||||
!44 = !{i32 75, i32 5, !42, null}
|
||||
!45 = !{i32 42, i32 2, !46, !48}
|
||||
!46 = !{!"0xb\0042\002\0020", !15, !47} ; [ DW_TAG_lexical_block ]
|
||||
!47 = !{!"0xb\0041\0028\0019", !15, !14} ; [ DW_TAG_lexical_block ]
|
||||
!48 = !{i32 95, i32 3, !25, null}
|
||||
!49 = !{i32 99, i32 3, !25, null}
|
||||
!50 = !{!0, !10, !14}
|
||||
!51 = !{!18}
|
||||
!52 = !{!19, !20, !24, !26, !27, !28, !29}
|
||||
!53 = !{!30}
|
||||
!54 = !{!"build2.c", !"/private/tmp"}
|
||||
!55 = !{!"/Volumes/Lalgate/work/llvm/projects/llvm-test/SingleSource/UnitTests/Vector/helpers.h", !"/private/tmp"}
|
||||
!56 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
@ -12,9 +12,9 @@ target triple = "thumbv7-apple-darwin10"
|
||||
|
||||
define i32 @inlineprinter(i8* %ptr, double %val, i8 zeroext %c) nounwind optsize {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i8* %ptr}, i64 0, metadata !19, metadata !{metadata !"0x102"}), !dbg !26
|
||||
tail call void @llvm.dbg.value(metadata !{double %val}, i64 0, metadata !20, metadata !{metadata !"0x102"}), !dbg !26
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %c}, i64 0, metadata !21, metadata !{metadata !"0x102"}), !dbg !26
|
||||
tail call void @llvm.dbg.value(metadata i8* %ptr, i64 0, metadata !19, metadata !{!"0x102"}), !dbg !26
|
||||
tail call void @llvm.dbg.value(metadata double %val, i64 0, metadata !20, metadata !{!"0x102"}), !dbg !26
|
||||
tail call void @llvm.dbg.value(metadata i8 %c, i64 0, metadata !21, metadata !{!"0x102"}), !dbg !26
|
||||
%0 = zext i8 %c to i32, !dbg !27
|
||||
%1 = tail call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([11 x i8]* @.str, i32 0, i32 0), i8* %ptr, double %val, i32 %0) nounwind, !dbg !27
|
||||
ret i32 0, !dbg !29
|
||||
@ -22,9 +22,9 @@ entry:
|
||||
|
||||
define i32 @printer(i8* %ptr, double %val, i8 zeroext %c) nounwind optsize noinline {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i8* %ptr}, i64 0, metadata !16, metadata !{metadata !"0x102"}), !dbg !30
|
||||
tail call void @llvm.dbg.value(metadata !{double %val}, i64 0, metadata !17, metadata !{metadata !"0x102"}), !dbg !30
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %c}, i64 0, metadata !18, metadata !{metadata !"0x102"}), !dbg !30
|
||||
tail call void @llvm.dbg.value(metadata i8* %ptr, i64 0, metadata !16, metadata !{!"0x102"}), !dbg !30
|
||||
tail call void @llvm.dbg.value(metadata double %val, i64 0, metadata !17, metadata !{!"0x102"}), !dbg !30
|
||||
tail call void @llvm.dbg.value(metadata i8 %c, i64 0, metadata !18, metadata !{!"0x102"}), !dbg !30
|
||||
%0 = zext i8 %c to i32, !dbg !31
|
||||
%1 = tail call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([11 x i8]* @.str, i32 0, i32 0), i8* %ptr, double %val, i32 %0) nounwind, !dbg !31
|
||||
ret i32 0, !dbg !33
|
||||
@ -36,18 +36,18 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon
|
||||
|
||||
define i32 @main(i32 %argc, i8** nocapture %argv) nounwind optsize {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %argc}, i64 0, metadata !22, metadata !{metadata !"0x102"}), !dbg !34
|
||||
tail call void @llvm.dbg.value(metadata !{i8** %argv}, i64 0, metadata !23, metadata !{metadata !"0x102"}), !dbg !34
|
||||
tail call void @llvm.dbg.value(metadata i32 %argc, i64 0, metadata !22, metadata !{!"0x102"}), !dbg !34
|
||||
tail call void @llvm.dbg.value(metadata i8** %argv, i64 0, metadata !23, metadata !{!"0x102"}), !dbg !34
|
||||
%0 = sitofp i32 %argc to double, !dbg !35
|
||||
%1 = fadd double %0, 5.555552e+05, !dbg !35
|
||||
tail call void @llvm.dbg.value(metadata !{double %1}, i64 0, metadata !24, metadata !{metadata !"0x102"}), !dbg !35
|
||||
tail call void @llvm.dbg.value(metadata double %1, i64 0, metadata !24, metadata !{!"0x102"}), !dbg !35
|
||||
%2 = tail call i32 @puts(i8* getelementptr inbounds ([6 x i8]* @.str1, i32 0, i32 0)) nounwind, !dbg !36
|
||||
%3 = getelementptr inbounds i8* bitcast (i32 (i32, i8**)* @main to i8*), i32 %argc, !dbg !37
|
||||
%4 = trunc i32 %argc to i8, !dbg !37
|
||||
%5 = add i8 %4, 97, !dbg !37
|
||||
tail call void @llvm.dbg.value(metadata !{i8* %3}, i64 0, metadata !19, metadata !{metadata !"0x102"}) nounwind, !dbg !38
|
||||
tail call void @llvm.dbg.value(metadata !{double %1}, i64 0, metadata !20, metadata !{metadata !"0x102"}) nounwind, !dbg !38
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %5}, i64 0, metadata !21, metadata !{metadata !"0x102"}) nounwind, !dbg !38
|
||||
tail call void @llvm.dbg.value(metadata i8* %3, i64 0, metadata !19, metadata !{!"0x102"}) nounwind, !dbg !38
|
||||
tail call void @llvm.dbg.value(metadata double %1, i64 0, metadata !20, metadata !{!"0x102"}) nounwind, !dbg !38
|
||||
tail call void @llvm.dbg.value(metadata i8 %5, i64 0, metadata !21, metadata !{!"0x102"}) nounwind, !dbg !38
|
||||
%6 = zext i8 %5 to i32, !dbg !39
|
||||
%7 = tail call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([11 x i8]* @.str, i32 0, i32 0), i8* %3, double %1, i32 %6) nounwind, !dbg !39
|
||||
%8 = tail call i32 @printer(i8* %3, double %1, i8 zeroext %5) nounwind, !dbg !40
|
||||
@ -59,52 +59,52 @@ declare i32 @puts(i8* nocapture) nounwind
|
||||
!llvm.dbg.cu = !{!2}
|
||||
!llvm.module.flags = !{!48}
|
||||
|
||||
!0 = metadata !{metadata !"0x2e\00printer\00printer\00printer\0012\000\001\000\006\00256\001\0012", metadata !46, metadata !1, metadata !3, null, i32 (i8*, double, i8)* @printer, null, null, metadata !43} ; [ DW_TAG_subprogram ]
|
||||
!1 = metadata !{metadata !"0x29", metadata !46} ; [ DW_TAG_file_type ]
|
||||
!2 = metadata !{metadata !"0x11\001\00(LLVM build 00)\001\00\000\00\001", metadata !46, metadata !47, metadata !47, metadata !42, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!3 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !46, metadata !1, null, metadata !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = metadata !{metadata !5, metadata !6, metadata !7, metadata !8}
|
||||
!5 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", metadata !46, metadata !1} ; [ DW_TAG_base_type ]
|
||||
!6 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", metadata !46, metadata !1, null} ; [ DW_TAG_pointer_type ]
|
||||
!7 = metadata !{metadata !"0x24\00double\000\0064\0032\000\000\004", metadata !46, metadata !1} ; [ DW_TAG_base_type ]
|
||||
!8 = metadata !{metadata !"0x24\00unsigned char\000\008\008\000\000\008", metadata !46, metadata !1} ; [ DW_TAG_base_type ]
|
||||
!9 = metadata !{metadata !"0x2e\00inlineprinter\00inlineprinter\00inlineprinter\005\000\001\000\006\00256\001\005", metadata !46, metadata !1, metadata !3, null, i32 (i8*, double, i8)* @inlineprinter, null, null, metadata !44} ; [ DW_TAG_subprogram ]
|
||||
!10 = metadata !{metadata !"0x2e\00main\00main\00main\0018\000\001\000\006\00256\001\0018", metadata !46, metadata !1, metadata !11, null, i32 (i32, i8**)* @main, null, null, metadata !45} ; [ DW_TAG_subprogram ]
|
||||
!11 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !46, metadata !1, null, metadata !12, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!12 = metadata !{metadata !5, metadata !5, metadata !13}
|
||||
!13 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", metadata !46, metadata !1, metadata !14} ; [ DW_TAG_pointer_type ]
|
||||
!14 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", metadata !46, metadata !1, metadata !15} ; [ DW_TAG_pointer_type ]
|
||||
!15 = metadata !{metadata !"0x24\00char\000\008\008\000\000\006", metadata !46, metadata !1} ; [ DW_TAG_base_type ]
|
||||
!16 = metadata !{metadata !"0x101\00ptr\0011\000", metadata !0, metadata !1, metadata !6} ; [ DW_TAG_arg_variable ]
|
||||
!17 = metadata !{metadata !"0x101\00val\0011\000", metadata !0, metadata !1, metadata !7} ; [ DW_TAG_arg_variable ]
|
||||
!18 = metadata !{metadata !"0x101\00c\0011\000", metadata !0, metadata !1, metadata !8} ; [ DW_TAG_arg_variable ]
|
||||
!19 = metadata !{metadata !"0x101\00ptr\004\000", metadata !9, metadata !1, metadata !6} ; [ DW_TAG_arg_variable ]
|
||||
!20 = metadata !{metadata !"0x101\00val\004\000", metadata !9, metadata !1, metadata !7} ; [ DW_TAG_arg_variable ]
|
||||
!21 = metadata !{metadata !"0x101\00c\004\000", metadata !9, metadata !1, metadata !8} ; [ DW_TAG_arg_variable ]
|
||||
!22 = metadata !{metadata !"0x101\00argc\0017\000", metadata !10, metadata !1, metadata !5} ; [ DW_TAG_arg_variable ]
|
||||
!23 = metadata !{metadata !"0x101\00argv\0017\000", metadata !10, metadata !1, metadata !13} ; [ DW_TAG_arg_variable ]
|
||||
!24 = metadata !{metadata !"0x100\00dval\0019\000", metadata !25, metadata !1, metadata !7} ; [ DW_TAG_auto_variable ]
|
||||
!25 = metadata !{metadata !"0xb\0018\000\002", metadata !46, metadata !10} ; [ DW_TAG_lexical_block ]
|
||||
!26 = metadata !{i32 4, i32 0, metadata !9, null}
|
||||
!27 = metadata !{i32 6, i32 0, metadata !28, null}
|
||||
!28 = metadata !{metadata !"0xb\005\000\001", metadata !46, metadata !9} ; [ DW_TAG_lexical_block ]
|
||||
!29 = metadata !{i32 7, i32 0, metadata !28, null}
|
||||
!30 = metadata !{i32 11, i32 0, metadata !0, null}
|
||||
!31 = metadata !{i32 13, i32 0, metadata !32, null}
|
||||
!32 = metadata !{metadata !"0xb\0012\000\000", metadata !46, metadata !0} ; [ DW_TAG_lexical_block ]
|
||||
!33 = metadata !{i32 14, i32 0, metadata !32, null}
|
||||
!34 = metadata !{i32 17, i32 0, metadata !10, null}
|
||||
!35 = metadata !{i32 19, i32 0, metadata !25, null}
|
||||
!36 = metadata !{i32 20, i32 0, metadata !25, null}
|
||||
!37 = metadata !{i32 21, i32 0, metadata !25, null}
|
||||
!38 = metadata !{i32 4, i32 0, metadata !9, metadata !37}
|
||||
!39 = metadata !{i32 6, i32 0, metadata !28, metadata !37}
|
||||
!40 = metadata !{i32 22, i32 0, metadata !25, null}
|
||||
!41 = metadata !{i32 23, i32 0, metadata !25, null}
|
||||
!42 = metadata !{metadata !0, metadata !9, metadata !10}
|
||||
!43 = metadata !{metadata !16, metadata !17, metadata !18}
|
||||
!44 = metadata !{metadata !19, metadata !20, metadata !21}
|
||||
!45 = metadata !{metadata !22, metadata !23, metadata !24}
|
||||
!46 = metadata !{metadata !"a.c", metadata !"/tmp/"}
|
||||
!47 = metadata !{i32 0}
|
||||
!48 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!0 = !{!"0x2e\00printer\00printer\00printer\0012\000\001\000\006\00256\001\0012", !46, !1, !3, null, i32 (i8*, double, i8)* @printer, null, null, !43} ; [ DW_TAG_subprogram ]
|
||||
!1 = !{!"0x29", !46} ; [ DW_TAG_file_type ]
|
||||
!2 = !{!"0x11\001\00(LLVM build 00)\001\00\000\00\001", !46, !47, !47, !42, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!3 = !{!"0x15\00\000\000\000\000\000\000", !46, !1, null, !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = !{!5, !6, !7, !8}
|
||||
!5 = !{!"0x24\00int\000\0032\0032\000\000\005", !46, !1} ; [ DW_TAG_base_type ]
|
||||
!6 = !{!"0xf\00\000\0032\0032\000\000", !46, !1, null} ; [ DW_TAG_pointer_type ]
|
||||
!7 = !{!"0x24\00double\000\0064\0032\000\000\004", !46, !1} ; [ DW_TAG_base_type ]
|
||||
!8 = !{!"0x24\00unsigned char\000\008\008\000\000\008", !46, !1} ; [ DW_TAG_base_type ]
|
||||
!9 = !{!"0x2e\00inlineprinter\00inlineprinter\00inlineprinter\005\000\001\000\006\00256\001\005", !46, !1, !3, null, i32 (i8*, double, i8)* @inlineprinter, null, null, !44} ; [ DW_TAG_subprogram ]
|
||||
!10 = !{!"0x2e\00main\00main\00main\0018\000\001\000\006\00256\001\0018", !46, !1, !11, null, i32 (i32, i8**)* @main, null, null, !45} ; [ DW_TAG_subprogram ]
|
||||
!11 = !{!"0x15\00\000\000\000\000\000\000", !46, !1, null, !12, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!12 = !{!5, !5, !13}
|
||||
!13 = !{!"0xf\00\000\0032\0032\000\000", !46, !1, !14} ; [ DW_TAG_pointer_type ]
|
||||
!14 = !{!"0xf\00\000\0032\0032\000\000", !46, !1, !15} ; [ DW_TAG_pointer_type ]
|
||||
!15 = !{!"0x24\00char\000\008\008\000\000\006", !46, !1} ; [ DW_TAG_base_type ]
|
||||
!16 = !{!"0x101\00ptr\0011\000", !0, !1, !6} ; [ DW_TAG_arg_variable ]
|
||||
!17 = !{!"0x101\00val\0011\000", !0, !1, !7} ; [ DW_TAG_arg_variable ]
|
||||
!18 = !{!"0x101\00c\0011\000", !0, !1, !8} ; [ DW_TAG_arg_variable ]
|
||||
!19 = !{!"0x101\00ptr\004\000", !9, !1, !6} ; [ DW_TAG_arg_variable ]
|
||||
!20 = !{!"0x101\00val\004\000", !9, !1, !7} ; [ DW_TAG_arg_variable ]
|
||||
!21 = !{!"0x101\00c\004\000", !9, !1, !8} ; [ DW_TAG_arg_variable ]
|
||||
!22 = !{!"0x101\00argc\0017\000", !10, !1, !5} ; [ DW_TAG_arg_variable ]
|
||||
!23 = !{!"0x101\00argv\0017\000", !10, !1, !13} ; [ DW_TAG_arg_variable ]
|
||||
!24 = !{!"0x100\00dval\0019\000", !25, !1, !7} ; [ DW_TAG_auto_variable ]
|
||||
!25 = !{!"0xb\0018\000\002", !46, !10} ; [ DW_TAG_lexical_block ]
|
||||
!26 = !{i32 4, i32 0, !9, null}
|
||||
!27 = !{i32 6, i32 0, !28, null}
|
||||
!28 = !{!"0xb\005\000\001", !46, !9} ; [ DW_TAG_lexical_block ]
|
||||
!29 = !{i32 7, i32 0, !28, null}
|
||||
!30 = !{i32 11, i32 0, !0, null}
|
||||
!31 = !{i32 13, i32 0, !32, null}
|
||||
!32 = !{!"0xb\0012\000\000", !46, !0} ; [ DW_TAG_lexical_block ]
|
||||
!33 = !{i32 14, i32 0, !32, null}
|
||||
!34 = !{i32 17, i32 0, !10, null}
|
||||
!35 = !{i32 19, i32 0, !25, null}
|
||||
!36 = !{i32 20, i32 0, !25, null}
|
||||
!37 = !{i32 21, i32 0, !25, null}
|
||||
!38 = !{i32 4, i32 0, !9, !37}
|
||||
!39 = !{i32 6, i32 0, !28, !37}
|
||||
!40 = !{i32 22, i32 0, !25, null}
|
||||
!41 = !{i32 23, i32 0, !25, null}
|
||||
!42 = !{!0, !9, !10}
|
||||
!43 = !{!16, !17, !18}
|
||||
!44 = !{!19, !20, !21}
|
||||
!45 = !{!22, !23, !24}
|
||||
!46 = !{!"a.c", !"/tmp/"}
|
||||
!47 = !{i32 0}
|
||||
!48 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
@ -26,7 +26,7 @@ for.body9: ; preds = %for.body9, %entry
|
||||
br i1 undef, label %for.end54, label %for.body9, !dbg !44
|
||||
|
||||
for.end54: ; preds = %for.body9
|
||||
tail call void @llvm.dbg.value(metadata !{<4 x float> %add19}, i64 0, metadata !27, metadata !{metadata !"0x102"}), !dbg !39
|
||||
tail call void @llvm.dbg.value(metadata <4 x float> %add19, i64 0, metadata !27, metadata !{!"0x102"}), !dbg !39
|
||||
%tmp115 = extractelement <4 x float> %add19, i32 1
|
||||
%conv6.i75 = fpext float %tmp115 to double, !dbg !45
|
||||
%call.i82 = tail call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([13 x i8]* @.str, i32 0, i32 0), double undef, double %conv6.i75, double undef, double undef) nounwind, !dbg !45
|
||||
@ -40,60 +40,60 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon
|
||||
!llvm.dbg.cu = !{!2}
|
||||
!llvm.module.flags = !{!56}
|
||||
|
||||
!0 = metadata !{metadata !"0x2e\00test0001\00test0001\00\003\000\001\000\006\00256\001\003", metadata !54, metadata !1, metadata !3, null, <4 x float> (float)* @test0001, null, null, metadata !51} ; [ DW_TAG_subprogram ] [line 3] [def] [test0001]
|
||||
!1 = metadata !{metadata !"0x29", metadata !54} ; [ DW_TAG_file_type ]
|
||||
!2 = metadata !{metadata !"0x11\0012\00clang version 3.0 (trunk 129915)\001\00\000\00\001", metadata !54, metadata !17, metadata !17, metadata !50, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!3 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !54, metadata !1, null, metadata !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = metadata !{metadata !5}
|
||||
!5 = metadata !{metadata !"0x16\00v4f32\0014\000\000\000\000", metadata !54, metadata !2, metadata !6} ; [ DW_TAG_typedef ]
|
||||
!6 = metadata !{metadata !"0x1\00\000\00128\00128\000\000", metadata !2, null, metadata !7, metadata !8, i32 0, null, null, null} ; [ DW_TAG_array_type ] [line 0, size 128, align 128, offset 0] [from float]
|
||||
!7 = metadata !{metadata !"0x24\00float\000\0032\0032\000\000\004", null, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!8 = metadata !{metadata !9}
|
||||
!9 = metadata !{metadata !"0x21\000\004"} ; [ DW_TAG_subrange_type ]
|
||||
!10 = metadata !{metadata !"0x2e\00main\00main\00\0059\000\001\000\006\00256\001\0059", metadata !54, metadata !1, metadata !11, null, i32 (i32, i8**)* @main, null, null, metadata !52} ; [ DW_TAG_subprogram ] [line 59] [def] [main]
|
||||
!11 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !54, metadata !1, null, metadata !12, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!12 = metadata !{metadata !13}
|
||||
!13 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!14 = metadata !{metadata !"0x2e\00printFV\00printFV\00\0041\001\001\000\006\00256\001\0041", metadata !55, metadata !15, metadata !16, null, null, null, null, metadata !53} ; [ DW_TAG_subprogram ] [line 41] [local] [def] [printFV]
|
||||
!15 = metadata !{metadata !"0x29", metadata !55} ; [ DW_TAG_file_type ]
|
||||
!16 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !55, metadata !15, null, metadata !17, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!17 = metadata !{null}
|
||||
!18 = metadata !{metadata !"0x101\00a\0016777219\000", metadata !0, metadata !1, metadata !7} ; [ DW_TAG_arg_variable ]
|
||||
!19 = metadata !{metadata !"0x101\00argc\0016777275\000", metadata !10, metadata !1, metadata !13} ; [ DW_TAG_arg_variable ]
|
||||
!20 = metadata !{metadata !"0x101\00argv\0033554491\000", metadata !10, metadata !1, metadata !21} ; [ DW_TAG_arg_variable ]
|
||||
!21 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !2, metadata !22} ; [ DW_TAG_pointer_type ]
|
||||
!22 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !2, metadata !23} ; [ DW_TAG_pointer_type ]
|
||||
!23 = metadata !{metadata !"0x24\00char\000\008\008\000\000\006", null, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!24 = metadata !{metadata !"0x100\00i\0060\000", metadata !25, metadata !1, metadata !13} ; [ DW_TAG_auto_variable ]
|
||||
!25 = metadata !{metadata !"0xb\0059\0033\0014", metadata !54, metadata !10} ; [ DW_TAG_lexical_block ]
|
||||
!26 = metadata !{metadata !"0x100\00j\0060\000", metadata !25, metadata !1, metadata !13} ; [ DW_TAG_auto_variable ]
|
||||
!27 = metadata !{metadata !"0x100\00x\0061\000", metadata !25, metadata !1, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!28 = metadata !{metadata !"0x100\00y\0062\000", metadata !25, metadata !1, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!29 = metadata !{metadata !"0x100\00z\0063\000", metadata !25, metadata !1, metadata !5} ; [ DW_TAG_auto_variable ]
|
||||
!30 = metadata !{metadata !"0x101\00F\0016777257\000", metadata !14, metadata !15, metadata !31} ; [ DW_TAG_arg_variable ]
|
||||
!31 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !2, metadata !32} ; [ DW_TAG_pointer_type ]
|
||||
!32 = metadata !{metadata !"0x16\00FV\0025\000\000\000\000", metadata !55, metadata !2, metadata !33} ; [ DW_TAG_typedef ]
|
||||
!33 = metadata !{metadata !"0x17\00\0022\00128\00128\000\000\000", metadata !55, metadata !2, i32 0, metadata !34, null} ; [ DW_TAG_union_type ]
|
||||
!34 = metadata !{metadata !35, metadata !37}
|
||||
!35 = metadata !{metadata !"0xd\00V\0023\00128\00128\000\000", metadata !55, metadata !15, metadata !36} ; [ DW_TAG_member ]
|
||||
!36 = metadata !{metadata !"0x16\00v4sf\003\000\000\000\000", metadata !55, metadata !2, metadata !6} ; [ DW_TAG_typedef ]
|
||||
!37 = metadata !{metadata !"0xd\00A\0024\00128\0032\000\000", metadata !55, metadata !15, metadata !38} ; [ DW_TAG_member ]
|
||||
!38 = metadata !{metadata !"0x1\00\000\00128\0032\000\000", null, metadata !2, metadata !7, metadata !8, i32 0, i32 0} ; [ DW_TAG_array_type ]
|
||||
!39 = metadata !{i32 79, i32 7, metadata !40, null}
|
||||
!40 = metadata !{metadata !"0xb\0075\0035\0018", metadata !54, metadata !41} ; [ DW_TAG_lexical_block ]
|
||||
!41 = metadata !{metadata !"0xb\0075\005\0017", metadata !54, metadata !42} ; [ DW_TAG_lexical_block ]
|
||||
!42 = metadata !{metadata !"0xb\0071\0032\0016", metadata !54, metadata !43} ; [ DW_TAG_lexical_block ]
|
||||
!43 = metadata !{metadata !"0xb\0071\003\0015", metadata !54, metadata !25} ; [ DW_TAG_lexical_block ]
|
||||
!44 = metadata !{i32 75, i32 5, metadata !42, null}
|
||||
!45 = metadata !{i32 42, i32 2, metadata !46, metadata !48}
|
||||
!46 = metadata !{metadata !"0xb\0042\002\0020", metadata !55, metadata !47} ; [ DW_TAG_lexical_block ]
|
||||
!47 = metadata !{metadata !"0xb\0041\0028\0019", metadata !55, metadata !14} ; [ DW_TAG_lexical_block ]
|
||||
!48 = metadata !{i32 95, i32 3, metadata !25, null}
|
||||
!49 = metadata !{i32 99, i32 3, metadata !25, null}
|
||||
!50 = metadata !{metadata !0, metadata !10, metadata !14}
|
||||
!51 = metadata !{metadata !18}
|
||||
!52 = metadata !{metadata !19, metadata !20, metadata !24, metadata !26, metadata !27, metadata !28, metadata !29}
|
||||
!53 = metadata !{metadata !30}
|
||||
!54 = metadata !{metadata !"build2.c", metadata !"/private/tmp"}
|
||||
!55 = metadata !{metadata !"/Volumes/Lalgate/work/llvm/projects/llvm-test/SingleSource/UnitTests/Vector/helpers.h", metadata !"/private/tmp"}
|
||||
!56 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!0 = !{!"0x2e\00test0001\00test0001\00\003\000\001\000\006\00256\001\003", !54, !1, !3, null, <4 x float> (float)* @test0001, null, null, !51} ; [ DW_TAG_subprogram ] [line 3] [def] [test0001]
|
||||
!1 = !{!"0x29", !54} ; [ DW_TAG_file_type ]
|
||||
!2 = !{!"0x11\0012\00clang version 3.0 (trunk 129915)\001\00\000\00\001", !54, !17, !17, !50, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!3 = !{!"0x15\00\000\000\000\000\000\000", !54, !1, null, !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = !{!5}
|
||||
!5 = !{!"0x16\00v4f32\0014\000\000\000\000", !54, !2, !6} ; [ DW_TAG_typedef ]
|
||||
!6 = !{!"0x1\00\000\00128\00128\000\000", !2, null, !7, !8, i32 0, null, null, null} ; [ DW_TAG_array_type ] [line 0, size 128, align 128, offset 0] [from float]
|
||||
!7 = !{!"0x24\00float\000\0032\0032\000\000\004", null, !2} ; [ DW_TAG_base_type ]
|
||||
!8 = !{!9}
|
||||
!9 = !{!"0x21\000\004"} ; [ DW_TAG_subrange_type ]
|
||||
!10 = !{!"0x2e\00main\00main\00\0059\000\001\000\006\00256\001\0059", !54, !1, !11, null, i32 (i32, i8**)* @main, null, null, !52} ; [ DW_TAG_subprogram ] [line 59] [def] [main]
|
||||
!11 = !{!"0x15\00\000\000\000\000\000\000", !54, !1, null, !12, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!12 = !{!13}
|
||||
!13 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !2} ; [ DW_TAG_base_type ]
|
||||
!14 = !{!"0x2e\00printFV\00printFV\00\0041\001\001\000\006\00256\001\0041", !55, !15, !16, null, null, null, null, !53} ; [ DW_TAG_subprogram ] [line 41] [local] [def] [printFV]
|
||||
!15 = !{!"0x29", !55} ; [ DW_TAG_file_type ]
|
||||
!16 = !{!"0x15\00\000\000\000\000\000\000", !55, !15, null, !17, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!17 = !{null}
|
||||
!18 = !{!"0x101\00a\0016777219\000", !0, !1, !7} ; [ DW_TAG_arg_variable ]
|
||||
!19 = !{!"0x101\00argc\0016777275\000", !10, !1, !13} ; [ DW_TAG_arg_variable ]
|
||||
!20 = !{!"0x101\00argv\0033554491\000", !10, !1, !21} ; [ DW_TAG_arg_variable ]
|
||||
!21 = !{!"0xf\00\000\0032\0032\000\000", null, !2, !22} ; [ DW_TAG_pointer_type ]
|
||||
!22 = !{!"0xf\00\000\0032\0032\000\000", null, !2, !23} ; [ DW_TAG_pointer_type ]
|
||||
!23 = !{!"0x24\00char\000\008\008\000\000\006", null, !2} ; [ DW_TAG_base_type ]
|
||||
!24 = !{!"0x100\00i\0060\000", !25, !1, !13} ; [ DW_TAG_auto_variable ]
|
||||
!25 = !{!"0xb\0059\0033\0014", !54, !10} ; [ DW_TAG_lexical_block ]
|
||||
!26 = !{!"0x100\00j\0060\000", !25, !1, !13} ; [ DW_TAG_auto_variable ]
|
||||
!27 = !{!"0x100\00x\0061\000", !25, !1, !5} ; [ DW_TAG_auto_variable ]
|
||||
!28 = !{!"0x100\00y\0062\000", !25, !1, !5} ; [ DW_TAG_auto_variable ]
|
||||
!29 = !{!"0x100\00z\0063\000", !25, !1, !5} ; [ DW_TAG_auto_variable ]
|
||||
!30 = !{!"0x101\00F\0016777257\000", !14, !15, !31} ; [ DW_TAG_arg_variable ]
|
||||
!31 = !{!"0xf\00\000\0032\0032\000\000", null, !2, !32} ; [ DW_TAG_pointer_type ]
|
||||
!32 = !{!"0x16\00FV\0025\000\000\000\000", !55, !2, !33} ; [ DW_TAG_typedef ]
|
||||
!33 = !{!"0x17\00\0022\00128\00128\000\000\000", !55, !2, i32 0, !34, null} ; [ DW_TAG_union_type ]
|
||||
!34 = !{!35, !37}
|
||||
!35 = !{!"0xd\00V\0023\00128\00128\000\000", !55, !15, !36} ; [ DW_TAG_member ]
|
||||
!36 = !{!"0x16\00v4sf\003\000\000\000\000", !55, !2, !6} ; [ DW_TAG_typedef ]
|
||||
!37 = !{!"0xd\00A\0024\00128\0032\000\000", !55, !15, !38} ; [ DW_TAG_member ]
|
||||
!38 = !{!"0x1\00\000\00128\0032\000\000", null, !2, !7, !8, i32 0, i32 0} ; [ DW_TAG_array_type ]
|
||||
!39 = !{i32 79, i32 7, !40, null}
|
||||
!40 = !{!"0xb\0075\0035\0018", !54, !41} ; [ DW_TAG_lexical_block ]
|
||||
!41 = !{!"0xb\0075\005\0017", !54, !42} ; [ DW_TAG_lexical_block ]
|
||||
!42 = !{!"0xb\0071\0032\0016", !54, !43} ; [ DW_TAG_lexical_block ]
|
||||
!43 = !{!"0xb\0071\003\0015", !54, !25} ; [ DW_TAG_lexical_block ]
|
||||
!44 = !{i32 75, i32 5, !42, null}
|
||||
!45 = !{i32 42, i32 2, !46, !48}
|
||||
!46 = !{!"0xb\0042\002\0020", !55, !47} ; [ DW_TAG_lexical_block ]
|
||||
!47 = !{!"0xb\0041\0028\0019", !55, !14} ; [ DW_TAG_lexical_block ]
|
||||
!48 = !{i32 95, i32 3, !25, null}
|
||||
!49 = !{i32 99, i32 3, !25, null}
|
||||
!50 = !{!0, !10, !14}
|
||||
!51 = !{!18}
|
||||
!52 = !{!19, !20, !24, !26, !27, !28, !29}
|
||||
!53 = !{!30}
|
||||
!54 = !{!"build2.c", !"/private/tmp"}
|
||||
!55 = !{!"/Volumes/Lalgate/work/llvm/projects/llvm-test/SingleSource/UnitTests/Vector/helpers.h", !"/private/tmp"}
|
||||
!56 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
@ -15,9 +15,9 @@ target triple = "thumbv7-apple-macosx10.6.7"
|
||||
|
||||
define i32 @inlineprinter(i8* %ptr, float %val, i8 zeroext %c) nounwind optsize ssp {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i8* %ptr}, i64 0, metadata !8, metadata !{metadata !"0x102"}), !dbg !24
|
||||
tail call void @llvm.dbg.value(metadata !{float %val}, i64 0, metadata !10, metadata !{metadata !"0x102"}), !dbg !25
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %c}, i64 0, metadata !12, metadata !{metadata !"0x102"}), !dbg !26
|
||||
tail call void @llvm.dbg.value(metadata i8* %ptr, i64 0, metadata !8, metadata !{!"0x102"}), !dbg !24
|
||||
tail call void @llvm.dbg.value(metadata float %val, i64 0, metadata !10, metadata !{!"0x102"}), !dbg !25
|
||||
tail call void @llvm.dbg.value(metadata i8 %c, i64 0, metadata !12, metadata !{!"0x102"}), !dbg !26
|
||||
%conv = fpext float %val to double, !dbg !27
|
||||
%conv3 = zext i8 %c to i32, !dbg !27
|
||||
%call = tail call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([11 x i8]* @.str, i32 0, i32 0), i8* %ptr, double %conv, i32 %conv3) nounwind optsize, !dbg !27
|
||||
@ -28,9 +28,9 @@ declare i32 @printf(i8* nocapture, ...) nounwind optsize
|
||||
|
||||
define i32 @printer(i8* %ptr, float %val, i8 zeroext %c) nounwind optsize noinline ssp {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i8* %ptr}, i64 0, metadata !14, metadata !{metadata !"0x102"}), !dbg !30
|
||||
tail call void @llvm.dbg.value(metadata !{float %val}, i64 0, metadata !15, metadata !{metadata !"0x102"}), !dbg !31
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %c}, i64 0, metadata !16, metadata !{metadata !"0x102"}), !dbg !32
|
||||
tail call void @llvm.dbg.value(metadata i8* %ptr, i64 0, metadata !14, metadata !{!"0x102"}), !dbg !30
|
||||
tail call void @llvm.dbg.value(metadata float %val, i64 0, metadata !15, metadata !{!"0x102"}), !dbg !31
|
||||
tail call void @llvm.dbg.value(metadata i8 %c, i64 0, metadata !16, metadata !{!"0x102"}), !dbg !32
|
||||
%conv = fpext float %val to double, !dbg !33
|
||||
%conv3 = zext i8 %c to i32, !dbg !33
|
||||
%call = tail call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([11 x i8]* @.str, i32 0, i32 0), i8* %ptr, double %conv, i32 %conv3) nounwind optsize, !dbg !33
|
||||
@ -39,19 +39,19 @@ entry:
|
||||
|
||||
define i32 @main(i32 %argc, i8** nocapture %argv) nounwind optsize ssp {
|
||||
entry:
|
||||
tail call void @llvm.dbg.value(metadata !{i32 %argc}, i64 0, metadata !17, metadata !{metadata !"0x102"}), !dbg !36
|
||||
tail call void @llvm.dbg.value(metadata !{i8** %argv}, i64 0, metadata !18, metadata !{metadata !"0x102"}), !dbg !37
|
||||
tail call void @llvm.dbg.value(metadata i32 %argc, i64 0, metadata !17, metadata !{!"0x102"}), !dbg !36
|
||||
tail call void @llvm.dbg.value(metadata i8** %argv, i64 0, metadata !18, metadata !{!"0x102"}), !dbg !37
|
||||
%conv = sitofp i32 %argc to double, !dbg !38
|
||||
%add = fadd double %conv, 5.555552e+05, !dbg !38
|
||||
%conv1 = fptrunc double %add to float, !dbg !38
|
||||
tail call void @llvm.dbg.value(metadata !{float %conv1}, i64 0, metadata !22, metadata !{metadata !"0x102"}), !dbg !38
|
||||
tail call void @llvm.dbg.value(metadata float %conv1, i64 0, metadata !22, metadata !{!"0x102"}), !dbg !38
|
||||
%call = tail call i32 @puts(i8* getelementptr inbounds ([6 x i8]* @.str1, i32 0, i32 0)) nounwind optsize, !dbg !39
|
||||
%add.ptr = getelementptr i8* bitcast (i32 (i32, i8**)* @main to i8*), i32 %argc, !dbg !40
|
||||
%add5 = add nsw i32 %argc, 97, !dbg !40
|
||||
%conv6 = trunc i32 %add5 to i8, !dbg !40
|
||||
tail call void @llvm.dbg.value(metadata !{i8* %add.ptr}, i64 0, metadata !8, metadata !{metadata !"0x102"}) nounwind, !dbg !41
|
||||
tail call void @llvm.dbg.value(metadata !{float %conv1}, i64 0, metadata !10, metadata !{metadata !"0x102"}) nounwind, !dbg !42
|
||||
tail call void @llvm.dbg.value(metadata !{i8 %conv6}, i64 0, metadata !12, metadata !{metadata !"0x102"}) nounwind, !dbg !43
|
||||
tail call void @llvm.dbg.value(metadata i8* %add.ptr, i64 0, metadata !8, metadata !{!"0x102"}) nounwind, !dbg !41
|
||||
tail call void @llvm.dbg.value(metadata float %conv1, i64 0, metadata !10, metadata !{!"0x102"}) nounwind, !dbg !42
|
||||
tail call void @llvm.dbg.value(metadata i8 %conv6, i64 0, metadata !12, metadata !{!"0x102"}) nounwind, !dbg !43
|
||||
%conv.i = fpext float %conv1 to double, !dbg !44
|
||||
%conv3.i = and i32 %add5, 255, !dbg !44
|
||||
%call.i = tail call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([11 x i8]* @.str, i32 0, i32 0), i8* %add.ptr, double %conv.i, i32 %conv3.i) nounwind optsize, !dbg !44
|
||||
@ -66,57 +66,57 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon
|
||||
!llvm.dbg.cu = !{!2}
|
||||
!llvm.module.flags = !{!53}
|
||||
|
||||
!0 = metadata !{metadata !"0x2e\00inlineprinter\00inlineprinter\00\005\000\001\000\006\00256\001\005", metadata !51, metadata !1, metadata !3, null, i32 (i8*, float, i8)* @inlineprinter, null, null, metadata !48} ; [ DW_TAG_subprogram ] [line 5] [def] [inlineprinter]
|
||||
!1 = metadata !{metadata !"0x29", metadata !51} ; [ DW_TAG_file_type ]
|
||||
!2 = metadata !{metadata !"0x11\0012\00clang version 3.0 (trunk 129915)\001\00\000\00\001", metadata !51, metadata !52, metadata !52, metadata !47, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!3 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !51, metadata !1, null, metadata !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = metadata !{metadata !5}
|
||||
!5 = metadata !{metadata !"0x24\00int\000\0032\0032\000\000\005", null, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!6 = metadata !{metadata !"0x2e\00printer\00printer\00\0012\000\001\000\006\00256\001\0012", metadata !51, metadata !1, metadata !3, null, i32 (i8*, float, i8)* @printer, null, null, metadata !49} ; [ DW_TAG_subprogram ] [line 12] [def] [printer]
|
||||
!7 = metadata !{metadata !"0x2e\00main\00main\00\0018\000\001\000\006\00256\001\0018", metadata !51, metadata !1, metadata !3, null, i32 (i32, i8**)* @main, null, null, metadata !50} ; [ DW_TAG_subprogram ] [line 18] [def] [main]
|
||||
!8 = metadata !{metadata !"0x101\00ptr\0016777220\000", metadata !0, metadata !1, metadata !9} ; [ DW_TAG_arg_variable ]
|
||||
!9 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !2, null} ; [ DW_TAG_pointer_type ]
|
||||
!10 = metadata !{metadata !"0x101\00val\0033554436\000", metadata !0, metadata !1, metadata !11} ; [ DW_TAG_arg_variable ]
|
||||
!11 = metadata !{metadata !"0x24\00float\000\0032\0032\000\000\004", null, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!12 = metadata !{metadata !"0x101\00c\0050331652\000", metadata !0, metadata !1, metadata !13} ; [ DW_TAG_arg_variable ]
|
||||
!13 = metadata !{metadata !"0x24\00unsigned char\000\008\008\000\000\008", null, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!14 = metadata !{metadata !"0x101\00ptr\0016777227\000", metadata !6, metadata !1, metadata !9} ; [ DW_TAG_arg_variable ]
|
||||
!15 = metadata !{metadata !"0x101\00val\0033554443\000", metadata !6, metadata !1, metadata !11} ; [ DW_TAG_arg_variable ]
|
||||
!16 = metadata !{metadata !"0x101\00c\0050331659\000", metadata !6, metadata !1, metadata !13} ; [ DW_TAG_arg_variable ]
|
||||
!17 = metadata !{metadata !"0x101\00argc\0016777233\000", metadata !7, metadata !1, metadata !5} ; [ DW_TAG_arg_variable ]
|
||||
!18 = metadata !{metadata !"0x101\00argv\0033554449\000", metadata !7, metadata !1, metadata !19} ; [ DW_TAG_arg_variable ]
|
||||
!19 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !2, metadata !20} ; [ DW_TAG_pointer_type ]
|
||||
!20 = metadata !{metadata !"0xf\00\000\0032\0032\000\000", null, metadata !2, metadata !21} ; [ DW_TAG_pointer_type ]
|
||||
!21 = metadata !{metadata !"0x24\00char\000\008\008\000\000\006", null, metadata !2} ; [ DW_TAG_base_type ]
|
||||
!22 = metadata !{metadata !"0x100\00dval\0019\000", metadata !23, metadata !1, metadata !11} ; [ DW_TAG_auto_variable ]
|
||||
!23 = metadata !{metadata !"0xb\0018\001\002", metadata !51, metadata !7} ; [ DW_TAG_lexical_block ]
|
||||
!24 = metadata !{i32 4, i32 22, metadata !0, null}
|
||||
!25 = metadata !{i32 4, i32 33, metadata !0, null}
|
||||
!26 = metadata !{i32 4, i32 52, metadata !0, null}
|
||||
!27 = metadata !{i32 6, i32 3, metadata !28, null}
|
||||
!28 = metadata !{metadata !"0xb\005\001\000", metadata !51, metadata !0} ; [ DW_TAG_lexical_block ]
|
||||
!29 = metadata !{i32 7, i32 3, metadata !28, null}
|
||||
!30 = metadata !{i32 11, i32 42, metadata !6, null}
|
||||
!31 = metadata !{i32 11, i32 53, metadata !6, null}
|
||||
!32 = metadata !{i32 11, i32 72, metadata !6, null}
|
||||
!33 = metadata !{i32 13, i32 3, metadata !34, null}
|
||||
!34 = metadata !{metadata !"0xb\0012\001\001", metadata !51, metadata !6} ; [ DW_TAG_lexical_block ]
|
||||
!35 = metadata !{i32 14, i32 3, metadata !34, null}
|
||||
!36 = metadata !{i32 17, i32 15, metadata !7, null}
|
||||
!37 = metadata !{i32 17, i32 28, metadata !7, null}
|
||||
!38 = metadata !{i32 19, i32 31, metadata !23, null}
|
||||
!39 = metadata !{i32 20, i32 3, metadata !23, null}
|
||||
!40 = metadata !{i32 21, i32 3, metadata !23, null}
|
||||
!41 = metadata !{i32 4, i32 22, metadata !0, metadata !40}
|
||||
!42 = metadata !{i32 4, i32 33, metadata !0, metadata !40}
|
||||
!43 = metadata !{i32 4, i32 52, metadata !0, metadata !40}
|
||||
!44 = metadata !{i32 6, i32 3, metadata !28, metadata !40}
|
||||
!45 = metadata !{i32 22, i32 3, metadata !23, null}
|
||||
!46 = metadata !{i32 23, i32 1, metadata !23, null}
|
||||
!47 = metadata !{metadata !0, metadata !6, metadata !7}
|
||||
!48 = metadata !{metadata !8, metadata !10, metadata !12}
|
||||
!49 = metadata !{metadata !14, metadata !15, metadata !16}
|
||||
!50 = metadata !{metadata !17, metadata !18, metadata !22}
|
||||
!51 = metadata !{metadata !"a.c", metadata !"/private/tmp"}
|
||||
!52 = metadata !{i32 0}
|
||||
!53 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!0 = !{!"0x2e\00inlineprinter\00inlineprinter\00\005\000\001\000\006\00256\001\005", !51, !1, !3, null, i32 (i8*, float, i8)* @inlineprinter, null, null, !48} ; [ DW_TAG_subprogram ] [line 5] [def] [inlineprinter]
|
||||
!1 = !{!"0x29", !51} ; [ DW_TAG_file_type ]
|
||||
!2 = !{!"0x11\0012\00clang version 3.0 (trunk 129915)\001\00\000\00\001", !51, !52, !52, !47, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!3 = !{!"0x15\00\000\000\000\000\000\000", !51, !1, null, !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = !{!5}
|
||||
!5 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !2} ; [ DW_TAG_base_type ]
|
||||
!6 = !{!"0x2e\00printer\00printer\00\0012\000\001\000\006\00256\001\0012", !51, !1, !3, null, i32 (i8*, float, i8)* @printer, null, null, !49} ; [ DW_TAG_subprogram ] [line 12] [def] [printer]
|
||||
!7 = !{!"0x2e\00main\00main\00\0018\000\001\000\006\00256\001\0018", !51, !1, !3, null, i32 (i32, i8**)* @main, null, null, !50} ; [ DW_TAG_subprogram ] [line 18] [def] [main]
|
||||
!8 = !{!"0x101\00ptr\0016777220\000", !0, !1, !9} ; [ DW_TAG_arg_variable ]
|
||||
!9 = !{!"0xf\00\000\0032\0032\000\000", null, !2, null} ; [ DW_TAG_pointer_type ]
|
||||
!10 = !{!"0x101\00val\0033554436\000", !0, !1, !11} ; [ DW_TAG_arg_variable ]
|
||||
!11 = !{!"0x24\00float\000\0032\0032\000\000\004", null, !2} ; [ DW_TAG_base_type ]
|
||||
!12 = !{!"0x101\00c\0050331652\000", !0, !1, !13} ; [ DW_TAG_arg_variable ]
|
||||
!13 = !{!"0x24\00unsigned char\000\008\008\000\000\008", null, !2} ; [ DW_TAG_base_type ]
|
||||
!14 = !{!"0x101\00ptr\0016777227\000", !6, !1, !9} ; [ DW_TAG_arg_variable ]
|
||||
!15 = !{!"0x101\00val\0033554443\000", !6, !1, !11} ; [ DW_TAG_arg_variable ]
|
||||
!16 = !{!"0x101\00c\0050331659\000", !6, !1, !13} ; [ DW_TAG_arg_variable ]
|
||||
!17 = !{!"0x101\00argc\0016777233\000", !7, !1, !5} ; [ DW_TAG_arg_variable ]
|
||||
!18 = !{!"0x101\00argv\0033554449\000", !7, !1, !19} ; [ DW_TAG_arg_variable ]
|
||||
!19 = !{!"0xf\00\000\0032\0032\000\000", null, !2, !20} ; [ DW_TAG_pointer_type ]
|
||||
!20 = !{!"0xf\00\000\0032\0032\000\000", null, !2, !21} ; [ DW_TAG_pointer_type ]
|
||||
!21 = !{!"0x24\00char\000\008\008\000\000\006", null, !2} ; [ DW_TAG_base_type ]
|
||||
!22 = !{!"0x100\00dval\0019\000", !23, !1, !11} ; [ DW_TAG_auto_variable ]
|
||||
!23 = !{!"0xb\0018\001\002", !51, !7} ; [ DW_TAG_lexical_block ]
|
||||
!24 = !{i32 4, i32 22, !0, null}
|
||||
!25 = !{i32 4, i32 33, !0, null}
|
||||
!26 = !{i32 4, i32 52, !0, null}
|
||||
!27 = !{i32 6, i32 3, !28, null}
|
||||
!28 = !{!"0xb\005\001\000", !51, !0} ; [ DW_TAG_lexical_block ]
|
||||
!29 = !{i32 7, i32 3, !28, null}
|
||||
!30 = !{i32 11, i32 42, !6, null}
|
||||
!31 = !{i32 11, i32 53, !6, null}
|
||||
!32 = !{i32 11, i32 72, !6, null}
|
||||
!33 = !{i32 13, i32 3, !34, null}
|
||||
!34 = !{!"0xb\0012\001\001", !51, !6} ; [ DW_TAG_lexical_block ]
|
||||
!35 = !{i32 14, i32 3, !34, null}
|
||||
!36 = !{i32 17, i32 15, !7, null}
|
||||
!37 = !{i32 17, i32 28, !7, null}
|
||||
!38 = !{i32 19, i32 31, !23, null}
|
||||
!39 = !{i32 20, i32 3, !23, null}
|
||||
!40 = !{i32 21, i32 3, !23, null}
|
||||
!41 = !{i32 4, i32 22, !0, !40}
|
||||
!42 = !{i32 4, i32 33, !0, !40}
|
||||
!43 = !{i32 4, i32 52, !0, !40}
|
||||
!44 = !{i32 6, i32 3, !28, !40}
|
||||
!45 = !{i32 22, i32 3, !23, null}
|
||||
!46 = !{i32 23, i32 1, !23, null}
|
||||
!47 = !{!0, !6, !7}
|
||||
!48 = !{!8, !10, !12}
|
||||
!49 = !{!14, !15, !16}
|
||||
!50 = !{!17, !18, !22}
|
||||
!51 = !{!"a.c", !"/private/tmp"}
|
||||
!52 = !{i32 0}
|
||||
!53 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
@ -15,7 +15,7 @@ target triple = "thumbv7-apple-macosx10.6.7"
|
||||
define void @_Z3foov() optsize ssp {
|
||||
entry:
|
||||
%call = tail call float @_Z3barv() optsize, !dbg !11
|
||||
tail call void @llvm.dbg.value(metadata !{float %call}, i64 0, metadata !5, metadata !{metadata !"0x102"}), !dbg !11
|
||||
tail call void @llvm.dbg.value(metadata float %call, i64 0, metadata !5, metadata !{!"0x102"}), !dbg !11
|
||||
%call16 = tail call float @_Z2f2v() optsize, !dbg !12
|
||||
%cmp7 = fcmp olt float %call, %call16, !dbg !12
|
||||
br i1 %cmp7, label %for.body, label %for.end, !dbg !12
|
||||
@ -43,24 +43,24 @@ declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnon
|
||||
!llvm.dbg.cu = !{!0}
|
||||
!llvm.module.flags = !{!20}
|
||||
|
||||
!0 = metadata !{metadata !"0x11\004\00clang version 3.0 (trunk 130845)\001\00\000\00\001", metadata !18, metadata !19, metadata !19, metadata !16, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!1 = metadata !{metadata !"0x2e\00foo\00foo\00_Z3foov\005\000\001\000\006\00256\001\005", metadata !18, metadata !2, metadata !3, null, void ()* @_Z3foov, null, null, metadata !17} ; [ DW_TAG_subprogram ] [line 5] [def] [foo]
|
||||
!2 = metadata !{metadata !"0x29", metadata !18} ; [ DW_TAG_file_type ]
|
||||
!3 = metadata !{metadata !"0x15\00\000\000\000\000\000\000", metadata !18, metadata !2, null, metadata !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = metadata !{null}
|
||||
!5 = metadata !{metadata !"0x100\00k\006\000", metadata !6, metadata !2, metadata !7} ; [ DW_TAG_auto_variable ]
|
||||
!6 = metadata !{metadata !"0xb\005\0012\000", metadata !18, metadata !1} ; [ DW_TAG_lexical_block ]
|
||||
!7 = metadata !{metadata !"0x24\00float\000\0032\0032\000\000\004", null, metadata !0} ; [ DW_TAG_base_type ]
|
||||
!8 = metadata !{metadata !"0x100\00y\008\000", metadata !9, metadata !2, metadata !7} ; [ DW_TAG_auto_variable ]
|
||||
!9 = metadata !{metadata !"0xb\007\0025\002", metadata !18, metadata !10} ; [ DW_TAG_lexical_block ]
|
||||
!10 = metadata !{metadata !"0xb\007\003\001", metadata !18, metadata !6} ; [ DW_TAG_lexical_block ]
|
||||
!11 = metadata !{i32 6, i32 18, metadata !6, null}
|
||||
!12 = metadata !{i32 7, i32 3, metadata !6, null}
|
||||
!13 = metadata !{i32 8, i32 20, metadata !9, null}
|
||||
!14 = metadata !{i32 7, i32 20, metadata !10, null}
|
||||
!15 = metadata !{i32 10, i32 1, metadata !6, null}
|
||||
!16 = metadata !{metadata !1}
|
||||
!17 = metadata !{metadata !5, metadata !8}
|
||||
!18 = metadata !{metadata !"k.cc", metadata !"/private/tmp"}
|
||||
!19 = metadata !{i32 0}
|
||||
!20 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
|
||||
!0 = !{!"0x11\004\00clang version 3.0 (trunk 130845)\001\00\000\00\001", !18, !19, !19, !16, null, null} ; [ DW_TAG_compile_unit ]
|
||||
!1 = !{!"0x2e\00foo\00foo\00_Z3foov\005\000\001\000\006\00256\001\005", !18, !2, !3, null, void ()* @_Z3foov, null, null, !17} ; [ DW_TAG_subprogram ] [line 5] [def] [foo]
|
||||
!2 = !{!"0x29", !18} ; [ DW_TAG_file_type ]
|
||||
!3 = !{!"0x15\00\000\000\000\000\000\000", !18, !2, null, !4, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
|
||||
!4 = !{null}
|
||||
!5 = !{!"0x100\00k\006\000", !6, !2, !7} ; [ DW_TAG_auto_variable ]
|
||||
!6 = !{!"0xb\005\0012\000", !18, !1} ; [ DW_TAG_lexical_block ]
|
||||
!7 = !{!"0x24\00float\000\0032\0032\000\000\004", null, !0} ; [ DW_TAG_base_type ]
|
||||
!8 = !{!"0x100\00y\008\000", !9, !2, !7} ; [ DW_TAG_auto_variable ]
|
||||
!9 = !{!"0xb\007\0025\002", !18, !10} ; [ DW_TAG_lexical_block ]
|
||||
!10 = !{!"0xb\007\003\001", !18, !6} ; [ DW_TAG_lexical_block ]
|
||||
!11 = !{i32 6, i32 18, !6, null}
|
||||
!12 = !{i32 7, i32 3, !6, null}
|
||||
!13 = !{i32 8, i32 20, !9, null}
|
||||
!14 = !{i32 7, i32 20, !10, null}
|
||||
!15 = !{i32 10, i32 1, !6, null}
|
||||
!16 = !{!1}
|
||||
!17 = !{!5, !8}
|
||||
!18 = !{!"k.cc", !"/private/tmp"}
|
||||
!19 = !{i32 0}
|
||||
!20 = !{i32 1, !"Debug Info Version", i32 2}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user