# Copyright (c) 2021-2022 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # # The following comment until the empty line must be a valid YAML document # containing exact copies of ISA specification assertions relevant to this test. #--- #- title: Get field from object # description: 'Get field value from an object by field id and put it into accumulator. # #' # instructions: # - sig: ldobj.64 v:in:ref, field_id # acc: out:b64 # format: # - op_v_8_id_32 # verification: # - field_id_non_static ## runner-option: verifier-failure ## runner-option: bugid: 1833 ## runner-option: tags: verifier # Test description: # Check that verifier reports an error when the field doesn't resolve to a non-static valid object field .record W { i64 static_field } .function void W.ctor(W a0) { return.void } .record random_record_name { i64 random_field_name } .function void random_function_name() { return.void } .function i32 main() { initobj.short W.ctor sta.obj v0 ldobj.64 v0, random_record_name.random_field_name # ldai 0 return }