Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[BOLT][Refactoring] Isolate changes to MC layer
Summary: Changes that we made to MCInst, MCOperand, MCExpr, etc. are now all moved into tools/llvm-bolt. That required a change to the way we handle annotations and any extra operands for MCInst. Any MCPlus information is now attached via an extra operand of type MCInst with an opcode ANNOTATION_LABEL. Since this operand is MCInst, we attach extra info as operands to this instruction. For first-level annotations use functions to access the information, such as getConditionalTailCall() or getEHInfo(), etc. For the rest, optional or second-class annotations, use a general named-annotation interface such as getAnnotationAs<uint64_t>(Inst, "Count"). I did a test on HHVM binary, and a memory consumption went down a little bit while the runtime remained the same. (cherry picked from FBD7405412)
- Loading branch information
Showing
29 changed files
with
747 additions
and
546 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.