Mercurial > hg > truffle
comparison src/share/vm/opto/chaitin.cpp @ 17812:a7d4d4655766
Merge
author | kvn |
---|---|
date | Wed, 26 Mar 2014 18:21:05 -0700 |
parents | a9becfeecd1b |
children | 04e7587c97dc 78bbf4d43a14 |
comparison
equal
deleted
inserted
replaced
17789:6b207d038106 | 17812:a7d4d4655766 |
---|---|
759 // Check for vector live range (only if vector register is used). | 759 // Check for vector live range (only if vector register is used). |
760 // On SPARC vector uses RegD which could be misaligned so it is not | 760 // On SPARC vector uses RegD which could be misaligned so it is not |
761 // processes as vector in RA. | 761 // processes as vector in RA. |
762 if (RegMask::is_vector(ireg)) | 762 if (RegMask::is_vector(ireg)) |
763 lrg._is_vector = 1; | 763 lrg._is_vector = 1; |
764 assert(n_type->isa_vect() == NULL || lrg._is_vector || ireg == Op_RegD, | 764 assert(n_type->isa_vect() == NULL || lrg._is_vector || ireg == Op_RegD || ireg == Op_RegL, |
765 "vector must be in vector registers"); | 765 "vector must be in vector registers"); |
766 | 766 |
767 // Check for bound register masks | 767 // Check for bound register masks |
768 const RegMask &lrgmask = lrg.mask(); | 768 const RegMask &lrgmask = lrg.mask(); |
769 if (lrgmask.is_bound(ireg)) { | 769 if (lrgmask.is_bound(ireg)) { |
959 // Check for bound register masks | 959 // Check for bound register masks |
960 const RegMask &lrgmask = lrg.mask(); | 960 const RegMask &lrgmask = lrg.mask(); |
961 int kreg = n->in(k)->ideal_reg(); | 961 int kreg = n->in(k)->ideal_reg(); |
962 bool is_vect = RegMask::is_vector(kreg); | 962 bool is_vect = RegMask::is_vector(kreg); |
963 assert(n->in(k)->bottom_type()->isa_vect() == NULL || | 963 assert(n->in(k)->bottom_type()->isa_vect() == NULL || |
964 is_vect || kreg == Op_RegD, | 964 is_vect || kreg == Op_RegD || kreg == Op_RegL, |
965 "vector must be in vector registers"); | 965 "vector must be in vector registers"); |
966 if (lrgmask.is_bound(kreg)) | 966 if (lrgmask.is_bound(kreg)) |
967 lrg._is_bound = 1; | 967 lrg._is_bound = 1; |
968 | 968 |
969 // If this use of a double forces a mis-aligned double, | 969 // If this use of a double forces a mis-aligned double, |