# Copyright (c) 2021-2024 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. .record i32[][] .function void i32[][].ctor(i32[][] a0, i32 a1, i32 a2) .function u32 main() { movi v0, 0x0 movi v2, 0x4 movi v3, 0x2 initobj.short i32[][].ctor, v2, v3 sta.obj v1 mov v2, v0 movi v5, 0x0 jump_label_3: lenarr v1 jle v2, jump_label_0 mov v3, v0 jump_label_2: lda v2 ldarr.obj v1 sta.obj v4 lenarr v4 jle v3, jump_label_1 add v3, v2 starr v4, v3 inci v3, 0x1 jmp jump_label_2 jump_label_1: inci v2, 0x1 jmp jump_label_3 jump_label_0: mov v2, v0 movi v5, 0x0 jump_label_7: lenarr v1 jle v2, jump_label_4 mov v3, v0 jump_label_6: lda v2 ldarr.obj v1 sta.obj v4 lenarr v4 jle v3, jump_label_5 lda v3 ldarr v4 add2 v5 sta v5 inci v3, 0x1 jmp jump_label_6 jump_label_5: inci v2, 0x1 jmp jump_label_7 jump_label_4: lda v5 addi -16 return }