< prev index next >

src/hotspot/share/memory/memRegion.cpp

Print this page
rev 58060 : [mq]: 8238999-iklam-review


  84   if (mr2.start() >= end()) {
  85     // strictly above
  86     return MemRegion(start(), end());
  87   }
  88   if (mr2.start() >= start() && mr2.end() >= end()) {
  89     // overlap ending
  90     return MemRegion(start(), mr2.start());
  91   }
  92   if (mr2.start() <= start() && mr2.end() >= end()) {
  93     // completely overlapping
  94     return MemRegion();
  95   }
  96   if (mr2.start() > start() && mr2.end() < end()) {
  97     // interior
  98     guarantee(false, "MemRegion::minus, but interior");
  99     return MemRegion();
 100   }
 101   ShouldNotReachHere();
 102   return MemRegion();
 103 }










  84   if (mr2.start() >= end()) {
  85     // strictly above
  86     return MemRegion(start(), end());
  87   }
  88   if (mr2.start() >= start() && mr2.end() >= end()) {
  89     // overlap ending
  90     return MemRegion(start(), mr2.start());
  91   }
  92   if (mr2.start() <= start() && mr2.end() >= end()) {
  93     // completely overlapping
  94     return MemRegion();
  95   }
  96   if (mr2.start() > start() && mr2.end() < end()) {
  97     // interior
  98     guarantee(false, "MemRegion::minus, but interior");
  99     return MemRegion();
 100   }
 101   ShouldNotReachHere();
 102   return MemRegion();
 103 }
 104 
 105 MemRegion* MemRegion::create(uint length, MEMFLAGS flags) {
 106   MemRegion* result = NEW_C_HEAP_ARRAY(MemRegion, length, flags);
 107   for (uint i = 0; i < length; i++) {
 108     ::new (&result[i]) MemRegion();
 109   }
 110   return result;
 111 }
< prev index next >