From 49f30642f0b808e29e06576278482bf4adfb5f77 Mon Sep 17 00:00:00 2001 From: Carl Shapiro Date: Mon, 4 Apr 2011 10:20:43 -0700 Subject: Do not emit the write barrier when storing to primitive volatile fields. Change-Id: I79cdac62baa40582bba160a04cbd4c8b2c9151a5 --- vm/compiler/codegen/arm/CodegenDriver.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'vm/compiler/codegen/arm/CodegenDriver.c') diff --git a/vm/compiler/codegen/arm/CodegenDriver.c b/vm/compiler/codegen/arm/CodegenDriver.c index f020e9c63..465eade83 100644 --- a/vm/compiler/codegen/arm/CodegenDriver.c +++ b/vm/compiler/codegen/arm/CodegenDriver.c @@ -2575,6 +2575,10 @@ static bool handleFmt22c_Fmt52c(CompilationUnit *cUnit, MIR *mir) case OP_IPUT_WIDE_JUMBO: genIPutWide(cUnit, mir, fieldOffset); break; + case OP_IPUT_VOLATILE: + case OP_IPUT_VOLATILE_JUMBO: + isVolatile = true; + // NOTE: intentional fallthrough case OP_IPUT: case OP_IPUT_JUMBO: case OP_IPUT_BOOLEAN: @@ -2587,8 +2591,6 @@ static bool handleFmt22c_Fmt52c(CompilationUnit *cUnit, MIR *mir) case OP_IPUT_SHORT_JUMBO: genIPut(cUnit, mir, kWord, fieldOffset, false, isVolatile); break; - case OP_IPUT_VOLATILE: - case OP_IPUT_VOLATILE_JUMBO: case OP_IPUT_OBJECT_VOLATILE: case OP_IPUT_OBJECT_VOLATILE_JUMBO: isVolatile = true; -- cgit v1.2.3