src/cpu/x86/vm/c1_MacroAssembler_x86.cpp

changeset 2423
b1a2afa37ec4
parent 2344
ac637b7220d1
child 3391
069ab3f976d3
     1.1 --- a/src/cpu/x86/vm/c1_MacroAssembler_x86.cpp	Fri Jan 07 03:38:19 2011 -0800
     1.2 +++ b/src/cpu/x86/vm/c1_MacroAssembler_x86.cpp	Fri Jan 07 10:42:32 2011 -0500
     1.3 @@ -1,5 +1,5 @@
     1.4  /*
     1.5 - * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
     1.6 + * Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
     1.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     1.8   *
     1.9   * This code is free software; you can redistribute it and/or modify it
    1.10 @@ -141,6 +141,7 @@
    1.11      tlab_allocate(obj, var_size_in_bytes, con_size_in_bytes, t1, t2, slow_case);
    1.12    } else {
    1.13      eden_allocate(obj, var_size_in_bytes, con_size_in_bytes, t1, slow_case);
    1.14 +    incr_allocated_bytes(noreg, var_size_in_bytes, con_size_in_bytes, t1);
    1.15    }
    1.16  }
    1.17  
    1.18 @@ -234,7 +235,7 @@
    1.19  
    1.20  void C1_MacroAssembler::allocate_object(Register obj, Register t1, Register t2, int header_size, int object_size, Register klass, Label& slow_case) {
    1.21    assert(obj == rax, "obj must be in rax, for cmpxchg");
    1.22 -  assert(obj != t1 && obj != t2 && t1 != t2, "registers must be different"); // XXX really?
    1.23 +  assert_different_registers(obj, t1, t2); // XXX really?
    1.24    assert(header_size >= 0 && object_size >= header_size, "illegal sizes");
    1.25  
    1.26    try_allocate(obj, noreg, object_size * BytesPerWord, t1, t2, slow_case);

mercurial