| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2013 The Native Client Authors. All rights reserved. | 2 * Copyright 2013 The Native Client Authors. All rights reserved. |
| 3 * Use of this source code is governed by a BSD-style license that can | 3 * Use of this source code is governed by a BSD-style license that can |
| 4 * be found in the LICENSE file. | 4 * be found in the LICENSE file. |
| 5 */ | 5 */ |
| 6 | 6 |
| 7 // DO NOT EDIT: GENERATED CODE | 7 // DO NOT EDIT: GENERATED CODE |
| 8 | 8 |
| 9 #include "native_client/src/trusted/validator_arm/gen/arm32_decode_baselines.h" | 9 #include "native_client/src/trusted/validator_arm/gen/arm32_decode_baselines.h" |
| 10 #include "native_client/src/trusted/validator_arm/inst_classes.h" | 10 #include "native_client/src/trusted/validator_arm/inst_classes.h" |
| (...skipping 7282 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7293 // VBIC_immediate_1111001i1d000mmmddddcccc0q11mmmm_case_0: | 7293 // VBIC_immediate_1111001i1d000mmmddddcccc0q11mmmm_case_0: |
| 7294 // | 7294 // |
| 7295 // {D: D(22), | 7295 // {D: D(22), |
| 7296 // Q: Q(6), | 7296 // Q: Q(6), |
| 7297 // Vd: Vd(15:12), | 7297 // Vd: Vd(15:12), |
| 7298 // arch: ASIMD, | 7298 // arch: ASIMD, |
| 7299 // baseline: Vector1RegisterImmediate_BIT, | 7299 // baseline: Vector1RegisterImmediate_BIT, |
| 7300 // cmode: cmode(11:8), | 7300 // cmode: cmode(11:8), |
| 7301 // constraints: , | 7301 // constraints: , |
| 7302 // d: D:Vd, | 7302 // d: D:Vd, |
| 7303 // defs: {}, |
| 7303 // fields: [i(24), | 7304 // fields: [i(24), |
| 7304 // D(22), | 7305 // D(22), |
| 7305 // imm3(18:16), | 7306 // imm3(18:16), |
| 7306 // Vd(15:12), | 7307 // Vd(15:12), |
| 7307 // cmode(11:8), | 7308 // cmode(11:8), |
| 7308 // Q(6), | 7309 // Q(6), |
| 7309 // op(5), | 7310 // op(5), |
| 7310 // imm4(3:0)], | 7311 // imm4(3:0)], |
| 7311 // generated_baseline: VBIC_immediate_1111001i1d000mmmddddcccc0q11mmmm_case_0
, | 7312 // generated_baseline: VBIC_immediate_1111001i1d000mmmddddcccc0q11mmmm_case_0
, |
| 7312 // i: i(24), | 7313 // i: i(24), |
| 7313 // imm3: imm3(18:16), | 7314 // imm3: imm3(18:16), |
| 7314 // imm4: imm4(3:0), | 7315 // imm4: imm4(3:0), |
| 7315 // imm64: AdvSIMDExpandImm(op, cmode, i:imm3:imm4), | 7316 // imm64: AdvSIMDExpandImm(op, cmode, i:imm3:imm4), |
| 7316 // op: op(5), | 7317 // op: op(5), |
| 7317 // pattern: 1111001i1d000mmmddddcccc0q11mmmm, | 7318 // pattern: 1111001i1d000mmmddddcccc0q11mmmm, |
| 7318 // regs: 1 | 7319 // regs: 1 |
| 7319 // if Q(6)=0 | 7320 // if Q(6)=0 |
| 7320 // else 2, | 7321 // else 2, |
| 7321 // rule: VBIC_immediate, | 7322 // rule: VBIC_immediate, |
| 7322 // safety: [cmode(0)=0 || | 7323 // safety: [cmode(0)=0 || |
| 7323 // cmode(3:2)=11 => DECODER_ERROR, | 7324 // cmode(3:2)=11 => DECODER_ERROR, |
| 7324 // Q(6)=1 && | 7325 // Q(6)=1 && |
| 7325 // Vd(0)=1 => UNDEFINED]} | 7326 // Vd(0)=1 => UNDEFINED], |
| 7327 // uses: {}} |
| 7328 RegisterList VBIC_immediate_1111001i1d000mmmddddcccc0q11mmmm_case_0:: |
| 7329 defs(Instruction inst) const { |
| 7330 UNREFERENCED_PARAMETER(inst); // To silence compiler. |
| 7331 // defs: '{}' |
| 7332 return RegisterList(); |
| 7333 } |
| 7334 |
| 7326 SafetyLevel VBIC_immediate_1111001i1d000mmmddddcccc0q11mmmm_case_0:: | 7335 SafetyLevel VBIC_immediate_1111001i1d000mmmddddcccc0q11mmmm_case_0:: |
| 7327 safety(Instruction inst) const { | 7336 safety(Instruction inst) const { |
| 7328 UNREFERENCED_PARAMETER(inst); // To silence compiler. | 7337 UNREFERENCED_PARAMETER(inst); // To silence compiler. |
| 7329 | 7338 |
| 7330 // inst(11:8)(0)=0 || | 7339 // inst(11:8)(0)=0 || |
| 7331 // inst(11:8)(3:2)=11 => DECODER_ERROR | 7340 // inst(11:8)(3:2)=11 => DECODER_ERROR |
| 7332 if (((((inst.Bits() & 0x00000F00) >> 8) & 0x00000001) == | 7341 if (((((inst.Bits() & 0x00000F00) >> 8) & 0x00000001) == |
| 7333 0x00000000) || | 7342 0x00000000) || |
| 7334 ((((inst.Bits() & 0x00000F00) >> 8) & 0x0000000C) == | 7343 ((((inst.Bits() & 0x00000F00) >> 8) & 0x0000000C) == |
| 7335 0x0000000C)) | 7344 0x0000000C)) |
| 7336 return DECODER_ERROR; | 7345 return DECODER_ERROR; |
| 7337 | 7346 |
| 7338 // inst(6)=1 && | 7347 // inst(6)=1 && |
| 7339 // inst(15:12)(0)=1 => UNDEFINED | 7348 // inst(15:12)(0)=1 => UNDEFINED |
| 7340 if (((inst.Bits() & 0x00000040) == | 7349 if (((inst.Bits() & 0x00000040) == |
| 7341 0x00000040) && | 7350 0x00000040) && |
| 7342 ((((inst.Bits() & 0x0000F000) >> 12) & 0x00000001) == | 7351 ((((inst.Bits() & 0x0000F000) >> 12) & 0x00000001) == |
| 7343 0x00000001)) | 7352 0x00000001)) |
| 7344 return UNDEFINED; | 7353 return UNDEFINED; |
| 7345 | 7354 |
| 7346 return MAY_BE_SAFE; | 7355 return MAY_BE_SAFE; |
| 7347 } | 7356 } |
| 7348 | 7357 |
| 7349 | 7358 |
| 7359 RegisterList VBIC_immediate_1111001i1d000mmmddddcccc0q11mmmm_case_0:: |
| 7360 uses(Instruction inst) const { |
| 7361 UNREFERENCED_PARAMETER(inst); // To silence compiler. |
| 7362 // uses: '{}' |
| 7363 return RegisterList(); |
| 7364 } |
| 7365 |
| 7350 // VBIC_register_111100100d01nnnndddd0001nqm1mmmm_case_0: | 7366 // VBIC_register_111100100d01nnnndddd0001nqm1mmmm_case_0: |
| 7351 // | 7367 // |
| 7352 // {D: D(22), | 7368 // {D: D(22), |
| 7353 // M: M(5), | 7369 // M: M(5), |
| 7354 // N: N(7), | 7370 // N: N(7), |
| 7355 // Q: Q(6), | 7371 // Q: Q(6), |
| 7356 // U: U(24), | 7372 // U: U(24), |
| 7357 // Vd: Vd(15:12), | 7373 // Vd: Vd(15:12), |
| 7358 // Vm: Vm(3:0), | 7374 // Vm: Vm(3:0), |
| 7359 // Vn: Vn(19:16), | 7375 // Vn: Vn(19:16), |
| (...skipping 2995 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10355 | 10371 |
| 10356 | 10372 |
| 10357 RegisterList VHSUB_1111001u0dssnnnndddd0010nqm0mmmm_case_0:: | 10373 RegisterList VHSUB_1111001u0dssnnnndddd0010nqm0mmmm_case_0:: |
| 10358 uses(Instruction inst) const { | 10374 uses(Instruction inst) const { |
| 10359 UNREFERENCED_PARAMETER(inst); // To silence compiler. | 10375 UNREFERENCED_PARAMETER(inst); // To silence compiler. |
| 10360 // uses: '{}' | 10376 // uses: '{}' |
| 10361 return RegisterList(); | 10377 return RegisterList(); |
| 10362 } | 10378 } |
| 10363 | 10379 |
| 10364 } // namespace nacl_arm_dec | 10380 } // namespace nacl_arm_dec |
| OLD | NEW |