diff options
-rw-r--r-- | .hgtags | 2 | ||||
-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 |
4 files changed, 11 insertions, 3 deletions
@@ -409,4 +409,6 @@ fca262db9c4309f99d2f5542ab0780e45c2f1578 jdk8-b120 d3521d8e562a782f66fc0dfdebeffba2c7e3471d jdk8-b122 591135a7d6f96c0ef281d078cee9a8d8c342d45c jdk8-b123 9b9816164447214f21b06ccf646893c281c76a42 hs25-b66 +df333ee12bba67e2e928f8ce1da37afd9bf95b48 jdk8-b124 +3585183c191aa6b4d0375ea659515335e1804417 hs25-b67 df333ee12bba67e2e928f8ce1da37afd9bf95b48 jdk8-b125 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); |