Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(63)

Side by Side Diff: src/arm64/decoder-arm64.h

Issue 1990073002: Add {lda,stl}x?r{,b,h} instructions to ARM64 assembler/disassembler (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: typo Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/arm64/constants-arm64.h ('k') | src/arm64/decoder-arm64-inl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_ARM64_DECODER_ARM64_H_ 5 #ifndef V8_ARM64_DECODER_ARM64_H_
6 #define V8_ARM64_DECODER_ARM64_H_ 6 #define V8_ARM64_DECODER_ARM64_H_
7 7
8 #include <list> 8 #include <list>
9 9
10 #include "src/arm64/instructions-arm64.h" 10 #include "src/arm64/instructions-arm64.h"
11 #include "src/globals.h" 11 #include "src/globals.h"
12 12
13 namespace v8 { 13 namespace v8 {
14 namespace internal { 14 namespace internal {
15 15
16 16
17 // List macro containing all visitors needed by the decoder class. 17 // List macro containing all visitors needed by the decoder class.
18 18
19 #define VISITOR_LIST(V) \ 19 #define VISITOR_LIST(V) \
20 V(PCRelAddressing) \ 20 V(PCRelAddressing) \
21 V(AddSubImmediate) \ 21 V(AddSubImmediate) \
22 V(LogicalImmediate) \ 22 V(LogicalImmediate) \
23 V(MoveWideImmediate) \ 23 V(MoveWideImmediate) \
24 V(Bitfield) \ 24 V(Bitfield) \
25 V(Extract) \ 25 V(Extract) \
26 V(UnconditionalBranch) \ 26 V(UnconditionalBranch) \
27 V(UnconditionalBranchToRegister) \ 27 V(UnconditionalBranchToRegister) \
28 V(CompareBranch) \ 28 V(CompareBranch) \
29 V(TestBranch) \ 29 V(TestBranch) \
30 V(ConditionalBranch) \ 30 V(ConditionalBranch) \
31 V(System) \ 31 V(System) \
32 V(Exception) \ 32 V(Exception) \
33 V(LoadStorePairPostIndex) \ 33 V(LoadStorePairPostIndex) \
34 V(LoadStorePairOffset) \ 34 V(LoadStorePairOffset) \
35 V(LoadStorePairPreIndex) \ 35 V(LoadStorePairPreIndex) \
36 V(LoadLiteral) \ 36 V(LoadLiteral) \
37 V(LoadStoreUnscaledOffset) \ 37 V(LoadStoreUnscaledOffset) \
38 V(LoadStorePostIndex) \ 38 V(LoadStorePostIndex) \
39 V(LoadStorePreIndex) \ 39 V(LoadStorePreIndex) \
40 V(LoadStoreRegisterOffset) \ 40 V(LoadStoreRegisterOffset) \
41 V(LoadStoreUnsignedOffset) \ 41 V(LoadStoreUnsignedOffset) \
42 V(LogicalShifted) \ 42 V(LoadStoreAcquireRelease) \
43 V(AddSubShifted) \ 43 V(LogicalShifted) \
44 V(AddSubExtended) \ 44 V(AddSubShifted) \
45 V(AddSubWithCarry) \ 45 V(AddSubExtended) \
46 V(ConditionalCompareRegister) \ 46 V(AddSubWithCarry) \
47 V(ConditionalCompareImmediate) \ 47 V(ConditionalCompareRegister) \
48 V(ConditionalSelect) \ 48 V(ConditionalCompareImmediate) \
49 V(DataProcessing1Source) \ 49 V(ConditionalSelect) \
50 V(DataProcessing2Source) \ 50 V(DataProcessing1Source) \
51 V(DataProcessing3Source) \ 51 V(DataProcessing2Source) \
52 V(FPCompare) \ 52 V(DataProcessing3Source) \
53 V(FPConditionalCompare) \ 53 V(FPCompare) \
54 V(FPConditionalSelect) \ 54 V(FPConditionalCompare) \
55 V(FPImmediate) \ 55 V(FPConditionalSelect) \
56 V(FPDataProcessing1Source) \ 56 V(FPImmediate) \
57 V(FPDataProcessing2Source) \ 57 V(FPDataProcessing1Source) \
58 V(FPDataProcessing3Source) \ 58 V(FPDataProcessing2Source) \
59 V(FPIntegerConvert) \ 59 V(FPDataProcessing3Source) \
60 V(FPFixedPointConvert) \ 60 V(FPIntegerConvert) \
61 V(Unallocated) \ 61 V(FPFixedPointConvert) \
62 V(Unallocated) \
62 V(Unimplemented) 63 V(Unimplemented)
63 64
64 // The Visitor interface. Disassembler and simulator (and other tools) 65 // The Visitor interface. Disassembler and simulator (and other tools)
65 // must provide implementations for all of these functions. 66 // must provide implementations for all of these functions.
66 class DecoderVisitor { 67 class DecoderVisitor {
67 public: 68 public:
68 virtual ~DecoderVisitor() {} 69 virtual ~DecoderVisitor() {}
69 70
70 #define DECLARE(A) virtual void Visit##A(Instruction* instr) = 0; 71 #define DECLARE(A) virtual void Visit##A(Instruction* instr) = 0;
71 VISITOR_LIST(DECLARE) 72 VISITOR_LIST(DECLARE)
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
178 // tree, and call the corresponding visitors. 179 // tree, and call the corresponding visitors.
179 // On entry, instruction bits 27:25 = 0x7. 180 // On entry, instruction bits 27:25 = 0x7.
180 void DecodeAdvSIMDDataProcessing(Instruction* instr); 181 void DecodeAdvSIMDDataProcessing(Instruction* instr);
181 }; 182 };
182 183
183 184
184 } // namespace internal 185 } // namespace internal
185 } // namespace v8 186 } // namespace v8
186 187
187 #endif // V8_ARM64_DECODER_ARM64_H_ 188 #endif // V8_ARM64_DECODER_ARM64_H_
OLDNEW
« no previous file with comments | « src/arm64/constants-arm64.h ('k') | src/arm64/decoder-arm64-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698