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# check that isinstance doesn't trigger cctor 15 16.record R1 {} 17 18.record R2 { 19 i32 s_f <static> 20} 21 22.function void R1.cctor() <cctor> { 23 ldai 10 24 ststatic R2.s_f 25 return.void 26} 27 28.function void R2.ctor(R2 a0) <ctor> { 29 return.void 30} 31 32.function i32 main() { 33 initobj.short R2.ctor 34 isinstance R1 35 ldstatic R2.s_f 36 movi v0, 0 37 jne v0, exit_failure 38 ldai 0 39 return 40exit_failure: 41 ldai 1 42 return 43} 44