History log of /llvm-project-15.0.7/llvm/lib/CodeGen/StackMaps.cpp (Results 76 – 96 of 96)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# fb4d6482 30-Jan-2014 Juergen Ributzka <[email protected]>

[Stackmaps] Record the stack size of each function that contains a stackmap/patchpoint intrinsic.

Re-applying the patch, but this time without using AsmPrinter methods.

Reviewed by Andy

llvm-svn:

[Stackmaps] Record the stack size of each function that contains a stackmap/patchpoint intrinsic.

Re-applying the patch, but this time without using AsmPrinter methods.

Reviewed by Andy

llvm-svn: 200481

show more ...


# f6f0ce90 30-Jan-2014 Juergen Ributzka <[email protected]>

Revert "[Stackmaps] Record the stack size of each function that contains a stackmap/patchpoint intrinsic."

This reverts commit r200444 to unbreak buildbots.

llvm-svn: 200445


# aece7583 30-Jan-2014 Juergen Ributzka <[email protected]>

[Stackmaps] Record the stack size of each function that contains a stackmap/patchpoint intrinsic.

Reviewed by Andy

llvm-svn: 200444


# cb402911 24-Jan-2014 Alp Toker <[email protected]>

Fix known typos

Sweep the codebase for common typos. Includes some changes to visible function
names that were misspelt.

llvm-svn: 200018


# 32e1be7b 09-Jan-2014 Andrew Trick <[email protected]>

llvm.experimental.stackmap: fix encoding of large constants.

In the stackmap format we advertise the constant field as signed.
However, we were determining whether to promote to a 64-bit constant
po

llvm.experimental.stackmap: fix encoding of large constants.

In the stackmap format we advertise the constant field as signed.
However, we were determining whether to promote to a 64-bit constant
pool based on an unsigned comparison.

This fix allows -1 to be encoded as a small constant.

llvm-svn: 198816

show more ...


# 8a8cd2ba 07-Jan-2014 Chandler Carruth <[email protected]>

Re-sort all of the includes with ./utils/sort_includes.py so that
subsequent changes are easier to review. About to fix some layering
issues, and wanted to separate out the necessary churn.

Also com

Re-sort all of the includes with ./utils/sort_includes.py so that
subsequent changes are easier to review. About to fix some layering
issues, and wanted to separate out the necessary churn.

Also comment and sink the include of "Windows.h" in three .inc files to
match the usage in Memory.inc.

llvm-svn: 198685

show more ...


Revision tags: llvmorg-3.4.0, llvmorg-3.4.0-rc3
# c26b68a9 14-Dec-2013 Juergen Ributzka <[email protected]>

[Stackmap] Refactor operand parsing.

llvm-svn: 197329


# e8294753 14-Dec-2013 Juergen Ributzka <[email protected]>

[Stackmap] Liveness Analysis Pass

This optional register liveness analysis pass can be enabled with either
-enable-stackmap-liveness, -enable-patchpoint-liveness, or both. The pass
traverses each ba

[Stackmap] Liveness Analysis Pass

This optional register liveness analysis pass can be enabled with either
-enable-stackmap-liveness, -enable-patchpoint-liveness, or both. The pass
traverses each basic block in a machine function. For each basic block the
instructions are processed in reversed order and if a patchpoint or stackmap
instruction is encountered the current live-out register set is encoded as a
register mask and attached to the instruction.

Later on during stackmap generation the live-out register mask is processed and
also emitted as part of the stackmap.

This information is optional and intended for optimization purposes only. This
will enable a client of the stackmap to reason about the registers it can use
and which registers need to be preserved.

Reviewed by Andy

llvm-svn: 197317

show more ...


# 7bcb0100 13-Dec-2013 Andrew Trick <[email protected]>

Revert "Liveness Analysis Pass"

This reverts commit r197254.

This was an accidental merge of Juergen's patch. It will be checked in
shortly, but wasn't meant to go in quite yet.

Conflicts:
includ

Revert "Liveness Analysis Pass"

This reverts commit r197254.

This was an accidental merge of Juergen's patch. It will be checked in
shortly, but wasn't meant to go in quite yet.

Conflicts:
include/llvm/CodeGen/StackMaps.h
lib/CodeGen/StackMaps.cpp
test/CodeGen/X86/stackmap-liveness.ll

llvm-svn: 197260

show more ...


# e8cba373 13-Dec-2013 Andrew Trick <[email protected]>

Grow the stackmap/patchpoint format to hold 64-bit IDs.

llvm-svn: 197255


# 8d6a6584 13-Dec-2013 Andrew Trick <[email protected]>

Liveness Analysis Pass

llvm-svn: 197254


Revision tags: llvmorg-3.4.0-rc2
# 39609996 29-Nov-2013 Lang Hames <[email protected]>

Refactor a lot of patchpoint/stackmap related code to simplify and make it
target independent.

Most of the x86 specific stackmap/patchpoint handling was necessitated by the
use of the native address

Refactor a lot of patchpoint/stackmap related code to simplify and make it
target independent.

Most of the x86 specific stackmap/patchpoint handling was necessitated by the
use of the native address-mode format for frame index operands. PEI has now
been modified to treat stackmap/patchpoint similarly to DEBUG_INFO, allowing
us to use a simple, platform independent register/offset pair for frame
indexes on stackmap/patchpoints.

Notes:
- Folding is now platform independent and automatically supported.
- Emiting patchpoints with direct memory references now just involves calling
the TargetLoweringBase::emitPatchPoint utility method from the target's
XXXTargetLowering::EmitInstrWithCustomInserter method. (See
X86TargetLowering for an example).
- No more ugly platform-specific operand parsers.

This patch shouldn't change the generated output for X86.

llvm-svn: 195944

show more ...


# fde8e4b7 27-Nov-2013 Lang Hames <[email protected]>

Show stackmap entry encodings in stackmap debug logs. This makes it easier to
cross-reference debug output with encoded stack-maps, and to create stackmap
test-cases.

llvm-svn: 195874


Revision tags: llvmorg-3.4.0-rc1
# e6bf45cd 19-Nov-2013 Andrew Trick <[email protected]>

Obvious pasto survived a couple rounds of cleanup.

Caught by Aaron Ballman.

llvm-svn: 195138


# d4e3dc6d 19-Nov-2013 Andrew Trick <[email protected]>

Add an abstraction to handle patchpoint operands.

Hard-coded operand indices were scattered throughout lowering stages
and layers. It was super bug prone.

llvm-svn: 195093


# 10d5be4e 17-Nov-2013 Andrew Trick <[email protected]>

Added a size field to the stack map record to handle subregister spills.

Implementing this on bigendian platforms could get strange. I added a
target hook, getStackSlotRange, per Jakob's recommendat

Added a size field to the stack map record to handle subregister spills.

Implementing this on bigendian platforms could get strange. I added a
target hook, getStackSlotRange, per Jakob's recommendation to make
this as explicit as possible.

llvm-svn: 194942

show more ...


# 9969d3e6 08-Nov-2013 Juergen Ributzka <[email protected]>

[Stackmap] Add AnyReg calling convention support for patchpoint intrinsic.

The idea of the AnyReg Calling Convention is to provide the call arguments in
registers, but not to force them to be placed

[Stackmap] Add AnyReg calling convention support for patchpoint intrinsic.

The idea of the AnyReg Calling Convention is to provide the call arguments in
registers, but not to force them to be placed in a paticular order into a
specified set of registers. Instead it is up tp the register allocator to assign
any register as it sees fit. The same applies to the return value (if
applicable).

Differential Revision: http://llvm-reviews.chandlerc.com/D2009

Reviewed by Andy

llvm-svn: 194293

show more ...


# 8a065703 08-Nov-2013 Lang Hames <[email protected]>

Fix some minor issues with r194282 to get the tree healthy again.

llvm-svn: 194284


# 3078977d 08-Nov-2013 Lang Hames <[email protected]>

Add a method to get the object-file appropriate stack map section.

Thanks to Eric Christopher for the tips on the appropriate way to do this.

llvm-svn: 194282


# c21d86f7 31-Oct-2013 Andrew Trick <[email protected]>

Unused variable

llvm-svn: 193819


# 153ebe6d 31-Oct-2013 Andrew Trick <[email protected]>

Add support for stack map generation in the X86 backend.

Originally implemented by Lang Hames.

llvm-svn: 193811


1234