diff --git a/sway-lib-std/src/inputs.sw b/sway-lib-std/src/inputs.sw index f017d6042b4..537a03c6118 100644 --- a/sway-lib-std/src/inputs.sw +++ b/sway-lib-std/src/inputs.sw @@ -18,7 +18,6 @@ use ::tx::{ tx_type, }; use core::ops::Eq; -use core::primitive_conversions::*; const GTF_INPUT_TYPE = 0x101; diff --git a/sway-lib-std/src/storage/storage_api.sw b/sway-lib-std/src/storage/storage_api.sw index a61baba1ee9..3b5e1b5ea92 100644 --- a/sway-lib-std/src/storage/storage_api.sw +++ b/sway-lib-std/src/storage/storage_api.sw @@ -175,12 +175,9 @@ fn slot_calculator(slot: b256, offset: u64) -> (b256, u64, u64) { false => 1, }; - // TODO: Update when u256 <-> b256 conversions exist. // Determine which starting slot `T` will be stored based on the offset. - let mut u256_slot = asm(r1: slot) {r1: u256}; - let u256_increment = asm(r1: (0, 0, 0, last_slot - number_of_slots)) { r1: u256 }; - u256_slot += u256_increment; - let offset_slot = asm(r1: u256_slot) { r1: b256 }; + let mut offset_slot = slot.as_u256(); + offset_slot += last_slot.as_u256() - number_of_slots.as_u256(); - (offset_slot, number_of_slots, place_in_slot) + (offset_slot.as_b256(), number_of_slots, place_in_slot) } diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/require_contract_deployment/call_basic_storage/src/main.sw b/test/src/e2e_vm_tests/test_programs/should_pass/require_contract_deployment/call_basic_storage/src/main.sw index c77533efff1..2d577f2ccfd 100644 --- a/test/src/e2e_vm_tests/test_programs/should_pass/require_contract_deployment/call_basic_storage/src/main.sw +++ b/test/src/e2e_vm_tests/test_programs/should_pass/require_contract_deployment/call_basic_storage/src/main.sw @@ -2,7 +2,7 @@ script; use basic_storage_abi::{BasicStorage, Quad}; fn main() -> u64 { - let addr = abi(BasicStorage, 0xf01862cb7b641c642815d71795e9ed7d7daf10158ef3a20e8e32045de97bee0a); + let addr = abi(BasicStorage, 0xc7b239ea8eee87d901dbce256b0652f098afb6aa660c343fec6f986d6ea258d3); let key = 0x0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff; let value = 4242; diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/require_contract_deployment/call_increment_contract/src/main.sw b/test/src/e2e_vm_tests/test_programs/should_pass/require_contract_deployment/call_increment_contract/src/main.sw index bc9682a8da3..50f4730f3be 100644 --- a/test/src/e2e_vm_tests/test_programs/should_pass/require_contract_deployment/call_increment_contract/src/main.sw +++ b/test/src/e2e_vm_tests/test_programs/should_pass/require_contract_deployment/call_increment_contract/src/main.sw @@ -3,7 +3,7 @@ script; use increment_abi::Incrementor; fn main() -> bool { - let the_abi = abi(Incrementor, 0xdeb965022530a5e114faa0a5214c7f7a19feba73c5218938615186c60feb9813); + let the_abi = abi(Incrementor, 0x5dac7c9e1f06e227f90e5f8118c67d4e2e9436ffc1d1a724da092b0bcad3cc82); the_abi.increment(5); the_abi.increment(5); let result = the_abi.get(); diff --git a/test/src/e2e_vm_tests/test_programs/should_pass/require_contract_deployment/storage_access_caller/src/main.sw b/test/src/e2e_vm_tests/test_programs/should_pass/require_contract_deployment/storage_access_caller/src/main.sw index dd9767bcb9a..0144e2f4b9d 100644 --- a/test/src/e2e_vm_tests/test_programs/should_pass/require_contract_deployment/storage_access_caller/src/main.sw +++ b/test/src/e2e_vm_tests/test_programs/should_pass/require_contract_deployment/storage_access_caller/src/main.sw @@ -4,7 +4,7 @@ use storage_access_abi::*; use std::hash::*; fn main() -> bool { - let contract_id = 0xcbaac3d1670ec094eef042052fb49479f639d0120709ac58dad46a6b80cb6550; + let contract_id = 0x07df46e19e6992fca171dbca03ac1964cbfc027ee6d20d17d301efa2bb445b16; let caller = abi(StorageAccess, contract_id); // Test initializers