diff options
author | amurillo <none@none> | 2014-01-17 20:24:29 -0800 |
---|---|---|
committer | amurillo <none@none> | 2014-01-17 20:24:29 -0800 |
commit | 9c14f8579c794bb91e8ce10288aa0f1d6e700ad8 (patch) | |
tree | 3be7420ddf93b7d1dd276584ace0e789ad4c8aa3 | |
parent | f6c43aa2e81eb8a8aaee7996aebee938b2e756e4 (diff) | |
parent | efdaed85b580c670dd336f38f0a2dccc1dcf988a (diff) |
Mergehs25-b67
-rw-r--r-- | make/hotspot_version | 6 | ||||
-rw-r--r-- | src/cpu/x86/vm/c1_LIRAssembler_x86.cpp | 4 | ||||
-rw-r--r-- | src/cpu/x86/vm/c1_LIRGenerator_x86.cpp | 2 |
3 files changed, 9 insertions, 3 deletions
diff --git a/make/hotspot_version b/make/hotspot_version index 20df419b1..bca36a9ef 100644 --- a/make/hotspot_version +++ b/make/hotspot_version @@ -1,5 +1,5 @@ # -# Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -31,11 +31,11 @@ # # Don't put quotes (fail windows build). -HOTSPOT_VM_COPYRIGHT=Copyright 2013 +HOTSPOT_VM_COPYRIGHT=Copyright 2014 HS_MAJOR_VER=25 HS_MINOR_VER=0 -HS_BUILD_NUMBER=66 +HS_BUILD_NUMBER=67 JDK_MAJOR_VER=1 JDK_MINOR_VER=8 diff --git a/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp b/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp index af1319233..bf9c93473 100644 --- a/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp +++ b/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp @@ -38,6 +38,7 @@ #include "nativeInst_x86.hpp" #include "oops/objArrayKlass.hpp" #include "runtime/sharedRuntime.hpp" +#include "vmreg_x86.inline.hpp" // These masks are used to provide 128-bit aligned bitmasks to the XMM @@ -1006,6 +1007,9 @@ void LIR_Assembler::reg2mem(LIR_Opr src, LIR_Opr dest, BasicType type, LIR_Patch if (UseCompressedOops && !wide) { __ movptr(compressed_src, src->as_register()); __ encode_heap_oop(compressed_src); + if (patch_code != lir_patch_none) { + info->oop_map()->set_narrowoop(compressed_src->as_VMReg()); + } } #endif } diff --git a/src/cpu/x86/vm/c1_LIRGenerator_x86.cpp b/src/cpu/x86/vm/c1_LIRGenerator_x86.cpp index 4a30d597b..b4e8223e1 100644 --- a/src/cpu/x86/vm/c1_LIRGenerator_x86.cpp +++ b/src/cpu/x86/vm/c1_LIRGenerator_x86.cpp @@ -941,6 +941,8 @@ void LIRGenerator::do_update_CRC32(Intrinsic* x) { case vmIntrinsics::_updateCRC32: { LIRItem crc(x->argument_at(0), this); LIRItem val(x->argument_at(1), this); + // val is destroyed by update_crc32 + val.set_destroys_register(); crc.load_item(); val.load_item(); __ update_crc32(crc.result(), val.result(), result); |