History log of /llvm-project-15.0.7/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp (Results 101 – 125 of 146)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# b9c1b51e 06-Sep-2016 Kate Stone <[email protected]>

*** This commit represents a complete reformatting of the LLDB source code
*** to conform to clang-format’s LLVM style. This kind of mass change has
*** two obvious implications:

Firstly, merging t

*** This commit represents a complete reformatting of the LLDB source code
*** to conform to clang-format’s LLVM style. This kind of mass change has
*** two obvious implications:

Firstly, merging this particular commit into a downstream fork may be a huge
effort. Alternatively, it may be worth merging all changes up to this commit,
performing the same reformatting operation locally, and then discarding the
merge for this particular commit. The commands used to accomplish this
reformatting were as follows (with current working directory as the root of
the repository):

find . \( -iname "*.c" -or -iname "*.cpp" -or -iname "*.h" -or -iname "*.mm" \) -exec clang-format -i {} +
find . -iname "*.py" -exec autopep8 --in-place --aggressive --aggressive {} + ;

The version of clang-format used was 3.9.0, and autopep8 was 1.2.4.

Secondly, “blame” style tools will generally point to this commit instead of
a meaningful prior commit. There are alternatives available that will attempt
to look through this change and find the appropriate prior commit. YMMV.

llvm-svn: 280751

show more ...


Revision tags: llvmorg-3.9.0, llvmorg-3.9.0-rc3, llvmorg-3.9.0-rc2, llvmorg-3.9.0-rc1, llvmorg-3.8.1, llvmorg-3.8.1-rc1
# bb19a13c 19-May-2016 Saleem Abdulrasool <[email protected]>

second pass over removal of Mutex and Condition

llvm-svn: 270024


# 16ff8604 18-May-2016 Saleem Abdulrasool <[email protected]>

remove use of Mutex in favour of std::{,recursive_}mutex

This is a pretty straightforward first pass over removing a number of uses of
Mutex in favor of std::mutex or std::recursive_mutex. The probl

remove use of Mutex in favour of std::{,recursive_}mutex

This is a pretty straightforward first pass over removing a number of uses of
Mutex in favor of std::mutex or std::recursive_mutex. The problem is that there
are interfaces which take Mutex::Locker & to lock internal locks. This patch
cleans up most of the easy cases. The only non-trivial change is in
CommandObjectTarget.cpp where a Mutex::Locker was split into two.

llvm-svn: 269877

show more ...


# 8e38c666 23-Mar-2016 Stephane Sezer <[email protected]>

Implement ObjectFilePECOFF::GetEntryPointAddress.

Reviewers: zturner, clayborg

Subscribers: lldb-commits

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

llvm-svn: 264173


Revision tags: llvmorg-3.8.0, llvmorg-3.8.0-rc3, llvmorg-3.8.0-rc2
# c35b91ce 26-Jan-2016 Adrian McCarthy <[email protected]>

Set symbol types for function symbols loaded from PE/COFF

This fixes the regression of several tests on Windows after rL258621.

The root problem is that ObjectFilePECOFF was not setting type inform

Set symbol types for function symbols loaded from PE/COFF

This fixes the regression of several tests on Windows after rL258621.

The root problem is that ObjectFilePECOFF was not setting type information for the symbols, and the new CL rejects symbols without type information, breaking functionality like thread step-over.

The fix sets the type information for functions (and creates a TODO for other types).

Along the way, I fixed some typos and formatting that made the code I was debugging harder to understand.

In the long run, we should consider replacing most of ObjectFilePECOFF with the COFF parsing code from LLVM.

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

llvm-svn: 258758

show more ...


# 225d3ea3 21-Jan-2016 Adrian McCarthy <[email protected]>

Add CalculateSymbolSizes in ObjectFilePECOFF::GetSymtab to ensure that (nearly) all the symbols have sizes.

This fixes the `thread step-over` regression exposed by http://reviews.llvm.org/D16186 , w

Add CalculateSymbolSizes in ObjectFilePECOFF::GetSymtab to ensure that (nearly) all the symbols have sizes.

This fixes the `thread step-over` regression exposed by http://reviews.llvm.org/D16186 , which depends on the symbols having actual sizes. Nine tests on Windows had started failing as a result. They all work again with this fix.

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

llvm-svn: 258429

show more ...


Revision tags: llvmorg-3.8.0-rc1, llvmorg-3.7.1, llvmorg-3.7.1-rc2
# f7d1893f 20-Nov-2015 Adrian McCarthy <[email protected]>

Enable saving of mini dumps with lldb process save-core.

Also adds SB API to save a core and tests that use it.

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

llvm-svn: 253734


# f9a2697e 20-Nov-2015 Adrian McCarthy <[email protected]>

Revert "FOO"

Accidentally commited before I was done.

This reverts commit 2ec2da4ee52780582d5e9c88b2e982a688fbdbe1.

llvm-svn: 253685


# af75dab3 20-Nov-2015 Adrian McCarthy <[email protected]>

FOO

llvm-svn: 253684


Revision tags: llvmorg-3.7.1-rc1
# 65d4d5c3 16-Sep-2015 Ryan Brown <[email protected]>

Add an OperatingSystem plugin to support goroutines

The Go runtime schedules user level threads (goroutines) across real threads.
This adds an OS plugin to create memory threads for goroutines.
It s

Add an OperatingSystem plugin to support goroutines

The Go runtime schedules user level threads (goroutines) across real threads.
This adds an OS plugin to create memory threads for goroutines.
It supports the 1.4 and 1.5 go runtime.

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

llvm-svn: 247852

show more ...


Revision tags: llvmorg-3.7.0, llvmorg-3.7.0-rc4, llvmorg-3.7.0-rc3, llvmorg-3.7.0-rc2, llvmorg-3.7.0-rc1
# 358cf1ea 25-Jun-2015 Greg Clayton <[email protected]>

Resubmitting 240466 after fixing the linux test suite failures.

A few extras were fixed

- Symbol::GetAddress() now returns an Address object, not a reference. There were places where people were ac

Resubmitting 240466 after fixing the linux test suite failures.

A few extras were fixed

- Symbol::GetAddress() now returns an Address object, not a reference. There were places where people were accessing the address of a symbol when the symbol's value wasn't an address symbol. On MacOSX, undefined symbols have a value zero and some places where using the symbol's address and getting an absolute address of zero (since an Address object with no section and an m_offset whose value isn't LLDB_INVALID_ADDRESS is considered an absolute address). So fixing this required some changes to make sure people were getting what they expected.
- Since some places want to access the address as a reference, I added a few new functions to symbol:
Address &Symbol::GetAddressRef();
const Address &Symbol::GetAddressRef() const;

Linux test suite passes just fine now.

<rdar://problem/21494354>

llvm-svn: 240702

show more ...


Revision tags: llvmorg-3.6.2, llvmorg-3.6.2-rc1, llvmorg-3.6.1, llvmorg-3.6.1-rc1, llvmorg-3.5.2, llvmorg-3.5.2-rc1, llvmorg-3.6.0
# 736888c8 23-Feb-2015 Greg Clayton <[email protected]>

Avoid crashing by not mmap'ing files on network mounted file systems.

This is implemented by making a new FileSystem function:

bool
FileSystem::IsLocal(const FileSpec &spec)

Then using this in a n

Avoid crashing by not mmap'ing files on network mounted file systems.

This is implemented by making a new FileSystem function:

bool
FileSystem::IsLocal(const FileSpec &spec)

Then using this in a new function:

DataBufferSP
FileSpec::MemoryMapFileContentsIfLocal(off_t file_offset, size_t file_size) const;

This function only mmaps data if the file is a local file since that means we can reliably page in data. We were experiencing crashes where people would use debug info files on network mounted file systems and that mount would go away and cause the next access to a page that wasn't paged in to crash LLDB.

We now avoid this by just copying the data into a heap buffer and keeping a permanent copy to avoid the crash. Updated all previous users of FileSpec::MemoryMapFileContentsIfLocal() in ObjectFile subclasses over to use the new FileSpec::MemoryMapFileContentsIfLocal() function.

<rdar://problem/19470249>

llvm-svn: 230283

show more ...


Revision tags: llvmorg-3.6.0-rc4, llvmorg-3.6.0-rc3, llvmorg-3.6.0-rc2
# 5e6f4520 22-Jan-2015 Zachary Turner <[email protected]>

Don't stomp the triple when loading a PECOFF target.

When you create a target, it tries to look for the platform's list
of supported architectures for a match. The match it finds can
contain specif

Don't stomp the triple when loading a PECOFF target.

When you create a target, it tries to look for the platform's list
of supported architectures for a match. The match it finds can
contain specific triples, like i386-pc-windows-msvc. Later, we
overwrite this value with the most generic triple that can apply
to any platform with COFF support, causing some of the fields of
the triple to get overwritten.

This patch changes the behavior to only merge in values from the COFF
triple if the fields of the matching triple were unknown/unspecified
to begin with.

This fixes load address resolution on Windows, since it enables the
DynamicLoaderWindows to be used instead of DynamicLoaderStatic.

Reviewed by: Greg Clayton
Differential Revision: http://reviews.llvm.org/D7120

llvm-svn: 226849

show more ...


Revision tags: llvmorg-3.6.0-rc1, llvmorg-3.5.1, llvmorg-3.5.1-rc2, llvmorg-3.5.1-rc1, llvmorg-3.5.0, llvmorg-3.5.0-rc4, llvmorg-3.5.0-rc3, llvmorg-3.5.0-rc2
# 2be78ba9 29-Jul-2014 Greg Clayton <[email protected]>

Remove unused variable that was causing a warning.

llvm-svn: 214230


# ad587ae4 28-Jul-2014 Zachary Turner <[email protected]>

Fix supported architectures on PlatformWindows.

i386, i486, i486sx, and i686 are all indistinguishable as far as
PE/COFF files are concerned. This patch adds support for all of
these architectures

Fix supported architectures on PlatformWindows.

i386, i486, i486sx, and i686 are all indistinguishable as far as
PE/COFF files are concerned. This patch adds support for all of
these architectures to PlatformWindows.

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

llvm-svn: 214092

show more ...


Revision tags: llvmorg-3.5.0-rc1
# aaa0ba31 08-Jul-2014 Bruce Mitchener <[email protected]>

Fix typos.

llvm-svn: 212553


# 48672afb 24-Jun-2014 Greg Clayton <[email protected]>

Patch from Keno Fischer to enable JITLoaderGDB with mach-o file support.

The patch is as is with the functionality left disabled for apple vendors because of performance regressions. If this is enab

Patch from Keno Fischer to enable JITLoaderGDB with mach-o file support.

The patch is as is with the functionality left disabled for apple vendors because of performance regressions. If this is enabled it ends up searching for symbols in all shared libraries that are loadeded.

llvm-svn: 211638

show more ...


Revision tags: llvmorg-3.4.2, llvmorg-3.4.2-rc1, llvmorg-3.4.1, llvmorg-3.4.1-rc2, llvmorg-3.4.1-rc1
# 324a1036 04-Apr-2014 Saleem Abdulrasool <[email protected]>

sweep up -Wformat warnings from gcc

This is a purely mechanical change explicitly casting any parameters for printf
style conversion. This cleans up the warnings emitted by gcc 4.8 on Linux.

llvm-

sweep up -Wformat warnings from gcc

This is a purely mechanical change explicitly casting any parameters for printf
style conversion. This cleans up the warnings emitted by gcc 4.8 on Linux.

llvm-svn: 205607

show more ...


# 62e5f4de 22-Mar-2014 Arnaud A. de Grandmaison <[email protected]>

Cleanup some dead assignements reported by scan-build

No functionnal change.

llvm-svn: 204545


# 1108cb36 11-Mar-2014 Saleem Abdulrasool <[email protected]>

update for renaming in LLVM

llvm-svn: 203533


# 89eb1bae 09-Mar-2014 Virgile Bello <[email protected]>

Implement ObjectFilePECOFF::GetModuleSpecifications().

llvm-svn: 203383


# 2756adf3 08-Mar-2014 Virgile Bello <[email protected]>

Implement ObjectFilePECOFF::SetLoadAddress().

llvm-svn: 203350


# ffeba256 08-Mar-2014 Virgile Bello <[email protected]>

Remove %zx in printf (only GCC supports it, not MSVC).

llvm-svn: 203349


Revision tags: llvmorg-3.4.0, llvmorg-3.4.0-rc3, llvmorg-3.4.0-rc2
# 6c970420 22-Nov-2013 Colin Riley <[email protected]>

Fix for PECOFF GetArchitecture

0 as CPU subtype never matches anything (at least, it doesn't match x86_64 windows binaries, of which there are correct arch definitions for). It should be created wit

Fix for PECOFF GetArchitecture

0 as CPU subtype never matches anything (at least, it doesn't match x86_64 windows binaries, of which there are correct arch definitions for). It should be created with LLDB_INVALID_CPUTYPE.

llvm-svn: 195435

show more ...


Revision tags: llvmorg-3.4.0-rc1
# 237ad974 27-Aug-2013 Charles Davis <[email protected]>

Plugins/ObjectFile/PECOFF: Use enums from LLVM, and don't use Mach-O definitions.

Since I renamed most of the LLVM Mach-O enums in r189314, I had to go fix
LLDB to use the new names. While I was her

Plugins/ObjectFile/PECOFF: Use enums from LLVM, and don't use Mach-O definitions.

Since I renamed most of the LLVM Mach-O enums in r189314, I had to go fix
LLDB to use the new names. While I was here, I decided that a COFF
plugin really shouldn't be using Mach-O enums.

llvm-svn: 189316

show more ...


123456