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

Side by Side Diff: src/s390/constants-s390.h

Issue 2795803003: s390: exploit new mul in TF (Closed)
Patch Set: rebase Created 3 years, 8 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/compiler/s390/instruction-selector-s390.cc ('k') | src/s390/disasm-s390.cc » ('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 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 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_S390_CONSTANTS_S390_H_ 5 #ifndef V8_S390_CONSTANTS_S390_H_
6 #define V8_S390_CONSTANTS_S390_H_ 6 #define V8_S390_CONSTANTS_S390_H_
7 7
8 // Get the standard printf format macros for C99 stdint types. 8 // Get the standard printf format macros for C99 stdint types.
9 #ifndef __STDC_FORMAT_MACROS 9 #ifndef __STDC_FORMAT_MACROS
10 #define __STDC_FORMAT_MACROS 10 #define __STDC_FORMAT_MACROS
(...skipping 945 matching lines...) Expand 10 before | Expand all | Expand 10 after
956 V(llhh, LLHH, 0xE3C6) /* type = RXY_A LOAD LOGICAL HALFWORD HIGH (32<-16) */ \ 956 V(llhh, LLHH, 0xE3C6) /* type = RXY_A LOAD LOGICAL HALFWORD HIGH (32<-16) */ \
957 V(sthh, STHH, 0xE3C7) /* type = RXY_A STORE HALFWORD HIGH (16) */ \ 957 V(sthh, STHH, 0xE3C7) /* type = RXY_A STORE HALFWORD HIGH (16) */ \
958 V(lfhat, LFHAT, 0xE3C8) /* type = RXY_A LOAD HIGH AND TRAP (32H<-32) */ \ 958 V(lfhat, LFHAT, 0xE3C8) /* type = RXY_A LOAD HIGH AND TRAP (32H<-32) */ \
959 V(lfh, LFH, 0xE3CA) /* type = RXY_A LOAD HIGH (32) */ \ 959 V(lfh, LFH, 0xE3CA) /* type = RXY_A LOAD HIGH (32) */ \
960 V(stfh, STFH, 0xE3CB) /* type = RXY_A STORE HIGH (32) */ \ 960 V(stfh, STFH, 0xE3CB) /* type = RXY_A STORE HIGH (32) */ \
961 V(chf, CHF, 0xE3CD) /* type = RXY_A COMPARE HIGH (32) */ \ 961 V(chf, CHF, 0xE3CD) /* type = RXY_A COMPARE HIGH (32) */ \
962 V(clhf, CLHF, 0xE3CF) /* type = RXY_A COMPARE LOGICAL HIGH (32) */ \ 962 V(clhf, CLHF, 0xE3CF) /* type = RXY_A COMPARE LOGICAL HIGH (32) */ \
963 V(ley, LEY, 0xED64) /* type = RXY_A LOAD (short) */ \ 963 V(ley, LEY, 0xED64) /* type = RXY_A LOAD (short) */ \
964 V(ldy, LDY, 0xED65) /* type = RXY_A LOAD (long) */ \ 964 V(ldy, LDY, 0xED65) /* type = RXY_A LOAD (long) */ \
965 V(stey, STEY, 0xED66) /* type = RXY_A STORE (short) */ \ 965 V(stey, STEY, 0xED66) /* type = RXY_A STORE (short) */ \
966 V(stdy, STDY, 0xED67) /* type = RXY_A STORE (long) */ 966 V(stdy, STDY, 0xED67) /* type = RXY_A STORE (long) */ \
967 V(msc, MSC, 0xE353) /* type = RSY_A MULTIPLY SINGLE (32) */ \
968 V(msgc, MSGC, 0xE383) /* type = RSY_A MULTIPLY SINGLE (64) */
967 969
968 #define S390_RXY_B_OPCODE_LIST(V) \ 970 #define S390_RXY_B_OPCODE_LIST(V) \
969 V(pfd, PFD, 0xE336) /* type = RXY_B PREFETCH DATA */ 971 V(pfd, PFD, 0xE336) /* type = RXY_B PREFETCH DATA */
970 972
971 #define S390_SIY_OPCODE_LIST(V) \ 973 #define S390_SIY_OPCODE_LIST(V) \
972 V(tmy, TMY, 0xEB51) /* type = SIY TEST UNDER MASK */ \ 974 V(tmy, TMY, 0xEB51) /* type = SIY TEST UNDER MASK */ \
973 V(mviy, MVIY, 0xEB52) /* type = SIY MOVE (immediate) */ \ 975 V(mviy, MVIY, 0xEB52) /* type = SIY MOVE (immediate) */ \
974 V(niy, NIY, 0xEB54) /* type = SIY AND (immediate) */ \ 976 V(niy, NIY, 0xEB54) /* type = SIY AND (immediate) */ \
975 V(cliy, CLIY, 0xEB55) /* type = SIY COMPARE LOGICAL (immediate) */ \ 977 V(cliy, CLIY, 0xEB55) /* type = SIY COMPARE LOGICAL (immediate) */ \
976 V(oiy, OIY, 0xEB56) /* type = SIY OR (immediate) */ \ 978 V(oiy, OIY, 0xEB56) /* type = SIY OR (immediate) */ \
(...skipping 731 matching lines...) Expand 10 before | Expand all | Expand 10 after
1708 S390_RRS_OPCODE_LIST(V) 1710 S390_RRS_OPCODE_LIST(V)
1709 1711
1710 // Opcodes as defined in Appendix B-2 table 1712 // Opcodes as defined in Appendix B-2 table
1711 enum Opcode { 1713 enum Opcode {
1712 #define DECLARE_OPCODES(name, opcode_name, opcode_value) \ 1714 #define DECLARE_OPCODES(name, opcode_name, opcode_value) \
1713 opcode_name = opcode_value, 1715 opcode_name = opcode_value,
1714 S390_OPCODE_LIST(DECLARE_OPCODES) 1716 S390_OPCODE_LIST(DECLARE_OPCODES)
1715 #undef DECLARE_OPCODES 1717 #undef DECLARE_OPCODES
1716 1718
1717 BKPT = 0x0001, // GDB Software Breakpoint 1719 BKPT = 0x0001, // GDB Software Breakpoint
1718 DUMY = 0xE353 // Special dummy opcode 1720 DUMY = 0xE352 // Special dummy opcode
1719 }; 1721 };
1720 1722
1721 // Instruction encoding bits and masks. 1723 // Instruction encoding bits and masks.
1722 enum { 1724 enum {
1723 // Instruction encoding bit 1725 // Instruction encoding bit
1724 B1 = 1 << 1, 1726 B1 = 1 << 1,
1725 B4 = 1 << 4, 1727 B4 = 1 << 4,
1726 B5 = 1 << 5, 1728 B5 = 1 << 5,
1727 B7 = 1 << 7, 1729 B7 = 1 << 7,
1728 B8 = 1 << 8, 1730 B8 = 1 << 8,
(...skipping 644 matching lines...) Expand 10 before | Expand all | Expand 10 after
2373 static int Number(const char* name); 2375 static int Number(const char* name);
2374 2376
2375 private: 2377 private:
2376 static const char* names_[kNumDoubleRegisters]; 2378 static const char* names_[kNumDoubleRegisters];
2377 }; 2379 };
2378 2380
2379 } // namespace internal 2381 } // namespace internal
2380 } // namespace v8 2382 } // namespace v8
2381 2383
2382 #endif // V8_S390_CONSTANTS_S390_H_ 2384 #endif // V8_S390_CONSTANTS_S390_H_
OLDNEW
« no previous file with comments | « src/compiler/s390/instruction-selector-s390.cc ('k') | src/s390/disasm-s390.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698