1.1 --- a/src/cpu/sparc/vm/stubGenerator_sparc.cpp Tue Apr 06 15:18:10 2010 -0700 1.2 +++ b/src/cpu/sparc/vm/stubGenerator_sparc.cpp Wed Apr 07 09:37:47 2010 -0700 1.3 @@ -1148,7 +1148,7 @@ 1.4 __ andn(from, 7, from); // Align address 1.5 __ ldx(from, 0, O3); 1.6 __ inc(from, 8); 1.7 - __ align(16); 1.8 + __ align(OptoLoopAlignment); 1.9 __ BIND(L_loop); 1.10 __ ldx(from, 0, O4); 1.11 __ deccc(count, count_dec); // Can we do next iteration after this one? 1.12 @@ -1220,7 +1220,7 @@ 1.13 // 1.14 __ andn(end_from, 7, end_from); // Align address 1.15 __ ldx(end_from, 0, O3); 1.16 - __ align(16); 1.17 + __ align(OptoLoopAlignment); 1.18 __ BIND(L_loop); 1.19 __ ldx(end_from, -8, O4); 1.20 __ deccc(count, count_dec); // Can we do next iteration after this one? 1.21 @@ -1349,7 +1349,7 @@ 1.22 __ BIND(L_copy_byte); 1.23 __ br_zero(Assembler::zero, false, Assembler::pt, count, L_exit); 1.24 __ delayed()->nop(); 1.25 - __ align(16); 1.26 + __ align(OptoLoopAlignment); 1.27 __ BIND(L_copy_byte_loop); 1.28 __ ldub(from, offset, O3); 1.29 __ deccc(count); 1.30 @@ -1445,7 +1445,7 @@ 1.31 L_aligned_copy, L_copy_byte); 1.32 } 1.33 // copy 4 elements (16 bytes) at a time 1.34 - __ align(16); 1.35 + __ align(OptoLoopAlignment); 1.36 __ BIND(L_aligned_copy); 1.37 __ dec(end_from, 16); 1.38 __ ldx(end_from, 8, O3); 1.39 @@ -1461,7 +1461,7 @@ 1.40 __ BIND(L_copy_byte); 1.41 __ br_zero(Assembler::zero, false, Assembler::pt, count, L_exit); 1.42 __ delayed()->nop(); 1.43 - __ align(16); 1.44 + __ align(OptoLoopAlignment); 1.45 __ BIND(L_copy_byte_loop); 1.46 __ dec(end_from); 1.47 __ dec(end_to); 1.48 @@ -1577,7 +1577,7 @@ 1.49 __ BIND(L_copy_2_bytes); 1.50 __ br_zero(Assembler::zero, false, Assembler::pt, count, L_exit); 1.51 __ delayed()->nop(); 1.52 - __ align(16); 1.53 + __ align(OptoLoopAlignment); 1.54 __ BIND(L_copy_2_bytes_loop); 1.55 __ lduh(from, offset, O3); 1.56 __ deccc(count); 1.57 @@ -1684,7 +1684,7 @@ 1.58 L_aligned_copy, L_copy_2_bytes); 1.59 } 1.60 // copy 4 elements (16 bytes) at a time 1.61 - __ align(16); 1.62 + __ align(OptoLoopAlignment); 1.63 __ BIND(L_aligned_copy); 1.64 __ dec(end_from, 16); 1.65 __ ldx(end_from, 8, O3); 1.66 @@ -1781,7 +1781,7 @@ 1.67 // copy with shift 4 elements (16 bytes) at a time 1.68 __ dec(count, 4); // The cmp at the beginning guaranty count >= 4 1.69 1.70 - __ align(16); 1.71 + __ align(OptoLoopAlignment); 1.72 __ BIND(L_copy_16_bytes); 1.73 __ ldx(from, 4, O4); 1.74 __ deccc(count, 4); // Can we do next iteration after this one? 1.75 @@ -1907,7 +1907,7 @@ 1.76 // to form 2 aligned 8-bytes chunks to store. 1.77 // 1.78 __ ldx(end_from, -4, O3); 1.79 - __ align(16); 1.80 + __ align(OptoLoopAlignment); 1.81 __ BIND(L_copy_16_bytes); 1.82 __ ldx(end_from, -12, O4); 1.83 __ deccc(count, 4); 1.84 @@ -1929,7 +1929,7 @@ 1.85 __ delayed()->inc(count, 4); 1.86 1.87 // copy 4 elements (16 bytes) at a time 1.88 - __ align(16); 1.89 + __ align(OptoLoopAlignment); 1.90 __ BIND(L_aligned_copy); 1.91 __ dec(end_from, 16); 1.92 __ ldx(end_from, 8, O3); 1.93 @@ -2045,7 +2045,7 @@ 1.94 __ mov(O3, count); 1.95 __ mov(from, from64); 1.96 1.97 - __ align(16); 1.98 + __ align(OptoLoopAlignment); 1.99 __ BIND(L_copy_64_bytes); 1.100 for( int off = 0; off < 64; off += 16 ) { 1.101 __ ldx(from64, off+0, O4); 1.102 @@ -2065,7 +2065,7 @@ 1.103 __ delayed()->add(offset0, 8, offset8); 1.104 1.105 // Copy by 16 bytes chunks 1.106 - __ align(16); 1.107 + __ align(OptoLoopAlignment); 1.108 __ BIND(L_copy_16_bytes); 1.109 __ ldx(from, offset0, O3); 1.110 __ ldx(from, offset8, G3); 1.111 @@ -2139,7 +2139,7 @@ 1.112 __ brx(Assembler::lessEqual, false, Assembler::pn, L_copy_8_bytes ); 1.113 __ delayed()->sllx(count, LogBytesPerLong, offset8); 1.114 __ sub(offset8, 8, offset0); 1.115 - __ align(16); 1.116 + __ align(OptoLoopAlignment); 1.117 __ BIND(L_copy_16_bytes); 1.118 __ ldx(from, offset8, O2); 1.119 __ ldx(from, offset0, O3); 1.120 @@ -2405,7 +2405,7 @@ 1.121 // (O5 = 0; ; O5 += wordSize) --- offset from src, dest arrays 1.122 // (O2 = len; O2 != 0; O2--) --- number of oops *remaining* 1.123 // G3, G4, G5 --- current oop, oop.klass, oop.klass.super 1.124 - __ align(16); 1.125 + __ align(OptoLoopAlignment); 1.126 1.127 __ BIND(store_element); 1.128 __ deccc(G1_remain); // decrement the count