# Copyright (c) 2021 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 panda.String .record panda.NullPointerException .function panda.String panda.NullPointerException.getMessage(panda.NullPointerException a0) .record R { i32 f1 } .function u1 main() { mov.null v0 newobj v1, R ldai 42 stobj v1, R.f1 try_begin: ldobj v0, R.f1 return try_end: jmp exit try_begin_handler: ldobj v1, R.f1 movi v2, 42 sub2 v2 try_end_handler: return exit: ldai 0 return .catchall try_begin, try_end, try_begin_handler .catchall try_begin_handler, try_end_handler, try_begin_handler }