[PATCH] D20363: [X86] Extract HiPE prologue constants into metadata
Magnus Lång via llvm-commits
llvm-commits at lists.llvm.org
Wed May 18 06:16:32 PDT 2016
margnus1 created this revision.
margnus1 added reviewers: bkramer, nadav.
margnus1 added a subscriber: llvm-commits.
`X86FrameLowering::adjustForHiPEPrologue()` contains a hard-coded offset
into an Erlang Runtime System-internal data structure (the PCB). As the
layout of this data structure is prone to change, this poses problems
for maintaining compatibility.
To address this problem, we will have the compiler spit out this
information as module-level named metadata. For example (where
`P_NSP_LIMIT` is the offending offset):
```
!hipe.literals = !{ !2, !3, !4 }
!2 = !{ !"P_NSP_LIMIT", i32 152 }
!3 = !{ !"X86_LEAF_WORDS", i32 24 }
!4 = !{ !"AMD64_LEAF_WORDS", i32 24 }
```
http://reviews.llvm.org/D20363
Files:
lib/Target/X86/X86FrameLowering.cpp
test/CodeGen/X86/hipe-cc.ll
test/CodeGen/X86/hipe-cc64.ll
test/CodeGen/X86/hipe-prologue.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20363.57602.patch
Type: text/x-patch
Size: 4816 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160518/57fe4a1a/attachment.bin>
More information about the llvm-commits
mailing list