Commit 007e14ce authored by titzer's avatar titzer Committed by Commit bot

[wasm] Rename local_int32_count to local_i32_count and similar textual replacements.

R=ahaas@chromium.org,jfb@chromium.org
BUG=

Review URL: https://codereview.chromium.org/1661713003

Cr-Commit-Position: refs/heads/master@{#33702}
parent 158cd5cb
......@@ -2069,10 +2069,10 @@ Handle<Code> CompileWasmFunction(wasm::ErrorThrower& thrower, Isolate* isolate,
wasm::FunctionEnv env;
env.module = module_env;
env.sig = function.sig;
env.local_int32_count = function.local_int32_count;
env.local_int64_count = function.local_int64_count;
env.local_float32_count = function.local_float32_count;
env.local_float64_count = function.local_float64_count;
env.local_i32_count = function.local_i32_count;
env.local_i64_count = function.local_i64_count;
env.local_f32_count = function.local_f32_count;
env.local_f64_count = function.local_f64_count;
env.SumLocals();
// Create a TF graph during decoding.
......
......@@ -301,30 +301,30 @@ class LR_WasmDecoder : public WasmDecoder {
ssa_env->locals[pos++] = builder_->Param(i, sig->GetParam(i));
}
// Initialize int32 locals.
if (function_env_->local_int32_count > 0) {
if (function_env_->local_i32_count > 0) {
TFNode* zero = builder_->Int32Constant(0);
for (uint32_t i = 0; i < function_env_->local_int32_count; i++) {
for (uint32_t i = 0; i < function_env_->local_i32_count; i++) {
ssa_env->locals[pos++] = zero;
}
}
// Initialize int64 locals.
if (function_env_->local_int64_count > 0) {
if (function_env_->local_i64_count > 0) {
TFNode* zero = builder_->Int64Constant(0);
for (uint32_t i = 0; i < function_env_->local_int64_count; i++) {
for (uint32_t i = 0; i < function_env_->local_i64_count; i++) {
ssa_env->locals[pos++] = zero;
}
}
// Initialize float32 locals.
if (function_env_->local_float32_count > 0) {
if (function_env_->local_f32_count > 0) {
TFNode* zero = builder_->Float32Constant(0);
for (uint32_t i = 0; i < function_env_->local_float32_count; i++) {
for (uint32_t i = 0; i < function_env_->local_f32_count; i++) {
ssa_env->locals[pos++] = zero;
}
}
// Initialize float64 locals.
if (function_env_->local_float64_count > 0) {
if (function_env_->local_f64_count > 0) {
TFNode* zero = builder_->Float64Constant(0);
for (uint32_t i = 0; i < function_env_->local_float64_count; i++) {
for (uint32_t i = 0; i < function_env_->local_f64_count; i++) {
ssa_env->locals[pos++] = zero;
}
}
......
......@@ -28,10 +28,10 @@ struct ModuleEnv; // forward declaration of module interface.
struct FunctionEnv {
ModuleEnv* module; // module environment
FunctionSig* sig; // signature of this function
uint32_t local_int32_count; // number of int32 locals
uint32_t local_int64_count; // number of int64 locals
uint32_t local_float32_count; // number of float32 locals
uint32_t local_float64_count; // number of float64 locals
uint32_t local_i32_count; // number of int32 locals
uint32_t local_i64_count; // number of int64 locals
uint32_t local_f32_count; // number of float32 locals
uint32_t local_f64_count; // number of float64 locals
uint32_t total_locals; // sum of parameters and all locals
bool IsValidLocal(uint32_t index) { return index < total_locals; }
......@@ -41,43 +41,43 @@ struct FunctionEnv {
return sig->GetParam(index);
}
index -= static_cast<uint32_t>(sig->parameter_count());
if (index < local_int32_count) return kAstI32;
index -= local_int32_count;
if (index < local_int64_count) return kAstI64;
index -= local_int64_count;
if (index < local_float32_count) return kAstF32;
index -= local_float32_count;
if (index < local_float64_count) return kAstF64;
if (index < local_i32_count) return kAstI32;
index -= local_i32_count;
if (index < local_i64_count) return kAstI64;
index -= local_i64_count;
if (index < local_f32_count) return kAstF32;
index -= local_f32_count;
if (index < local_f64_count) return kAstF64;
return kAstStmt;
}
void AddLocals(LocalType type, uint32_t count) {
switch (type) {
case kAstI32:
local_int32_count += count;
local_i32_count += count;
break;
case kAstI64:
local_int64_count += count;
local_i64_count += count;
break;
case kAstF32:
local_float32_count += count;
local_f32_count += count;
break;
case kAstF64:
local_float64_count += count;
local_f64_count += count;
break;
default:
UNREACHABLE();
}
total_locals += count;
DCHECK(total_locals ==
(sig->parameter_count() + local_int32_count + local_int64_count +
local_float32_count + local_float64_count));
(sig->parameter_count() + local_i32_count + local_i64_count +
local_f32_count + local_f64_count));
}
void SumLocals() {
total_locals = static_cast<uint32_t>(sig->parameter_count()) +
local_int32_count + local_int64_count + local_float32_count +
local_float64_count;
local_i32_count + local_i64_count + local_f32_count +
local_f64_count;
}
};
......
......@@ -196,44 +196,44 @@ WasmFunctionEncoder* WasmFunctionBuilder::Build(Zone* zone,
void WasmFunctionBuilder::IndexVars(WasmFunctionEncoder* e,
uint16_t* var_index) const {
uint16_t param = 0;
uint16_t int32 = 0;
uint16_t int64 = 0;
uint16_t float32 = 0;
uint16_t float64 = 0;
uint16_t i32 = 0;
uint16_t i64 = 0;
uint16_t f32 = 0;
uint16_t f64 = 0;
for (size_t i = 0; i < locals_.size(); i++) {
if (locals_.at(i).param_) {
param++;
} else if (locals_.at(i).type_ == kAstI32) {
int32++;
i32++;
} else if (locals_.at(i).type_ == kAstI64) {
int64++;
i64++;
} else if (locals_.at(i).type_ == kAstF32) {
float32++;
f32++;
} else if (locals_.at(i).type_ == kAstF64) {
float64++;
f64++;
}
}
e->local_int32_count_ = int32;
e->local_int64_count_ = int64;
e->local_float32_count_ = float32;
e->local_float64_count_ = float64;
float64 = param + int32 + int64 + float32;
float32 = param + int32 + int64;
int64 = param + int32;
int32 = param;
e->local_i32_count_ = i32;
e->local_i64_count_ = i64;
e->local_f32_count_ = f32;
e->local_f64_count_ = f64;
f64 = param + i32 + i64 + f32;
f32 = param + i32 + i64;
i64 = param + i32;
i32 = param;
param = 0;
for (size_t i = 0; i < locals_.size(); i++) {
if (locals_.at(i).param_) {
e->params_.push_back(locals_.at(i).type_);
var_index[i] = param++;
} else if (locals_.at(i).type_ == kAstI32) {
var_index[i] = int32++;
var_index[i] = i32++;
} else if (locals_.at(i).type_ == kAstI64) {
var_index[i] = int64++;
var_index[i] = i64++;
} else if (locals_.at(i).type_ == kAstF32) {
var_index[i] = float32++;
var_index[i] = f32++;
} else if (locals_.at(i).type_ == kAstF64) {
var_index[i] = float64++;
var_index[i] = f64++;
}
}
}
......@@ -285,10 +285,10 @@ void WasmFunctionEncoder::Serialize(byte* buffer, byte** header,
}
if (HasLocals()) {
EmitUint16(header, local_int32_count_);
EmitUint16(header, local_int64_count_);
EmitUint16(header, local_float32_count_);
EmitUint16(header, local_float64_count_);
EmitUint16(header, local_i32_count_);
EmitUint16(header, local_i64_count_);
EmitUint16(header, local_f32_count_);
EmitUint16(header, local_f64_count_);
}
if (!external_) {
......
......@@ -33,18 +33,18 @@ class WasmFunctionEncoder : public ZoneObject {
friend class WasmFunctionBuilder;
uint16_t signature_index_;
ZoneVector<LocalType> params_;
uint16_t local_int32_count_;
uint16_t local_int64_count_;
uint16_t local_float32_count_;
uint16_t local_float64_count_;
uint16_t local_i32_count_;
uint16_t local_i64_count_;
uint16_t local_f32_count_;
uint16_t local_f64_count_;
bool exported_;
bool external_;
ZoneVector<uint8_t> body_;
ZoneVector<char> name_;
bool HasLocals() const {
return (local_int32_count_ + local_int64_count_ + local_float32_count_ +
local_float64_count_) > 0;
return (local_i32_count_ + local_i64_count_ + local_f32_count_ +
local_f64_count_) > 0;
}
bool HasName() const { return exported_ && name_.size() > 0; }
......
......@@ -252,10 +252,10 @@ class ModuleDecoder : public Decoder {
function->name_offset = 0; // ---- name
function->code_start_offset = off(pc_ + 8); // ---- code start
function->code_end_offset = off(limit_); // ---- code end
function->local_int32_count = consume_u16(); // read u16
function->local_int64_count = consume_u16(); // read u16
function->local_float32_count = consume_u16(); // read u16
function->local_float64_count = consume_u16(); // read u16
function->local_i32_count = consume_u16(); // read u16
function->local_i64_count = consume_u16(); // read u16
function->local_f32_count = consume_u16(); // read u16
function->local_f64_count = consume_u16(); // read u16
function->exported = false; // ---- exported
function->external = false; // ---- external
......@@ -324,10 +324,10 @@ class ModuleDecoder : public Decoder {
}
if (decl_bits & kDeclFunctionLocals) {
function->local_int32_count = consume_u16("int32 count");
function->local_int64_count = consume_u16("int64 count");
function->local_float32_count = consume_u16("float32 count");
function->local_float64_count = consume_u16("float64 count");
function->local_i32_count = consume_u16("i32 count");
function->local_i64_count = consume_u16("i64 count");
function->local_f32_count = consume_u16("f32 count");
function->local_f64_count = consume_u16("f64 count");
}
uint16_t size = consume_u16("body size");
......@@ -388,10 +388,10 @@ class ModuleDecoder : public Decoder {
FunctionEnv fenv;
fenv.module = menv;
fenv.sig = function->sig;
fenv.local_int32_count = function->local_int32_count;
fenv.local_int64_count = function->local_int64_count;
fenv.local_float32_count = function->local_float32_count;
fenv.local_float64_count = function->local_float64_count;
fenv.local_i32_count = function->local_i32_count;
fenv.local_i64_count = function->local_i64_count;
fenv.local_f32_count = function->local_f32_count;
fenv.local_f64_count = function->local_f64_count;
fenv.SumLocals();
TreeResult result =
......
......@@ -34,14 +34,10 @@ std::ostream& operator<<(std::ostream& os, const WasmFunction& function) {
os << "WASM function with signature " << *function.sig;
os << " locals: ";
if (function.local_int32_count)
os << function.local_int32_count << " int32s ";
if (function.local_int64_count)
os << function.local_int64_count << " int64s ";
if (function.local_float32_count)
os << function.local_float32_count << " float32s ";
if (function.local_float64_count)
os << function.local_float64_count << " float64s ";
if (function.local_i32_count) os << function.local_i32_count << " i32s ";
if (function.local_i64_count) os << function.local_i64_count << " i64s ";
if (function.local_f32_count) os << function.local_f32_count << " f32s ";
if (function.local_f64_count) os << function.local_f64_count << " f64s ";
os << " code bytes: "
<< (function.code_end_offset - function.code_start_offset);
......
......@@ -55,10 +55,10 @@ struct WasmFunction {
uint32_t name_offset; // offset in the module bytes of the name, if any.
uint32_t code_start_offset; // offset in the module bytes of code start.
uint32_t code_end_offset; // offset in the module bytes of code end.
uint16_t local_int32_count; // number of int32 local variables.
uint16_t local_int64_count; // number of int64 local variables.
uint16_t local_float32_count; // number of float32 local variables.
uint16_t local_float64_count; // number of float64 local variables.
uint16_t local_i32_count; // number of i32 local variables.
uint16_t local_i64_count; // number of i64 local variables.
uint16_t local_f32_count; // number of f32 local variables.
uint16_t local_f64_count; // number of f64 local variables.
bool exported; // true if this function is exported.
bool external; // true if this function is externally supplied.
};
......
......@@ -50,10 +50,10 @@ using namespace v8::internal::wasm;
inline void init_env(FunctionEnv* env, FunctionSig* sig) {
env->module = nullptr;
env->sig = sig;
env->local_int32_count = 0;
env->local_int64_count = 0;
env->local_float32_count = 0;
env->local_float64_count = 0;
env->local_i32_count = 0;
env->local_i64_count = 0;
env->local_f32_count = 0;
env->local_f64_count = 0;
env->SumLocals();
}
......
......@@ -87,10 +87,10 @@ class WasmDecoderTest : public TestWithZone {
static void init_env(FunctionEnv* env, FunctionSig* sig) {
env->module = nullptr;
env->sig = sig;
env->local_int32_count = 0;
env->local_int64_count = 0;
env->local_float32_count = 0;
env->local_float64_count = 0;
env->local_i32_count = 0;
env->local_i64_count = 0;
env->local_f32_count = 0;
env->local_f64_count = 0;
env->SumLocals();
}
......@@ -179,9 +179,9 @@ static FunctionEnv CreateInt32FunctionEnv(FunctionSig* sig, int count) {
FunctionEnv env;
env.module = nullptr;
env.sig = sig;
env.local_int32_count = count;
env.local_float64_count = 0;
env.local_float32_count = 0;
env.local_i32_count = count;
env.local_f64_count = 0;
env.local_f32_count = 0;
env.total_locals = static_cast<unsigned>(count + sig->parameter_count());
return env;
}
......@@ -333,7 +333,7 @@ TEST_F(WasmDecoderTest, GetLocal_off_end) {
TEST_F(WasmDecoderTest, GetLocal_varint) {
env_i_i.local_int32_count = 1000000000;
env_i_i.local_i32_count = 1000000000;
env_i_i.total_locals += 1000000000;
{
......
......@@ -56,28 +56,28 @@ TEST_F(EncoderTest, Function_Builder_Variable_Indexing) {
WasmModuleBuilder* builder = new (&zone) WasmModuleBuilder(&zone);
uint16_t f_index = builder->AddFunction();
WasmFunctionBuilder* function = builder->FunctionAt(f_index);
uint16_t local_float32 = function->AddLocal(kAstF32);
uint16_t local_f32 = function->AddLocal(kAstF32);
uint16_t param_float32 = function->AddParam(kAstF32);
uint16_t local_int32 = function->AddLocal(kAstI32);
uint16_t local_float64 = function->AddLocal(kAstF64);
uint16_t local_int64 = function->AddLocal(kAstI64);
uint16_t local_i32 = function->AddLocal(kAstI32);
uint16_t local_f64 = function->AddLocal(kAstF64);
uint16_t local_i64 = function->AddLocal(kAstI64);
uint16_t param_int32 = function->AddParam(kAstI32);
uint16_t local_int32_2 = function->AddLocal(kAstI32);
uint16_t local_i32_2 = function->AddLocal(kAstI32);
byte code[] = {kExprGetLocal, static_cast<uint8_t>(param_float32)};
uint32_t local_indices[] = {1};
function->EmitCode(code, sizeof(code), local_indices, 1);
code[1] = static_cast<uint8_t>(param_int32);
function->EmitCode(code, sizeof(code), local_indices, 1);
code[1] = static_cast<uint8_t>(local_int32);
code[1] = static_cast<uint8_t>(local_i32);
function->EmitCode(code, sizeof(code), local_indices, 1);
code[1] = static_cast<uint8_t>(local_int32_2);
code[1] = static_cast<uint8_t>(local_i32_2);
function->EmitCode(code, sizeof(code), local_indices, 1);
code[1] = static_cast<uint8_t>(local_int64);
code[1] = static_cast<uint8_t>(local_i64);
function->EmitCode(code, sizeof(code), local_indices, 1);
code[1] = static_cast<uint8_t>(local_float32);
code[1] = static_cast<uint8_t>(local_f32);
function->EmitCode(code, sizeof(code), local_indices, 1);
code[1] = static_cast<uint8_t>(local_float64);
code[1] = static_cast<uint8_t>(local_f64);
function->EmitCode(code, sizeof(code), local_indices, 1);
WasmFunctionEncoder* f = function->Build(&zone, builder);
......
......@@ -33,10 +33,10 @@ class WasmLoopAssignmentAnalyzerTest : public TestWithZone {
static void init_env(FunctionEnv* env, FunctionSig* sig) {
env->module = nullptr;
env->sig = sig;
env->local_int32_count = 0;
env->local_int64_count = 0;
env->local_float32_count = 0;
env->local_float64_count = 0;
env->local_i32_count = 0;
env->local_i64_count = 0;
env->local_f32_count = 0;
env->local_f64_count = 0;
env->SumLocals();
}
......
......@@ -342,10 +342,10 @@ TEST_F(WasmModuleVerifyTest, OneEmptyVoidVoidFunction) {
EXPECT_EQ(kCodeStartOffset, function->code_start_offset);
EXPECT_EQ(kCodeEndOffset, function->code_end_offset);
EXPECT_EQ(523, function->local_int32_count);
EXPECT_EQ(1037, function->local_int64_count);
EXPECT_EQ(1551, function->local_float32_count);
EXPECT_EQ(2065, function->local_float64_count);
EXPECT_EQ(523, function->local_i32_count);
EXPECT_EQ(1037, function->local_i64_count);
EXPECT_EQ(1551, function->local_f32_count);
EXPECT_EQ(2065, function->local_f64_count);
EXPECT_TRUE(function->exported);
EXPECT_FALSE(function->external);
......@@ -382,10 +382,10 @@ TEST_F(WasmModuleVerifyTest, OneFunctionImported) {
EXPECT_EQ(0, function->code_start_offset);
EXPECT_EQ(0, function->code_end_offset);
EXPECT_EQ(0, function->local_int32_count);
EXPECT_EQ(0, function->local_int64_count);
EXPECT_EQ(0, function->local_float32_count);
EXPECT_EQ(0, function->local_float64_count);
EXPECT_EQ(0, function->local_i32_count);
EXPECT_EQ(0, function->local_i64_count);
EXPECT_EQ(0, function->local_f32_count);
EXPECT_EQ(0, function->local_f64_count);
EXPECT_FALSE(function->exported);
EXPECT_TRUE(function->external);
......@@ -419,10 +419,10 @@ TEST_F(WasmModuleVerifyTest, OneFunctionWithNopBody) {
EXPECT_EQ(kCodeStartOffset, function->code_start_offset);
EXPECT_EQ(kCodeEndOffset, function->code_end_offset);
EXPECT_EQ(0, function->local_int32_count);
EXPECT_EQ(0, function->local_int64_count);
EXPECT_EQ(0, function->local_float32_count);
EXPECT_EQ(0, function->local_float64_count);
EXPECT_EQ(0, function->local_i32_count);
EXPECT_EQ(0, function->local_i64_count);
EXPECT_EQ(0, function->local_f32_count);
EXPECT_EQ(0, function->local_f64_count);
EXPECT_FALSE(function->exported);
EXPECT_FALSE(function->external);
......@@ -459,10 +459,10 @@ TEST_F(WasmModuleVerifyTest, OneFunctionWithNopBody_WithLocals) {
EXPECT_EQ(kCodeStartOffset, function->code_start_offset);
EXPECT_EQ(kCodeEndOffset, function->code_end_offset);
EXPECT_EQ(513, function->local_int32_count);
EXPECT_EQ(1027, function->local_int64_count);
EXPECT_EQ(1541, function->local_float32_count);
EXPECT_EQ(2055, function->local_float64_count);
EXPECT_EQ(513, function->local_i32_count);
EXPECT_EQ(1027, function->local_i64_count);
EXPECT_EQ(1541, function->local_f32_count);
EXPECT_EQ(2055, function->local_f64_count);
EXPECT_FALSE(function->exported);
EXPECT_FALSE(function->external);
......@@ -924,10 +924,10 @@ TEST_F(WasmFunctionVerifyTest, Ok_v_v_empty) {
EXPECT_EQ(0, function->name_offset);
EXPECT_EQ(arraysize(data) - 1, function->code_start_offset);
EXPECT_EQ(arraysize(data), function->code_end_offset);
EXPECT_EQ(3, function->local_int32_count);
EXPECT_EQ(4, function->local_int64_count);
EXPECT_EQ(5, function->local_float32_count);
EXPECT_EQ(6, function->local_float64_count);
EXPECT_EQ(3, function->local_i32_count);
EXPECT_EQ(4, function->local_i64_count);
EXPECT_EQ(5, function->local_f32_count);
EXPECT_EQ(6, function->local_f64_count);
EXPECT_FALSE(function->external);
EXPECT_FALSE(function->exported);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment