1d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# 2d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# Copyright (C) 2016 The Android Open Source Project 3d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# 4d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# Licensed under the Apache License, Version 2.0 (the "License"); 5d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# you may not use this file except in compliance with the License. 6d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# You may obtain a copy of the License at 7d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# 8d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# http://www.apache.org/licenses/LICENSE-2.0 9d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# 10d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# Unless required by applicable law or agreed to in writing, software 11d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# distributed under the License is distributed on an "AS IS" BASIS, 12d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# See the License for the specific language governing permissions and 14d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# limitations under the License. 15d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik 16d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik.class public LMerge; 17d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik.super Ljava/lang/Object; 18d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik 19d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# Method that selects between x = new Integer[] or new AnError[], 20d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik# Reference type propagation should correctly see error in component type. 21d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik.method public static select(Z)Ljava/lang/Object; 22d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik .registers 2 23d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik const/16 v0, 10 24d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik if-eqz v1, :Skip 25d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik new-array v0, v0, [LAnError; 26d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik goto :Done 27d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik:Skip 28d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik new-array v0, v0, [Ljava/lang/Integer; 29d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik:Done 30d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik return-object v0 31d1d7c40c8004303d1131ebb1956fd0ade54f8404Aart Bik.end method 32