History log of /llvm-project/llvm/lib/CodeGen/WinEHPrepare.cpp (Results 226 – 250 of 254)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 6b67d427 11-Mar-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Extended support for native Windows C++ EH outlining

Differential Review: http://reviews.llvm.org/D7886

llvm-svn: 231981


# a28d91d8 10-Mar-2015 Mehdi Amini <mehdi.amini@apple.com>

DataLayout is mandatory, update the API to reflect it with references.

Summary:
Now that the DataLayout is a mandatory part of the module, let's start
cleaning the codebase. This patch is a first at

DataLayout is mandatory, update the API to reflect it with references.

Summary:
Now that the DataLayout is a mandatory part of the module, let's start
cleaning the codebase. This patch is a first attempt at doing that.

This patch is not exactly NFC as for instance some places were passing
a nullptr instead of the DataLayout, possibly just because there was a
default value on the DataLayout argument to many functions in the API.
Even though it is not purely NFC, there is no change in the
validation.

I turned as many pointer to DataLayout to references, this helped
figuring out all the places where a nullptr could come up.

I had initially a local version of this patch broken into over 30
independant, commits but some later commit were cleaning the API and
touching part of the code modified in the previous commits, so it
seemed cleaner without the intermediate state.

Test Plan:

Reviewers: echristo

Subscribers: llvm-commits

From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 231740

show more ...


# be0a0506 09-Mar-2015 Reid Kleckner <reid@kleckner.net>

Reland r229944: EH: Prune unreachable resume instructions during Dwarf EH preparation

Fix the double-deletion of AnalysisResolver when delegating through to
Dwarf EH preparation by creating one from

Reland r229944: EH: Prune unreachable resume instructions during Dwarf EH preparation

Fix the double-deletion of AnalysisResolver when delegating through to
Dwarf EH preparation by creating one from scratch. Hopefully the new
pass manager simplifies this.

This reverts commit r229952.

llvm-svn: 231719

show more ...


# 05ee8bd4 05-Mar-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Fix uninitialized memory references in WinEHPrepare

llvm-svn: 231405


# cfb9ce53 05-Mar-2015 Reid Kleckner <reid@kleckner.net>

Replace llvm.frameallocate with llvm.frameescape

Turns out it's pretty straightforward and simplifies the implementation.

Reviewers: andrew.w.kaylor

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

Replace llvm.frameallocate with llvm.frameescape

Turns out it's pretty straightforward and simplifies the implementation.

Reviewers: andrew.w.kaylor

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

llvm-svn: 231386

show more ...


# 46a43556 04-Mar-2015 Mehdi Amini <mehdi.amini@apple.com>

Make DataLayout Non-Optional in the Module

Summary:
DataLayout keeps the string used for its creation.

As a side effect it is no longer needed in the Module.
This is "almost" NFC, the string is no

Make DataLayout Non-Optional in the Module

Summary:
DataLayout keeps the string used for its creation.

As a side effect it is no longer needed in the Module.
This is "almost" NFC, the string is no longer
canonicalized, you can't rely on two "equals" DataLayout
having the same string returned by getStringRepresentation().

Get rid of DataLayoutPass: the DataLayout is in the Module

The DataLayout is "per-module", let's enforce this by not
duplicating it more than necessary.
One more step toward non-optionality of the DataLayout in the
module.

Make DataLayout Non-Optional in the Module

Module->getDataLayout() will never returns nullptr anymore.

Reviewers: echristo

Subscribers: resistor, llvm-commits, jholewinski

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

From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 231270

show more ...


# 42366531 03-Mar-2015 Reid Kleckner <reid@kleckner.net>

WinEH: Remove vestigial EH object

Ultimately, we'll need to leave something behind to indicate which
alloca will hold the exception, but we can figure that out when it comes
time to emit the __CxxFr

WinEH: Remove vestigial EH object

Ultimately, we'll need to leave something behind to indicate which
alloca will hold the exception, but we can figure that out when it comes
time to emit the __CxxFrameHandler3 catch handler table.

llvm-svn: 231164

show more ...


# e07b2a06 03-Mar-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Fixing problem with field initialization order

llvm-svn: 231122


# f0f5e46e 03-Mar-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Outline cleanup handlers for native Windows C++ exception handling

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

llvm-svn: 231117


# 72029c6f 03-Mar-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Remap arguments and non-alloca values used by outlined C++ exception handlers.

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

llvm-svn: 231042


# b59b80b9 25-Feb-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Fixing a problem with insert location in WinEH outlining

llvm-svn: 230535


Revision tags: llvmorg-3.6.0
# 1476e6d1 24-Feb-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Fixing eol-style

llvm-svn: 230378


# 982ea13c 23-Feb-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Removing unused private field.

llvm-svn: 230259


# 322236ee 23-Feb-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Second attempt to fix WinEHCatchDirector build failures.

llvm-svn: 230257


# 2e30b459 23-Feb-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Attempting to fix WinEHCatchDirector destructor related build failures.

llvm-svn: 230252


# f22fe4ae 23-Feb-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Remap frame variables for native Windows exception handling.

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

llvm-svn: 230249


# 301ed0c3 20-Feb-2015 Chandler Carruth <chandlerc@gmail.com>

Revert r229944: EH: Prune unreachable resume instructions during Dwarf EH preparation

This doesn't pass 'ninja check-llvm' for me. Lots of tests, including
the ones updated, fail with crashes and ot

Revert r229944: EH: Prune unreachable resume instructions during Dwarf EH preparation

This doesn't pass 'ninja check-llvm' for me. Lots of tests, including
the ones updated, fail with crashes and other explosions.

llvm-svn: 229952

show more ...


# 0b647e6c 20-Feb-2015 Reid Kleckner <reid@kleckner.net>

EH: Prune unreachable resume instructions during Dwarf EH preparation

Today a simple function that only catches exceptions and doesn't run
destructor cleanups ends up containing a dead call to _Unwi

EH: Prune unreachable resume instructions during Dwarf EH preparation

Today a simple function that only catches exceptions and doesn't run
destructor cleanups ends up containing a dead call to _Unwind_Resume
(PR20300). We can't remove these dead resume instructions during normal
optimization because inlining might introduce additional landingpads
that do have cleanups to run. Instead we can do this during EH
preparation, which is guaranteed to run after inlining.

Fixes PR20300.

Reviewers: majnemer

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

llvm-svn: 229944

show more ...


# 179543bb 18-Feb-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Style and formatting fixes for r229715

llvm-svn: 229758


Revision tags: llvmorg-3.6.0-rc4
# 4dd0304e 18-Feb-2015 Reid Kleckner <reid@kleckner.net>

dos2unix the WinEH file and tests

llvm-svn: 229735


# 30f2f3fc 18-Feb-2015 David Blaikie <dblaikie@gmail.com>

Remove unused member variables (-Wunused-private-field)

llvm-svn: 229722


# 527c5dc6 18-Feb-2015 Andrew Kaylor <andrew.kaylor@intel.com>

Adding implementation to outline C++ catch handlers for native Windows 64 exception handling.

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

llvm-svn: 229715


Revision tags: llvmorg-3.6.0-rc3
# 96d01131 11-Feb-2015 Reid Kleckner <reid@kleckner.net>

Don't promote asynch EH invokes of nounwind functions to calls

If the landingpad of the invoke is using a personality function that
catches asynch exceptions, then it can catch a trap.

Also add som

Don't promote asynch EH invokes of nounwind functions to calls

If the landingpad of the invoke is using a personality function that
catches asynch exceptions, then it can catch a trap.

Also add some landingpads to invalid LLVM IR test cases that lack them.

Over-the-shoulder reviewed by David Majnemer.

llvm-svn: 228782

show more ...


Revision tags: llvmorg-3.6.0-rc2
# 964f4dba 30-Jan-2015 Alexey Samsonov <vonosmas@gmail.com>

Fix memory leak in WinEHPrepare introduced in r227405.

This leak was detected by ASan bootstrap of LLVM.

llvm-svn: 227625


# 2a223508 29-Jan-2015 Reid Kleckner <reid@kleckner.net>

Update comments to use unreachable instead of llvm.trap, as implemented now

llvm-svn: 227502


1234567891011