src/share/vm/opto/superword.cpp

changeset 1422
00977607da34
parent 1420
685e959d09ea
child 1493
73a726751507
     1.1 --- a/src/share/vm/opto/superword.cpp	Mon Sep 14 12:14:20 2009 -0700
     1.2 +++ b/src/share/vm/opto/superword.cpp	Tue Sep 15 11:09:34 2009 -0700
     1.3 @@ -473,6 +473,12 @@
     1.4  // Can s1 and s2 be in a pack with s1 immediately preceding s2 and
     1.5  // s1 aligned at "align"
     1.6  bool SuperWord::stmts_can_pack(Node* s1, Node* s2, int align) {
     1.7 +
     1.8 +  // Do not use superword for non-primitives
     1.9 +  if((s1->is_Mem() && !is_java_primitive(s1->as_Mem()->memory_type())) ||
    1.10 +     (s2->is_Mem() && !is_java_primitive(s2->as_Mem()->memory_type())))
    1.11 +    return false;
    1.12 +
    1.13    if (isomorphic(s1, s2)) {
    1.14      if (independent(s1, s2)) {
    1.15        if (!exists_at(s1, 0) && !exists_at(s2, 1)) {

mercurial