OLD | NEW |
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 530 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
541 | 541 |
542 static inline int encode_crbit(const CRegister& cr, enum CRBit crbit) { | 542 static inline int encode_crbit(const CRegister& cr, enum CRBit crbit) { |
543 return ((cr.code() * CRWIDTH) + crbit); | 543 return ((cr.code() * CRWIDTH) + crbit); |
544 } | 544 } |
545 | 545 |
546 // --------------------------------------------------------------------------- | 546 // --------------------------------------------------------------------------- |
547 // Code generation | 547 // Code generation |
548 | 548 |
549 // Helper for unconditional branch to Label with update to save register | 549 // Helper for unconditional branch to Label with update to save register |
550 void b(Register r, Label* l) { | 550 void b(Register r, Label* l) { |
551 positions_recorder()->WriteRecordedPositions(); | |
552 int32_t halfwords = branch_offset(l) / 2; | 551 int32_t halfwords = branch_offset(l) / 2; |
553 brasl(r, Operand(halfwords)); | 552 brasl(r, Operand(halfwords)); |
554 } | 553 } |
555 | 554 |
556 // Conditional Branch Instruction - Generates either BRC / BRCL | 555 // Conditional Branch Instruction - Generates either BRC / BRCL |
557 void branchOnCond(Condition c, int branch_offset, bool is_bound = false); | 556 void branchOnCond(Condition c, int branch_offset, bool is_bound = false); |
558 | 557 |
559 // Helpers for conditional branch to Label | 558 // Helpers for conditional branch to Label |
560 void b(Condition cond, Label* l, Label::Distance dist = Label::kFar) { | 559 void b(Condition cond, Label* l, Label::Distance dist = Label::kFar) { |
561 branchOnCond(cond, branch_offset(l), | 560 branchOnCond(cond, branch_offset(l), |
(...skipping 897 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1459 | 1458 |
1460 class EnsureSpace BASE_EMBEDDED { | 1459 class EnsureSpace BASE_EMBEDDED { |
1461 public: | 1460 public: |
1462 explicit EnsureSpace(Assembler* assembler) { assembler->CheckBuffer(); } | 1461 explicit EnsureSpace(Assembler* assembler) { assembler->CheckBuffer(); } |
1463 }; | 1462 }; |
1464 | 1463 |
1465 } // namespace internal | 1464 } // namespace internal |
1466 } // namespace v8 | 1465 } // namespace v8 |
1467 | 1466 |
1468 #endif // V8_S390_ASSEMBLER_S390_H_ | 1467 #endif // V8_S390_ASSEMBLER_S390_H_ |
OLD | NEW |