History log of /src/contrib/llvm-project/llvm/lib/Target/X86/X86CallFrameOptimization.cpp (Results 1 – 21 of 21)
Revision Date Author Comments
# 06c3fb27 02-Sep-2023 Dimitry Andric <dim@FreeBSD.org>

Merge llvm-project main llvmorg-17-init-19304-gd0b54bb50e51

This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and
openmp to llvm-project main llvmorg-17-init-19304-gd0b54bb50e51, t

Merge llvm-project main llvmorg-17-init-19304-gd0b54bb50e51

This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and
openmp to llvm-project main llvmorg-17-init-19304-gd0b54bb50e51, the
last commit before the upstream release/17.x branch was created.

PR: 273753
MFC after: 1 month

show more ...


# fe6060f1 22-Aug-2021 Dimitry Andric <dim@FreeBSD.org>

Merge llvm-project main llvmorg-13-init-16847-g88e66fa60ae5

This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and
openmp to llvmorg-13-init-16847-g88e66fa60ae5, the last commit bef

Merge llvm-project main llvmorg-13-init-16847-g88e66fa60ae5

This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and
openmp to llvmorg-13-init-16847-g88e66fa60ae5, the last commit before
the upstream release/13.x branch was created.

PR: 258209
MFC after: 2 weeks

show more ...


# e8d8bef9 13-Jun-2021 Dimitry Andric <dim@FreeBSD.org>

Merge llvm-project main llvmorg-12-init-17869-g8e464dd76bef

This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and
openmp to llvmorg-12-init-17869-g8e464dd76bef, the last commit bef

Merge llvm-project main llvmorg-12-init-17869-g8e464dd76bef

This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and
openmp to llvmorg-12-init-17869-g8e464dd76bef, the last commit before the
upstream release/12.x branch was created.

PR: 255570
MFC after: 6 weeks

show more ...


# 5ffd83db 31-Jul-2020 Dimitry Andric <dim@FreeBSD.org>

Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
master 2e10b7a39b9, the last commit before the llvmorg-12-init tag, from
which release/11.x was branched.

Note that for now, I

Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
master 2e10b7a39b9, the last commit before the llvmorg-12-init tag, from
which release/11.x was branched.

Note that for now, I rolled back all our local changes to make merging
easier, and I will reapply the still-relevant ones after updating to
11.0.0-rc1.

show more ...


# 480093f4 24-Jan-2020 Dimitry Andric <dim@FreeBSD.org>

Merge ^/vendor/lvm-project/master up to its last change (upstream commit
e26a78e70), and resolve conflicts.


# 8bcb0991 22-Jan-2020 Dimitry Andric <dim@FreeBSD.org>

Merge ^/vendor/llvm/dist up to its last change, and resolve conflicts.


# 0b57cec5 20-Dec-2019 Dimitry Andric <dim@FreeBSD.org>

Move all sources from the llvm project into contrib/llvm-project.

This uses the new layout of the upstream repository, which was recently
migrated to GitHub, and converted into a "monorepo". That i

Move all sources from the llvm project into contrib/llvm-project.

This uses the new layout of the upstream repository, which was recently
migrated to GitHub, and converted into a "monorepo". That is, most of
the earlier separate sub-projects with their own branches and tags were
consolidated into one top-level directory, and are now branched and
tagged together.

Updating the vendor area to match this layout is next.

show more ...


# 54db30ce 21-Aug-2019 Dimitry Andric <dim@FreeBSD.org>

Merge llvm trunk r366426, resolve conflicts, and update FREEBSD-Xlist.


# 4cc79e89 12-Mar-2019 Dimitry Andric <dim@FreeBSD.org>

Revert r308867 (which was originally committed in the clang390-import
project branch):

Work around LLVM PR30879, which is about a bad interaction between
X86 Call Frame Optimization on i386 and

Revert r308867 (which was originally committed in the clang390-import
project branch):

Work around LLVM PR30879, which is about a bad interaction between
X86 Call Frame Optimization on i386 and libunwind, by disallowing the
optimization for i386-freebsd12.

This should fix some instances of broken exception handling when
frame pointers are omitted, in particular some unittests run during
the build of editors/libreoffice.

This hack will be removed as soon as upstream has implemented a more
permanent fix for this problem.

And indeed, after r345018 and r345019, which updated LLVM libunwind to
the most recent version, the above workaround is no longer needed. The
upstream commit which fixed this is:

https://llvm.org/viewvc/llvm-project?view=revision&revision=292723

Specifically, 32 bit (i386-freebsd) executables optimized with omitted
frame pointers and Call Frame Optimization should now behave correctly
when a C++ exception is thrown, and the stack is unwound.

Upstream PR: https://llvm.org/bugs/show_bug.cgi?id=30879
PR: 236062
MFC after: 1 month
X-MFC-With: r344779

show more ...


# d9484dd6 20-Jan-2019 Dimitry Andric <dim@FreeBSD.org>

Merge llvm trunk r351319, resolve conflicts, and update FREEBSD-Xlist.


# 51315c45 30-Jul-2018 Dimitry Andric <dim@FreeBSD.org>

Merge llvm trunk r338150, and resolve conflicts.


# 2cab237b 20-Dec-2017 Dimitry Andric <dim@FreeBSD.org>

Merge llvm trunk r321017 to contrib/llvm.


# 7a7e6055 16-Apr-2017 Dimitry Andric <dim@FreeBSD.org>

Merge llvm trunk r300422 and resolve conflicts.


# d88c1a5a 02-Jan-2017 Dimitry Andric <dim@FreeBSD.org>

Update llvm to trunk r290819 and resolve conflicts.


# f1d9b58c 19-Nov-2016 Dimitry Andric <dim@FreeBSD.org>

Work around LLVM PR30879, which is about a bad interaction between X86
Call Frame Optimization on i386 and libunwind, by disallowing the
optimization for i386-freebsd12.

This should fix some instanc

Work around LLVM PR30879, which is about a bad interaction between X86
Call Frame Optimization on i386 and libunwind, by disallowing the
optimization for i386-freebsd12.

This should fix some instances of broken exception handling when frame
pointers are omitted, in particular some unittests run during the build
of editors/libreoffice.

This hack will be removed as soon as upstream has implemented a more
permanent fix for this problem.

Upstream PR: https://llvm.org/bugs/show_bug.cgi?id=30879
Reviewed by: emaste
PR: 212343

show more ...


# 3ca95b02 16-Aug-2016 Dimitry Andric <dim@FreeBSD.org>

Update llvm to release_39 branch r276489, and resolve conflicts.


# 7d523365 30-Dec-2015 Dimitry Andric <dim@FreeBSD.org>

Update llvm to trunk r256633.


# 3dac3a9b 05-Jul-2015 Dimitry Andric <dim@FreeBSD.org>

Update llvm/clang to r241361.


# 8f0fd8f6 23-Jun-2015 Dimitry Andric <dim@FreeBSD.org>

Update llvm/clang to r240225.


# ff0cc061 27-May-2015 Dimitry Andric <dim@FreeBSD.org>

Merge llvm trunk r238337 from ^/vendor/llvm/dist, resolve conflicts, and
preserve our customizations, where necessary.


# 0f0f2bfa 02-Feb-2015 Dimitry Andric <dim@FreeBSD.org>

Pull in r227752 from upstream llvm trunk (by Michael Kuperstein):

[X86] Convert esp-relative movs of function arguments to pushes, step 2

This moves the transformation introduced in r223757 int

Pull in r227752 from upstream llvm trunk (by Michael Kuperstein):

[X86] Convert esp-relative movs of function arguments to pushes, step 2

This moves the transformation introduced in r223757 into a separate MI pass.
This allows it to cover many more cases (not only cases where there must be a
reserved call frame), and perform rudimentary call folding. It still doesn't
have a heuristic, so it is enabled only for optsize/minsize, with stack
alignment <= 8, where it ought to be a fairly clear win.

(Re-commit of r227728)

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

This helps to get sys/boot/i386/boot2 below the required size again,
when optimizing with -Oz.

show more ...