Skip to content

Commit e42932a

Browse files
committed
remove inject gas & decrease gas to u64
1 parent cb2b149 commit e42932a

File tree

2 files changed

+8
-13
lines changed

2 files changed

+8
-13
lines changed

packages/vm/src/lib.rs

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -79,12 +79,6 @@ fn inject_stack_height(module: Module) -> Result<Module, Error> {
7979
.map_err(|_| Error::StackHeightInjectionError)
8080
}
8181

82-
// fn inject_gas(module: Module) -> Result<Module, Error> {
83-
// // Simple gas rule. Every opcode and memory growth costs 1 gas.
84-
// let gas_rules = rules::Set::new(1, Default::default()).with_grow_cost(1);
85-
// pwasm_utils::inject_gas_counter(module, &gas_rules).map_err(|_| Error::GasCounterInjectionError)
86-
// }
87-
8882
fn check_wasm_exports(module: &Module) -> Result<(), Error> {
8983
let available_exports: Vec<&str> = module.export_section().map_or(vec![], |export_section| {
9084
export_section.entries().iter().map(|entry| entry.field()).collect()
@@ -171,7 +165,8 @@ where
171165

172166
let import_object = imports! {
173167
"env" => {
174-
"gas" => Function::new_native_with_env(&store, owasm_env.clone(), |_env: &Environment<E>, _gas: u32| {
168+
"gas" => Function::new_native_with_env(&store, owasm_env.clone(), |env: &Environment<E>, _gas: u32| {
169+
env.decrease_gas_left(1)
175170
}),
176171
"get_span_size" => Function::new_native_with_env(&store, owasm_env.clone(), |env: &Environment<E>| {
177172
env.with_vm(|vm| {
@@ -182,7 +177,7 @@ where
182177
env.with_mut_vm(|vm| -> Result<i64, Error>{
183178
let span_size = vm.env.get_span_size();
184179
// consume gas equal size of span when read calldata
185-
env.decrease_gas_left(span_size as u32)?;
180+
env.decrease_gas_left(span_size as u64)?;
186181

187182
let memory = env.memory()?;
188183
require_mem_range(memory.size().bytes().0, (ptr + span_size) as usize)?;
@@ -205,7 +200,7 @@ where
205200
}
206201

207202
// consume gas equal size of span when save data to memory
208-
env.decrease_gas_left(span_size as u32)?;
203+
env.decrease_gas_left(span_size as u64)?;
209204

210205
let memory = env.memory()?;
211206
require_mem_range(memory.size().bytes().0, (ptr + span_size) as usize)?;
@@ -248,7 +243,7 @@ where
248243
}
249244

250245
// consume gas equal size of span when write calldata for raw request
251-
env.decrease_gas_left(span_size as u32)?;
246+
env.decrease_gas_left(span_size as u64)?;
252247

253248
let memory = env.memory()?;
254249
require_mem_range(memory.size().bytes().0, (ptr + span_size) as usize)?;
@@ -266,7 +261,7 @@ where
266261
env.with_mut_vm(|vm| -> Result<i64, Error>{
267262
let span_size = vm.env.get_span_size();
268263
// consume gas equal size of span when read data from report
269-
env.decrease_gas_left(span_size as u32)?;
264+
env.decrease_gas_left(span_size as u64)?;
270265

271266
let memory = env.memory()?;
272267
require_mem_range(memory.size().bytes().0, (ptr + span_size) as usize)?;

packages/vm/src/vm.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,9 +149,9 @@ where
149149
.expect("Wasmer instance is not set. This is a bug in the lifecycle.")
150150
}
151151

152-
pub fn decrease_gas_left(&self, gas_used: u32) -> Result<(), Error> {
152+
pub fn decrease_gas_left(&self, gas_used: u64) -> Result<(), Error> {
153153
let gas_left = self.get_gas_left();
154-
if gas_used as u64 > gas_left {
154+
if gas_used > gas_left {
155155
Err(Error::OutOfGasError)
156156
} else {
157157
self.set_gas_left(gas_left.saturating_sub(gas_used.into()));

0 commit comments

Comments
 (0)