mirror of
https://github.com/pezkuwichain/revive.git
synced 2026-06-09 20:01:05 +00:00
implement byte stores and assert heap values to be either i256 or i8
Signed-off-by: xermicus <cyrill@parity.io>
This commit is contained in:
@@ -789,7 +789,13 @@ where
|
||||
.expect("should be IntValue")
|
||||
.const_truncate(self.xlen_type()),
|
||||
)?;
|
||||
let value = self.build_byte_swap(value.as_basic_value_enum());
|
||||
|
||||
let value = value.as_basic_value_enum();
|
||||
let value = match value.get_type().into_int_type().get_bit_width() as usize {
|
||||
revive_common::BIT_LENGTH_FIELD => self.build_byte_swap(value),
|
||||
revive_common::BIT_LENGTH_BYTE => value,
|
||||
_ => unreachable!("Only word and byte sized values can be stored on EVM heap"),
|
||||
};
|
||||
|
||||
self.builder
|
||||
.build_store(heap_pointer.value, value)?
|
||||
|
||||
Reference in New Issue
Block a user