History log of /llvm-project/llvm/lib/IR/Module.cpp (Results 151 – 175 of 180)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 3acea398 12-Jun-2014 Rafael Espindola <rafael.espindola@gmail.com>

Don't use 'using std::error_code' in include/llvm.

This should make sure that most new uses use the std prefix.

llvm-svn: 210835


# 03bddfee 31-May-2014 Rafael Espindola <rafael.espindola@gmail.com>

Use error_code() instead of error_code::succes()

There is no std::error_code::success, so this removes much of the noise
in transitioning to std::error_code.

llvm-svn: 209952


Revision tags: llvmorg-3.4.2, llvmorg-3.4.2-rc1, llvmorg-3.4.1, llvmorg-3.4.1-rc2
# 0915c047 17-Apr-2014 Diego Novillo <dnovillo@google.com>

Fix bug 19437 - Only add discriminators for DWARF 4 and above.

Summary:
This prevents the discriminator generation pass from triggering if
the DWARF version being used in the module is prior to 4.

Fix bug 19437 - Only add discriminators for DWARF 4 and above.

Summary:
This prevents the discriminator generation pass from triggering if
the DWARF version being used in the module is prior to 4.

Reviewers: echristo, dblaikie

CC: llvm-commits

Differential Revision: http://reviews.llvm.org/D3413

llvm-svn: 206507

show more ...


Revision tags: llvmorg-3.4.1-rc1
# c620761c 09-Apr-2014 Craig Topper <craig.topper@gmail.com>

[C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr.

llvm-svn: 205831


# 56cc9904 10-Mar-2014 Duncan P. N. Exon Smith <dexonsmith@apple.com>

Module: Don't rename in getOrInsertFunction()

During LTO, user-supplied definitions of C library functions often
exist. -instcombine uses Module::getOrInsertFunction() to get a handle
on library fu

Module: Don't rename in getOrInsertFunction()

During LTO, user-supplied definitions of C library functions often
exist. -instcombine uses Module::getOrInsertFunction() to get a handle
on library functions (e.g., @puts, when optimizing @printf).

Previously, Module::getOrInsertFunction() would rename any matching
functions with local linkage, and create a new declaration. In LTO,
this is the opposite of desired behaviour, as it skips by the
user-supplied version of the library function and creates a new
undefined reference which the linker often cannot resolve.

After some discussing with Rafael on the list, it looks like it's
undesired behaviour. If a consumer actually *needs* this behaviour, we
should add new API with a more explicit name.

I added two testcases: one specifically for the -instcombine behaviour
and one for the LTO flow.

<rdar://problem/16165191>

llvm-svn: 203513

show more ...


# 3ad5c962 10-Mar-2014 Benjamin Kramer <benny.kra@googlemail.com>

[C++11] Modernize the IR library a bit.

No functionality change.

llvm-svn: 203465


# 56440fd8 06-Mar-2014 Ahmed Charles <ahmedcharles@gmail.com>

Replace OwningPtr<T> with std::unique_ptr<T>.

This compiles with no changes to clang/lld/lldb with MSVC and includes
overloads to various functions which are used by those projects and llvm
which ha

Replace OwningPtr<T> with std::unique_ptr<T>.

This compiles with no changes to clang/lld/lldb with MSVC and includes
overloads to various functions which are used by those projects and llvm
which have OwningPtr's as parameters. This should allow out of tree
projects some time to move. There are also no changes to libs/Target,
which should help out of tree targets have time to move, if necessary.

llvm-svn: 203083

show more ...


# d1163aa5 06-Mar-2014 Chandler Carruth <chandlerc@gmail.com>

[Layering] Move GVMaterializer.h into the IR library where its
implementation already lived.

After this commit, the only IR-library headers in include/llvm/* are
ones related to the legacy pass infr

[Layering] Move GVMaterializer.h into the IR library where its
implementation already lived.

After this commit, the only IR-library headers in include/llvm/* are
ones related to the legacy pass infrastructure that I'm planning to
leave there until the new one is farther along.

The only other headers at the top level are linking and initialization
aids that aren't really libraries but just headers.

llvm-svn: 203069

show more ...


# 4b6845c7 04-Mar-2014 Chandler Carruth <chandlerc@gmail.com>

[Modules] Move the LeakDetector header into the IR library where the
source file had already been moved. Also move the unittest into the IR
unittest library.

This may seem an odd thing to put in the

[Modules] Move the LeakDetector header into the IR library where the
source file had already been moved. Also move the unittest into the IR
unittest library.

This may seem an odd thing to put in the IR library but we only really
use this with instructions and it needs the LLVM context to work, so it
is intrinsically tied to the IR library.

llvm-svn: 202842

show more ...


# 248ac139 25-Feb-2014 Rafael Espindola <rafael.espindola@gmail.com>

Fix resetting the DataLayout in a Module.

No tool does this currently, but as everything else in a module we should be
able to change its DataLayout.

Most of the fix is in DataLayout to make sure i

Fix resetting the DataLayout in a Module.

No tool does this currently, but as everything else in a module we should be
able to change its DataLayout.

Most of the fix is in DataLayout to make sure it can be reset properly.

The test uses Module::setDataLayout since the fact that we mutate a DataLayout
is an implementation detail. The module could hold a OwningPtr<DataLayout> and
the DataLayout itself could be immutable.

Thanks to Philip Reames for pushing me in the right direction.

llvm-svn: 202198

show more ...


# f863ee29 25-Feb-2014 Rafael Espindola <rafael.espindola@gmail.com>

Store a DataLayout in Module.

Now that DataLayout is not a pass, store one in Module.

Since the C API expects to be able to get a char* to the datalayout description,
we have to keep a std::string

Store a DataLayout in Module.

Now that DataLayout is not a pass, store one in Module.

Since the C API expects to be able to get a char* to the datalayout description,
we have to keep a std::string somewhere. This patch keeps it in Module and also
uses it to represent modules without a DataLayout.

Once DataLayout is mandatory, we should probably move the string to DataLayout
itself since it won't be necessary anymore to represent the special case of a
module without a DataLayout.

llvm-svn: 202190

show more ...


# e9fab9b0 14-Jan-2014 Rafael Espindola <rafael.espindola@gmail.com>

Return an error_code from materializeAllPermanently.

llvm-svn: 199275


# 1d06f720 14-Jan-2014 Rafael Espindola <rafael.espindola@gmail.com>

Use error_code in Module::materializeAll.

llvm-svn: 199269


# 032b39e4 09-Jan-2014 Nadav Rotem <nrotem@apple.com>

Re-remove dead code.
This reverts r198854.

llvm-svn: 198879


# d677b310 09-Jan-2014 Nadav Rotem <nrotem@apple.com>

Revert r198819 - "Remove dead code."

llvm-svn: 198854


# 5e10aaeb 09-Jan-2014 Rafael Espindola <rafael.espindola@gmail.com>

Remove dead code.

llvm-svn: 198819


Revision tags: llvmorg-3.4.0
# 8da5f7a9 20-Dec-2013 Dmitri Gribenko <gribozavr@gmail.com>

When parsing data layout string looking for endianness, use the correct default

llvm-svn: 197771


# 5362ad57 20-Dec-2013 Dmitri Gribenko <gribozavr@gmail.com>

Correctly apply the default pointer size

llvm-svn: 197770


Revision tags: llvmorg-3.4.0-rc3, llvmorg-3.4.0-rc2
# 8b4306ce 02-Dec-2013 Manman Ren <manman.ren@gmail.com>

Debug Info: drop debug info via upgrading path if version number does not match.

Add a helper function getDebugInfoVersionFromModule to return the debug info
version number for a module.

"Verifier/

Debug Info: drop debug info via upgrading path if version number does not match.

Add a helper function getDebugInfoVersionFromModule to return the debug info
version number for a module.

"Verifier/module-flags-1.ll" checks for verification errors.
It will seg fault when calling getDebugInfoVersionFromModule because of the
incorrect format for module flags in the testing case. We make
getModuleFlagsMetadata more robust by checking for error conditions.

PR17982

llvm-svn: 196158

show more ...


Revision tags: llvmorg-3.4.0-rc1
# 2b11ad4f 05-Nov-2013 Rafael Espindola <rafael.espindola@gmail.com>

Use error_code in GVMaterializer.

They just propagate out the bitcode reader error, so we don't need a new enum.

llvm-svn: 194091


# a90a340f 30-Sep-2013 Matt Arsenault <Matthew.Arsenault@amd.com>

Reuse variable

llvm-svn: 191712


# 27e783e9 30-Sep-2013 Matt Arsenault <Matthew.Arsenault@amd.com>

Fix getOrInsertGlobal dropping the address space.

Currently it will insert an illegal bitcast.
Arguably, the address space argument should be
added for the creation case.

llvm-svn: 191702


# 5200fdf0 28-Sep-2013 Matt Arsenault <Matthew.Arsenault@amd.com>

Fix typo

llvm-svn: 191595


# ec2375fb 25-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com>

Make these methods const correct.

Thanks to Nick Lewycky for noticing it.

llvm-svn: 187098


# 8bfde891 16-Jul-2013 Manman Ren <mren@apple.com>

Add getModuleFlag(StringRef Key) to query a module flag given Key.

No functionality change.

llvm-svn: 186470


12345678