History log of /external/llvm/lib/IR/DebugInfo.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
b4cf0ab22b5a3ebb720f0b7287fdccfb465b6b7c 17-Mar-2013 David Blaikie <dblaikie@gmail.com> Split out filename & directory from DIFile to start generalizing over DIScopes

This is the first step to making all DIScopes have a common metadata prefix (so
that things (using directives, for example) that can appear in any scope can be
added to that common prefix). DIFile is itself a DIScope so the common prefix
of all DIScopes cannot be a DIFile - instead it's the raw filename/directory
name pair.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177239 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
e0805a992ddd2823604969c8aac61a2f339f3c01 13-Mar-2013 David Blaikie <dblaikie@gmail.com> Remove the unused 4th operand for DIFile debug info metadata

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176983 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
de3077ae6b5ad8e6f417a8f6aa0ca1ae980f6272 13-Mar-2013 David Blaikie <dblaikie@gmail.com> Refactor filename/directory in DICompileUnit into a DIFile

This is the next step towards making the metadata for DIScopes have a common
prefix rather than having to delegate based on their tag type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176913 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
46561ce249984ddea405ce837b53367a59fd9f3b 12-Mar-2013 David Blaikie <dblaikie@gmail.com> Remove unused "isMain" field from DICompileUnit

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176910 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
14891447fff5b9a5980c1728fbe15140b6350ae3 12-Mar-2013 David Blaikie <dblaikie@gmail.com> Update debug info test cases with empty SplitDebugFilename field.

This could be 'null' or the empty string, DIDescriptor::getStringField
coalesces the two cases anyway so it's just a matter of legible/efficient
representation.

The change in behavior of the DICompileUnit::get* functions could be
subsumed by the full verification check - but ideally that should just be an
assertion if we could front-load the actual debug info metadata failure paths.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176907 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
c0ec8a4f4db3c579dfc8c219dc39014f34260b42 12-Mar-2013 David Blaikie <dblaikie@gmail.com> Remove support for versioned debug info.

Versioned debug info support has been a burden to maintain & also compromised
current debug info verification by causing test cases testing old debug info to
remain rather than being updated to the latest. It also makes it hard to add or
change the metadata schema by requiring various backwards-compatibility in the
DI* hierarchy.

So it's being removed in preparation for new changes to the schema to tidy up
old/unnecessary fields and add new fields needed for new debug info (well, new
to LLVM at least).

The more surprising part of this is the changes to DI*::Verify - this became
necessary due to the changes to AsmWriter. AsmWriter was relying on the version
test to decide which bits of metadata were actually debug info when printing
the comment annotations. Without the version information the tag numbers were
too common & it would print debug info on random metadata that happened to
start with an integer that matched a tag number. Instead this change makes the
Verify functions more precise (just adding "number of operands" checks - not
type checking those operands yet) & relies on that to decide which metadata is
debug info metadata.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176838 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
6643868498043d373384e0befaff3b5a8a8574f7 12-Mar-2013 David Blaikie <dblaikie@gmail.com> Add asserts to DIBuilder & fix DINameSpace::Verify to allow unnamed namespaces.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176837 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
f839eed5ea2bfd395256d60e15d1e31dbad6ca8b 04-Feb-2013 David Blaikie <dblaikie@gmail.com> [DebugInfo] remove more node indirection (this time from the subprogram's variable lists)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174305 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
a9b1317443990533f56a8420c0fbfb8868dad566 04-Feb-2013 David Blaikie <dblaikie@gmail.com> PR15149: crash when printing debug info metadata containing an invalid language spec

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174304 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
a8eefc7cc7c6e8be06d570fff76dc42b43a23392 02-Feb-2013 David Blaikie <dblaikie@gmail.com> Remove the (apparently) unnecessary debug info metadata indirection.

The main lists of debug info metadata attached to the compile_unit had an extra
layer of metadata nodes they went through for no apparent reason. This patch
removes that (& still passes just as much of the GDB 7.5 test suite). If anyone
can show evidence as to why these extra metadata nodes are there I'm open to
reverting this patch & documenting why they're there.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174266 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
fe07db323b2b403236375af0a54b0ed2294cd0e6 20-Jan-2013 David Blaikie <dblaikie@gmail.com> Fix a latent bug exposed by recent static member debug info changes.

We weren't encoding boolean constants correctly due to modeling boolean as a
signed type & then sign extending an i1 up to a byte & getting 255.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172926 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
6b6061f01171bd3d4e32022efa45428d4f9941ee 16-Jan-2013 Eric Christopher <echristo@gmail.com> Define metadata interfaces for describing a static data member
of a class. Emit static data member declarations and definitions
through correctly.

Part of PR14471.

Patch by Paul Robinson!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172590 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
9a1e0e252a7ede548acaac98cf304d4bb135fb97 08-Jan-2013 Eric Christopher <echristo@gmail.com> Remove the llvm-local DW_TAG_vector_type tag and add a test to
make sure that vector types do work.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171833 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
0fecdfb7c44aee85e78e0ba6e9547b702bc64c4a 08-Jan-2013 David Blaikie <dblaikie@gmail.com> Mark artificial types as such in the annotated debug output.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171826 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
72a81be37452983f9960a376c19682034ef7db35 08-Jan-2013 Eric Christopher <echristo@gmail.com> Remove what appears to be a dead llvm-specific debug tag.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171821 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
62fdfb5fa7efdfd61339e4abe6fd87e60e939e58 07-Jan-2013 David Blaikie <dblaikie@gmail.com> PR14759: Debug info support for C++ member pointers.

This works fine with GDB for member variable pointers, but GDB's support for
member function pointers seems to be quite unrelated to
DW_TAG_ptr_to_member_type. (see GDB bug 14998 for details)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171698 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
e302b6cb69e96b948101e1ab6c0476187c92ee84 05-Jan-2013 David Blaikie <dblaikie@gmail.com> Include access modifiers in subprogram metadata IR comment.

Based on code review feedback in r171604 from Chandler Carruth &
Eric Christopher.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171636 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
0b8c9a80f20772c3793201ab5b251d3520b9cea3 02-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Move all of the header files which are involved in modelling the LLVM IR
into their new header subdirectory: include/llvm/IR. This matches the
directory structure of lib, and begins to correct a long standing point
of file layout clutter in LLVM.

There are still more header files to move here, but I wanted to handle
them in separate commits to make tracking what files make sense at each
layer easier.

The only really questionable files here are the target intrinsic
tablegen files. But that's a battle I'd rather not fight today.

I've updated both CMake and Makefile build systems (I think, and my
tests think, but I may have missed something).

I've also re-sorted the includes throughout the project. I'll be
committing updates to Clang, DragonEgg, and Polly momentarily.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp
c2c50cdcdc19a1bca993c06d13d8cdca87083ce4 02-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Rename VMCore directory to IR.

Aside from moving the actual files, this patch only updates the build
system and the source file comments under lib/... that are relevant.

I'll be updating other docs and other files in smaller subsequnet
commits.

While I've tried to test this, but it is entirely possible that there
will still be some build system fallout.

Also, note that I've not changed the library name itself: libLLVMCore.a
is still the library name. I'd be interested in others' opinions about
whether we should rename this as well (I think we should, just not sure
what it might break)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171359 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/DebugInfo.cpp