// RUN: %swift -module-name test -emit-ir -disable-legacy-type-info -target arm64-apple-ios10.0 %s | %FileCheck %s -check-prefix=CHECK -check-prefix=CHECK-arm64
// RUN: %swift -module-name test -emit-ir -disable-legacy-type-info -target x86_64-apple-macosx10.12 %s | %FileCheck %s -check-prefix=CHECK -check-prefix=CHECK-x86_64

// REQUIRES: CODEGENERATOR=X86
// REQUIRES: CODEGENERATOR=AArch64

class NativeClass {}
sil_vtable NativeClass {}

// On 64-bit targets, there are 3 spare bits in the alignment bits and
// either 4 (arm64) or 8 (everywhere else) spare bits in the high byte.
// Consume those bits one by one.

enum A {
  case either(NativeClass)
  case or(NativeClass)
}

enum B {
  case either(A)
  case or(A)
}

enum C {
  case either(B)
  case or(B)
}

enum D {
  case either(C)
  case or(C)
}

enum E {
  case either(D)
  case or(D)
}

enum F {
  case either(E)
  case or(E)
}

enum G {
  case either(F)
  case or(F)
}

// Okay, we've claimed 7 spare bits.  On ARM64, the eighth spare bit will
// require an extra discriminator.

// CHECK-LABEL: @"$s4test1HOWV" = internal constant %swift.enum_vwtable
// CHECK-x86_64-SAME:     i64 8,
// CHECK-x86_64-SAME:     i64 8,
// CHECK-arm64-SAME:      i64 9,
// CHECK-arm64-SAME:      i64 16,

enum H {
  case either(G)
  case or(G)
}
