aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoramurillo <none@none>2014-01-17 20:24:29 -0800
committeramurillo <none@none>2014-01-17 20:24:29 -0800
commit9c14f8579c794bb91e8ce10288aa0f1d6e700ad8 (patch)
tree3be7420ddf93b7d1dd276584ace0e789ad4c8aa3
parentf6c43aa2e81eb8a8aaee7996aebee938b2e756e4 (diff)
parentefdaed85b580c670dd336f38f0a2dccc1dcf988a (diff)
-rw-r--r--make/hotspot_version6
-rw-r--r--src/cpu/x86/vm/c1_LIRAssembler_x86.cpp4
-rw-r--r--src/cpu/x86/vm/c1_LIRGenerator_x86.cpp2
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);