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

Side by Side Diff: src/ppc/assembler-ppc.h

Issue 1716293002: PPC: Cleanup CRegister definition. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 10 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 | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. 1 // Copyright (c) 1994-2006 Sun Microsystems Inc.
2 // All Rights Reserved. 2 // All Rights Reserved.
3 // 3 //
4 // Redistribution and use in source and binary forms, with or without 4 // Redistribution and use in source and binary forms, with or without
5 // modification, are permitted provided that the following conditions 5 // modification, are permitted provided that the following conditions
6 // are met: 6 // are met:
7 // 7 //
8 // - Redistributions of source code must retain the above copyright notice, 8 // - Redistributions of source code must retain the above copyright notice,
9 // this list of conditions and the following disclaimer. 9 // this list of conditions and the following disclaimer.
10 // 10 //
(...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after
249 // compilation unit that includes this header doesn't use the variables. 249 // compilation unit that includes this header doesn't use the variables.
250 #define kFirstCalleeSavedDoubleReg d14 250 #define kFirstCalleeSavedDoubleReg d14
251 #define kLastCalleeSavedDoubleReg d31 251 #define kLastCalleeSavedDoubleReg d31
252 #define kDoubleRegZero d14 252 #define kDoubleRegZero d14
253 #define kScratchDoubleReg d13 253 #define kScratchDoubleReg d13
254 254
255 Register ToRegister(int num); 255 Register ToRegister(int num);
256 256
257 // Coprocessor register 257 // Coprocessor register
258 struct CRegister { 258 struct CRegister {
259 bool is_valid() const { return 0 <= reg_code && reg_code < 16; } 259 bool is_valid() const { return 0 <= reg_code && reg_code < 8; }
260 bool is(CRegister creg) const { return reg_code == creg.reg_code; } 260 bool is(CRegister creg) const { return reg_code == creg.reg_code; }
261 int code() const { 261 int code() const {
262 DCHECK(is_valid()); 262 DCHECK(is_valid());
263 return reg_code; 263 return reg_code;
264 } 264 }
265 int bit() const { 265 int bit() const {
266 DCHECK(is_valid()); 266 DCHECK(is_valid());
267 return 1 << reg_code; 267 return 1 << reg_code;
268 } 268 }
269 269
270 // Unfortunately we can't make this private in a struct. 270 // Unfortunately we can't make this private in a struct.
271 int reg_code; 271 int reg_code;
272 }; 272 };
273 273
274 274
275 const CRegister no_creg = {-1}; 275 const CRegister no_creg = {-1};
276 276
277 const CRegister cr0 = {0}; 277 const CRegister cr0 = {0};
278 const CRegister cr1 = {1}; 278 const CRegister cr1 = {1};
279 const CRegister cr2 = {2}; 279 const CRegister cr2 = {2};
280 const CRegister cr3 = {3}; 280 const CRegister cr3 = {3};
281 const CRegister cr4 = {4}; 281 const CRegister cr4 = {4};
282 const CRegister cr5 = {5}; 282 const CRegister cr5 = {5};
283 const CRegister cr6 = {6}; 283 const CRegister cr6 = {6};
284 const CRegister cr7 = {7}; 284 const CRegister cr7 = {7};
285 const CRegister cr8 = {8};
286 const CRegister cr9 = {9};
287 const CRegister cr10 = {10};
288 const CRegister cr11 = {11};
289 const CRegister cr12 = {12};
290 const CRegister cr13 = {13};
291 const CRegister cr14 = {14};
292 const CRegister cr15 = {15};
293 285
294 // TODO(ppc) Define SIMD registers. 286 // TODO(ppc) Define SIMD registers.
295 typedef DoubleRegister Simd128Register; 287 typedef DoubleRegister Simd128Register;
296 288
297 // ----------------------------------------------------------------------------- 289 // -----------------------------------------------------------------------------
298 // Machine instruction Operands 290 // Machine instruction Operands
299 291
300 #if V8_TARGET_ARCH_PPC64 292 #if V8_TARGET_ARCH_PPC64
301 const RelocInfo::Mode kRelocInfo_NONEPTR = RelocInfo::NONE64; 293 const RelocInfo::Mode kRelocInfo_NONEPTR = RelocInfo::NONE64;
302 #else 294 #else
(...skipping 1175 matching lines...) Expand 10 before | Expand all | Expand 10 after
1478 1470
1479 1471
1480 class EnsureSpace BASE_EMBEDDED { 1472 class EnsureSpace BASE_EMBEDDED {
1481 public: 1473 public:
1482 explicit EnsureSpace(Assembler* assembler) { assembler->CheckBuffer(); } 1474 explicit EnsureSpace(Assembler* assembler) { assembler->CheckBuffer(); }
1483 }; 1475 };
1484 } // namespace internal 1476 } // namespace internal
1485 } // namespace v8 1477 } // namespace v8
1486 1478
1487 #endif // V8_PPC_ASSEMBLER_PPC_H_ 1479 #endif // V8_PPC_ASSEMBLER_PPC_H_
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698