mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 04:30:23 +00:00
[ms-inline asm] Add a new AsmRewriteKind, AOK_Delete. To be used in a future
commit. Part of rdar://13453209 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179325 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
f06cc98149
commit
f16b08de8a
@ -22,7 +22,8 @@ class MCInst;
|
|||||||
template <typename T> class SmallVectorImpl;
|
template <typename T> class SmallVectorImpl;
|
||||||
|
|
||||||
enum AsmRewriteKind {
|
enum AsmRewriteKind {
|
||||||
AOK_Align = 0, // Rewrite align as .align.
|
AOK_Delete = 0, // Rewrite should be ignored.
|
||||||
|
AOK_Align, // Rewrite align as .align.
|
||||||
AOK_DotOperator, // Rewrite a dot operator expression as an immediate.
|
AOK_DotOperator, // Rewrite a dot operator expression as an immediate.
|
||||||
// E.g., [eax].foo.bar -> [eax].8
|
// E.g., [eax].foo.bar -> [eax].8
|
||||||
AOK_Emit, // Rewrite _emit as .byte.
|
AOK_Emit, // Rewrite _emit as .byte.
|
||||||
@ -35,15 +36,16 @@ enum AsmRewriteKind {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const char AsmRewritePrecedence [] = {
|
const char AsmRewritePrecedence [] = {
|
||||||
0, // AOK_Align
|
0, // AOK_Delete
|
||||||
0, // AOK_DotOperator
|
1, // AOK_Align
|
||||||
0, // AOK_Emit
|
1, // AOK_DotOperator
|
||||||
2, // AOK_Imm
|
1, // AOK_Emit
|
||||||
2, // AOK_ImmPrefix
|
3, // AOK_Imm
|
||||||
1, // AOK_Input
|
3, // AOK_ImmPrefix
|
||||||
1, // AOK_Output
|
2, // AOK_Input
|
||||||
3, // AOK_SizeDirective
|
2, // AOK_Output
|
||||||
0 // AOK_Skip
|
4, // AOK_SizeDirective
|
||||||
|
1 // AOK_Skip
|
||||||
};
|
};
|
||||||
|
|
||||||
struct AsmRewrite {
|
struct AsmRewrite {
|
||||||
|
Loading…
Reference in New Issue
Block a user