| 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 1388 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1399 uint32_t code = op << 16 | m3 * B12 | m4 * B8 | r1.code() * B4 | r2.code(); | 1399 uint32_t code = op << 16 | m3 * B12 | m4 * B8 | r1.code() * B4 | r2.code(); |
| 1400 emit4bytes(code); | 1400 emit4bytes(code); |
| 1401 } | 1401 } |
| 1402 | 1402 |
| 1403 // end of S390 Instruction generation | 1403 // end of S390 Instruction generation |
| 1404 | 1404 |
| 1405 // start of S390 instruction | 1405 // start of S390 instruction |
| 1406 RX_FORM_EMIT(bc, BC) | 1406 RX_FORM_EMIT(bc, BC) |
| 1407 RR_FORM_EMIT(bctr, BCTR) | 1407 RR_FORM_EMIT(bctr, BCTR) |
| 1408 RXE_FORM_EMIT(ceb, CEB) | 1408 RXE_FORM_EMIT(ceb, CEB) |
| 1409 RRE_FORM_EMIT(cefbr, CEFBR) | |
| 1410 SS1_FORM_EMIT(ed, ED) | 1409 SS1_FORM_EMIT(ed, ED) |
| 1411 RX_FORM_EMIT(ex, EX) | 1410 RX_FORM_EMIT(ex, EX) |
| 1412 RRE_FORM_EMIT(flogr, FLOGR) | 1411 RRE_FORM_EMIT(flogr, FLOGR) |
| 1413 RRE_FORM_EMIT(lcgr, LCGR) | 1412 RRE_FORM_EMIT(lcgr, LCGR) |
| 1414 RR_FORM_EMIT(lcr, LCR) | 1413 RR_FORM_EMIT(lcr, LCR) |
| 1415 RX_FORM_EMIT(le_z, LE) | 1414 RX_FORM_EMIT(le_z, LE) |
| 1416 RXY_FORM_EMIT(ley, LEY) | 1415 RXY_FORM_EMIT(ley, LEY) |
| 1417 RIL1_FORM_EMIT(llihf, LLIHF) | 1416 RIL1_FORM_EMIT(llihf, LLIHF) |
| 1418 RIL1_FORM_EMIT(llilf, LLILF) | 1417 RIL1_FORM_EMIT(llilf, LLILF) |
| 1419 RRE_FORM_EMIT(lngr, LNGR) | 1418 RRE_FORM_EMIT(lngr, LNGR) |
| (...skipping 1461 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2881 Register r2) { | 2880 Register r2) { |
| 2882 DCHECK_EQ(m3, Condition(0)); | 2881 DCHECK_EQ(m3, Condition(0)); |
| 2883 DCHECK_EQ(m4, Condition(0)); | 2882 DCHECK_EQ(m4, Condition(0)); |
| 2884 rrfe_form(CELGBR, Condition(0), Condition(0), Register::from_code(r1.code()), | 2883 rrfe_form(CELGBR, Condition(0), Condition(0), Register::from_code(r1.code()), |
| 2885 r2); | 2884 r2); |
| 2886 } | 2885 } |
| 2887 | 2886 |
| 2888 // Convert from Fixed Logical (F32<-32) | 2887 // Convert from Fixed Logical (F32<-32) |
| 2889 void Assembler::celfbr(Condition m3, Condition m4, DoubleRegister r1, | 2888 void Assembler::celfbr(Condition m3, Condition m4, DoubleRegister r1, |
| 2890 Register r2) { | 2889 Register r2) { |
| 2891 DCHECK_EQ(m3, Condition(0)); | |
| 2892 DCHECK_EQ(m4, Condition(0)); | 2890 DCHECK_EQ(m4, Condition(0)); |
| 2893 rrfe_form(CELFBR, Condition(0), Condition(0), Register::from_code(r1.code()), | 2891 rrfe_form(CELFBR, m3, Condition(0), Register::from_code(r1.code()), r2); |
| 2894 r2); | |
| 2895 } | 2892 } |
| 2896 | 2893 |
| 2897 // Convert from Fixed Logical (L<-64) | 2894 // Convert from Fixed Logical (L<-64) |
| 2898 void Assembler::cdlgbr(Condition m3, Condition m4, DoubleRegister r1, | 2895 void Assembler::cdlgbr(Condition m3, Condition m4, DoubleRegister r1, |
| 2899 Register r2) { | 2896 Register r2) { |
| 2900 DCHECK_EQ(m3, Condition(0)); | 2897 DCHECK_EQ(m3, Condition(0)); |
| 2901 DCHECK_EQ(m4, Condition(0)); | 2898 DCHECK_EQ(m4, Condition(0)); |
| 2902 rrfe_form(CDLGBR, Condition(0), Condition(0), Register::from_code(r1.code()), | 2899 rrfe_form(CDLGBR, Condition(0), Condition(0), Register::from_code(r1.code()), |
| 2903 r2); | 2900 r2); |
| 2904 } | 2901 } |
| 2905 | 2902 |
| 2906 // Convert from Fixed Logical (L<-32) | 2903 // Convert from Fixed Logical (L<-32) |
| 2907 void Assembler::cdlfbr(Condition m3, Condition m4, DoubleRegister r1, | 2904 void Assembler::cdlfbr(Condition m3, Condition m4, DoubleRegister r1, |
| 2908 Register r2) { | 2905 Register r2) { |
| 2909 DCHECK_EQ(m4, Condition(0)); | 2906 DCHECK_EQ(m4, Condition(0)); |
| 2910 rrfe_form(CDLFBR, m3, Condition(0), Register::from_code(r1.code()), r2); | 2907 rrfe_form(CDLFBR, m3, Condition(0), Register::from_code(r1.code()), r2); |
| 2911 } | 2908 } |
| 2912 | 2909 |
| 2913 // Convert from Fixed point (S<-32) | 2910 // Convert from Fixed point (S<-32) |
| 2914 void Assembler::cefbr(DoubleRegister r1, Register r2) { | 2911 void Assembler::cefbr(Condition m3, DoubleRegister r1, Register r2) { |
| 2915 rre_form(CEFBR, Register::from_code(r1.code()), r2); | 2912 rrfe_form(CEFBR, m3, Condition(0), Register::from_code(r1.code()), r2); |
| 2916 } | 2913 } |
| 2917 | 2914 |
| 2918 // Convert to Fixed point (32<-S) | 2915 // Convert to Fixed point (32<-S) |
| 2919 void Assembler::cfebr(Condition m3, Register r1, DoubleRegister r2) { | 2916 void Assembler::cfebr(Condition m3, Register r1, DoubleRegister r2) { |
| 2920 rrfe_form(CFEBR, m3, Condition(0), r1, Register::from_code(r2.code())); | 2917 rrfe_form(CFEBR, m3, Condition(0), r1, Register::from_code(r2.code())); |
| 2921 } | 2918 } |
| 2922 | 2919 |
| 2923 // Load (L <- S) | 2920 // Load (L <- S) |
| 2924 void Assembler::ldeb(DoubleRegister d1, const MemOperand& opnd) { | 2921 void Assembler::ldeb(DoubleRegister d1, const MemOperand& opnd) { |
| 2925 rxe_form(LDEB, Register::from_code(d1.code()), opnd.rx(), opnd.rb(), | 2922 rxe_form(LDEB, Register::from_code(d1.code()), opnd.rx(), opnd.rb(), |
| (...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3076 SKIP_ICACHE_FLUSH); | 3073 SKIP_ICACHE_FLUSH); |
| 3077 } | 3074 } |
| 3078 | 3075 |
| 3079 reloc_info_writer.Write(&rinfo); | 3076 reloc_info_writer.Write(&rinfo); |
| 3080 } | 3077 } |
| 3081 } | 3078 } |
| 3082 | 3079 |
| 3083 } // namespace internal | 3080 } // namespace internal |
| 3084 } // namespace v8 | 3081 } // namespace v8 |
| 3085 #endif // V8_TARGET_ARCH_S390 | 3082 #endif // V8_TARGET_ARCH_S390 |
| OLD | NEW |