1# Copyright (c) 2021-2022 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# 6# http://www.apache.org/licenses/LICENSE-2.0 7# 8# Unless required by applicable law or agreed to in writing, software 9# distributed under the License is distributed on an "AS IS" BASIS, 10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11# See the License for the specific language governing permissions and 12# limitations under the License. 13 14# Assert that operations ldstatic, ldstatic.64 work fine 15 16.record Asm { 17 i32 asm1 <static> 18 i64 asm2 <static> 19 f64 asm3 <static> 20} 21 22.function i32 main() { 23 ldai 0xFFFFFFFF 24 ststatic Asm.asm1 25 sta v1 26 ldstatic Asm.asm1 27 jne v1, exit_failure 28 29 ldai.64 0xFFFFFFFFFFFFFFFF 30 movi.64 v0, 32 31 shl2.64 v0 32 ststatic.64 Asm.asm2 33 sta.64 v2 34 ldstatic.64 Asm.asm2 35 cmp.64 v2 36 jnez exit_failure 37 38 fldai.64 1.0 39 ststatic.64 Asm.asm3 40 sta.64 v3 41 ldstatic.64 Asm.asm3 42 fcmpg.64 v3 43 jnez exit_failure 44 45 ldai 0 46 return 47 48exit_failure: 49 ldai 1 50 return 51} 52