1/* 2 * Copyright (c) 2025 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16import { BCar } from './B.js'; 17import { CStar } from './C.js'; 18import { a, func, b } from './A.js'; 19import { 20 export0, 21 export1, 22 export2, 23 export3, 24 export4, 25 export5, 26 export6, 27 export7, 28 export8, 29 export9, 30 export10, 31 export11, 32 export12, 33 export13, 34 export14, 35 export15, 36 export16, 37 export17, 38 export18, 39 export19, 40 export20, 41 export21, 42 export22, 43 export23, 44 export24, 45 export25, 46 export26, 47 export27, 48 export28, 49 export29, 50 export30, 51 export31, 52 export32, 53 export33, 54 export34, 55 export35, 56 export36, 57 export37, 58 export38, 59 export39, 60 export40, 61 export41, 62 export42, 63 export43, 64 export44, 65 export45, 66 export46, 67 export47, 68 export48, 69 export49, 70 export50, 71 export51, 72 export52, 73 export53, 74 export54, 75 export55, 76 export56, 77 export57, 78 export58, 79 export59, 80 export60, 81 export61, 82 export62, 83 export63, 84 export64, 85 export65, 86 export66, 87 export67, 88 export68, 89 export69, 90 export70, 91 export71, 92 export72, 93 export73, 94 export74, 95 export75, 96 export76, 97 export77, 98 export78, 99 export79, 100 export80, 101 export81, 102 export82, 103 export83, 104 export84, 105 export85, 106 export86, 107 export87, 108 export88, 109 export89, 110 export90, 111 export91, 112 export92, 113 export93, 114 export94, 115 export95, 116 export96, 117 export97, 118 export98, 119 export99, 120 export100, 121 export101, 122 export102, 123 export103, 124 export104, 125 export105, 126 export106, 127 export107, 128 export108, 129 export109, 130 export110, 131 export111, 132 export112, 133 export113, 134 export114, 135 export115, 136 export116, 137 export117, 138 export118, 139 export119, 140 export120, 141 export121, 142 export122, 143 export123, 144 export124, 145 export125, 146 export126, 147 export127, 148 export128, 149 export129, 150 export130, 151 export131, 152 export132, 153 export133, 154 export134, 155 export135, 156 export136, 157 export137, 158 export138, 159 export139, 160 export140, 161 export141, 162 export142, 163 export143, 164 export144, 165 export145, 166 export146, 167 export147, 168 export148, 169 export149, 170 export150, 171 export151, 172 export152, 173 export153, 174 export154, 175 export155, 176 export156, 177 export157, 178 export158, 179 export159, 180 export160, 181 export161, 182 export162, 183 export163, 184 export164, 185 export165, 186 export166, 187 export167, 188 export168, 189 export169, 190 export170, 191 export171, 192 export172, 193 export173, 194 export174, 195 export175, 196 export176, 197 export177, 198 export178, 199 export179, 200 export180, 201 export181, 202 export182, 203 export183, 204 export184, 205 export185, 206 export186, 207 export187, 208 export188, 209 export189, 210 export190, 211 export191, 212 export192, 213 export193, 214 export194, 215 export195, 216 export196, 217 export197, 218 export198, 219 export199, 220 export200, 221 export201, 222 export202, 223 export203, 224 export204, 225 export205, 226 export206, 227 export207, 228 export208, 229 export209, 230 export210, 231 export211, 232 export212, 233 export213, 234 export214, 235 export215, 236 export216, 237 export217, 238 export218, 239 export219, 240 export220, 241 export221, 242 export222, 243 export223, 244 export224, 245 export225, 246 export226, 247 export227, 248 export228, 249 export229, 250 export230, 251 export231, 252 export232, 253 export233, 254 export234, 255 export235, 256 export236, 257 export237, 258 export238, 259 export239, 260 export240, 261 export241, 262 export242, 263 export243, 264 export244, 265 export245, 266 export246, 267 export247, 268 export248, 269 export249, 270 export250, 271 export251, 272 export252, 273 export253, 274 export254, 275 export255, 276 export256, 277 export257, 278 export258, 279 export259, 280 export260, 281 export261, 282 export262, 283 export263, 284 export264, 285 export265, 286 export266, 287 export267, 288 export268, 289 export269, 290 export270, 291 export271, 292 export272, 293 export273, 294 export274, 295 export275, 296 export276, 297 export277, 298 export278, 299 export279, 300 export280, 301 export281, 302 export282, 303 export283, 304 export284, 305 export285, 306 export286, 307 export287, 308 export288, 309 export289, 310 export290, 311 export291, 312 export292, 313 export293, 314 export294, 315 export295, 316 export296, 317 export297, 318 export298, 319 export299 } from './D.js'; 320let val = 0; 321function T() { 322 var myCar = { name: "myCar", type: "test", price: "100" } 323 var carInfo = BCar.carInfo.apply(myCar); 324 var star = { name: "star", type: "star_Test", color: "Y" } 325 var starColor = CStar.starColor.apply(star); 326 if (carInfo != "myCar:test:100" ) { 327 print("Fail"); 328 } else if (starColor != "star:star_Test:Y") { 329 print("Fail"); 330 } 331 332 class Test { 333 constructor(a) { 334 this.a = a 335 } 336 } 337 338 var test = new Test(a) 339 func(); 340 val = test.a + b; 341 val = val + export299; 342} 343 344for (let i = 0; i < 10; i++) { 345 T(); 346} 347 348ArkTools.jitCompileAsync(T); 349let res = ArkTools.waitJitCompileFinish(T); 350print(res) 351T(); 352print(val) 353