History log of /llvm-project/llvm/lib/Support/Path.cpp (Results 126 – 150 of 208)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 84ba342b 18-Dec-2014 Juergen Ributzka <juergen@apple.com>

Add missing implementation of 'sys::path::is_other' to the support library.

The header claims that this function exists, but the linker wasn't too happy
about it not being in the library.

llvm-svn:

Add missing implementation of 'sys::path::is_other' to the support library.

The header claims that this function exists, but the linker wasn't too happy
about it not being in the library.

llvm-svn: 224527

show more ...


Revision tags: llvmorg-3.5.1, llvmorg-3.5.1-rc2, llvmorg-3.5.1-rc1
# bbd875b6 18-Nov-2014 Michael J. Spencer <bigcheesegs@gmail.com>

Support ELF files of unknown type.

llvm-svn: 222208


# 50267222 05-Nov-2014 David Majnemer <david.majnemer@gmail.com>

llvm-readobj: Add support for dumping the DOS header in PE files

llvm-svn: 221333


# 2d2b254e 17-Sep-2014 Nick Kledzik <kledzik@apple.com>

Fix identify_magic() with mach-o stub dylibs.

The wrong value was returned and the unittest did not cover the stub dylib case.

llvm-svn: 217933


# 5c69ff5c 11-Sep-2014 Rui Ueyama <ruiu@google.com>

Support: Use llvm::COFF::BigObjMagic

Use llvm::COFF::BigObjMagic insetad of the string literal.
Also checks the version number.

llvm-svn: 217633


# 2acb0584 11-Sep-2014 Rui Ueyama <ruiu@google.com>

Support: improve identify_magic to recognize COFF bigobj

identify_magic recognized a COFF bigobj as an import library file.
This patch fixes that.

llvm-svn: 217627


# 281f23ad 11-Sep-2014 Rafael Espindola <rafael.espindola@gmail.com>

Misc cleanups to the FileSytem api.

The main difference is the removal of

std::error_code exists(const Twine &path, bool &result);

It was an horribly redundant interface since a file not existing

Misc cleanups to the FileSytem api.

The main difference is the removal of

std::error_code exists(const Twine &path, bool &result);

It was an horribly redundant interface since a file not existing is also a valid
error_code. Now we have an access function that returns just an error_code. This
is the only function that has to be implemented for Unix and Windows. The
functions can_write, exists and can_execute an now just wrappers.

One still has to be very careful using these function to avoid introducing
race conditions (Time of check to time of use).

llvm-svn: 217625

show more ...


Revision tags: llvmorg-3.5.0
# 6dc4a8bc 30-Aug-2014 Craig Topper <craig.topper@gmail.com>

Fix some cases where StringRef was being passed by const reference. Remove const from some other StringRefs since its implicitly const already.

llvm-svn: 216820


Revision tags: llvmorg-3.5.0-rc4
# 016a6d51 26-Aug-2014 Rafael Espindola <rafael.espindola@gmail.com>

Merge TempDir and system_temp_directory.

We had two functions for finding the temp or cache directory. Each had a
different set of smarts about OS specific APIs.

With this patch system_temp_directo

Merge TempDir and system_temp_directory.

We had two functions for finding the temp or cache directory. Each had a
different set of smarts about OS specific APIs.

With this patch system_temp_directory becomes the only way to do it.

llvm-svn: 216460

show more ...


# 42836d95 26-Aug-2014 Dylan Noblesmith <nobled@dreamwidth.org>

Revert "Support/Path: remove raw delete"

This reverts commit r216360.

llvm-svn: 216428


# 0b59924d 25-Aug-2014 Dylan Noblesmith <nobled@dreamwidth.org>

Support/Path: remove raw delete

llvm-svn: 216360


Revision tags: llvmorg-3.5.0-rc3
# 674ef1d7 08-Aug-2014 Rafael Espindola <rafael.espindola@gmail.com>

Fix the windows build.

Sorry for the noise.

llvm-svn: 215249


# d649b9d4 08-Aug-2014 Rafael Espindola <rafael.espindola@gmail.com>

Convert from Windows to Unix paths in sys::path::native.

Part of pr20544. Test to follow in a second.

llvm-svn: 215241


Revision tags: llvmorg-3.5.0-rc2
# 487e764b 04-Aug-2014 Justin Bogner <mail@justinbogner.com>

Path: Stop claiming path::const_iterator is bidirectional

path::const_iterator claims that it's a bidirectional iterator, but it
doesn't satisfy all of the contracts for a bidirectional iterator.
Fo

Path: Stop claiming path::const_iterator is bidirectional

path::const_iterator claims that it's a bidirectional iterator, but it
doesn't satisfy all of the contracts for a bidirectional iterator.
For example, n3376 24.2.5 p6 says "If a and b are both dereferenceable,
then a == b if and only if *a and *b are bound to the same object",
but this doesn't work with how we stash and recreate Components.

This means that our use of reverse_iterator on this type is invalid
and leads to many of the valgrind errors we're hitting, as explained
by Tilmann Scheller here:

http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20140728/228654.html

Instead, we admit that path::const_iterator is only an input_iterator,
and implement a second input_iterator for path::reverse_iterator (by
changing const_iterator::operator-- to reverse_iterator::operator++).
All of the uses of this just traverse once over the path in one
direction or the other anyway.

llvm-svn: 214737

show more ...


Revision tags: llvmorg-3.5.0-rc1
# a8acef6c 25-Jun-2014 Rafael Espindola <rafael.espindola@gmail.com>

Don't leak a file descriptor.

llvm-svn: 211699


# c0f691df 25-Jun-2014 Logan Chien <tzuhsiang.chien@gmail.com>

Code cleanup.

llvm-svn: 211697


# cd45f963 19-Jun-2014 Justin Bogner <mail@justinbogner.com>

Support: Add llvm::sys::fs::copy_file

A function to copy one file's contents to another.

llvm-svn: 211302


# 2a826e40 13-Jun-2014 Rafael Espindola <rafael.espindola@gmail.com>

Finishing touch for the std::error_code transition.

While std::error_code itself seems to work OK in all platforms, there
are few annoying differences with regards to the std::errc enumeration.

Thi

Finishing touch for the std::error_code transition.

While std::error_code itself seems to work OK in all platforms, there
are few annoying differences with regards to the std::errc enumeration.

This patch adds a simple llvm enumeration, which will hopefully avoid build
breakages in other platforms and surprises as we get more uses of
std::error_code.

llvm-svn: 210920

show more ...


# db4ed0bd 13-Jun-2014 Rafael Espindola <rafael.espindola@gmail.com>

Remove 'using std::errro_code' from lib.

llvm-svn: 210871


# 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


# 7e577f73 12-Jun-2014 Rafael Espindola <rafael.espindola@gmail.com>

Don't put generic_category in the llvm namespace.

llvm-svn: 210737


# da70bfd8 11-Jun-2014 Rafael Espindola <rafael.espindola@gmail.com>

Implement get_magic with generic tools and inline it.

llvm-svn: 210716


# 70fbe6f8 11-Jun-2014 Rafael Espindola <rafael.espindola@gmail.com>

Remove unused has_magic.

This will allow inlining get_magic, which should in turn fix one of the mingw
build problems after the switch to std::error_code.

llvm-svn: 210712


# 5c4f8294 11-Jun-2014 Rafael Espindola <rafael.espindola@gmail.com>

Use std::error_code instead of llvm::error_code.

The idea of this patch is to turn llvm/Support/system_error.h into a
transitional header that just brings in the erorr_code api to the llvm
namespace

Use std::error_code instead of llvm::error_code.

The idea of this patch is to turn llvm/Support/system_error.h into a
transitional header that just brings in the erorr_code api to the llvm
namespace. I will remove it shortly afterwards.

The cases where the general idea needed some tweaking:

* std::errc is a namespace in msvc, so we cannot use "using std::errc". I could
add an #ifdef, but there were not that many uses, so I just added std:: to
them in this patch.

* Template specialization had to be moved to the std namespace in this
patch set already.

* The msvc implementation of default_error_condition doesn't seem to
provide the same transformations as we need. Not too surprising since
the standard doesn't actually say what "equivalent" means. I fixed the
problem by keeping our old mapping and using it at error_code
construction time.

Despite these shortcomings I think this is still a good thing. Some reasons:

* The different implementations of system_error might improve over time.
* It removes 925 lines of code from llvm already.
* It removes 6313 bytes from the text segment of the clang binary when
it is built with gcc and 2816 bytes when building with clang and
libstdc++.

llvm-svn: 210687

show more ...


# 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


123456789