// RUN: %clang_cc1 -no-opaque-pointers -triple x86_64-apple-darwin -O1 -ffixed-point %s -emit-llvm -o - | FileCheck %s -check-prefixes=CHECK
//
// Check that we generate correct TBAA metadata for fixed-point types.
void
void
void
void
void
void
// CHECK-DAG: [[TAG_sf]] = !{[[TYPE_sf:!.*]], [[TYPE_sf]], i64 0}
// CHECK-DAG: [[TYPE_sf]] = !{!"short _Fract"
// CHECK-DAG: [[TAG_f]] = !{[[TYPE_f:!.*]], [[TYPE_f]], i64 0}
// CHECK-DAG: [[TYPE_f]] = !{!"_Fract"
// CHECK-DAG: [[TAG_lf]] = !{[[TYPE_lf:!.*]], [[TYPE_lf]], i64 0}
// CHECK-DAG: [[TYPE_lf]] = !{!"long _Fract"
// CHECK-DAG: [[TAG_sat_sf]] = !{[[TYPE_sat_sf:!.*]], [[TYPE_sat_sf]], i64 0}
// CHECK-DAG: [[TYPE_sat_sf]] = !{!"_Sat short _Fract"
// CHECK-DAG: [[TAG_sat_f]] = !{[[TYPE_sat_f:!.*]], [[TYPE_sat_f]], i64 0}
// CHECK-DAG: [[TYPE_sat_f]] = !{!"_Sat _Fract"
// CHECK-DAG: [[TAG_sat_lf]] = !{[[TYPE_sat_lf:!.*]], [[TYPE_sat_lf]], i64 0}
// CHECK-DAG: [[TYPE_sat_lf]] = !{!"_Sat long _Fract"
// CHECK-DAG: [[TAG_sk]] = !{[[TYPE_sk:!.*]], [[TYPE_sk]], i64 0}
// CHECK-DAG: [[TYPE_sk]] = !{!"short _Accum"
// CHECK-DAG: [[TAG_k]] = !{[[TYPE_k:!.*]], [[TYPE_k]], i64 0}
// CHECK-DAG: [[TYPE_k]] = !{!"_Accum"
// CHECK-DAG: [[TAG_lk]] = !{[[TYPE_lk:!.*]], [[TYPE_lk]], i64 0}
// CHECK-DAG: [[TYPE_lk]] = !{!"long _Accum"
// CHECK-DAG: [[TAG_sat_sk]] = !{[[TYPE_sat_sk:!.*]], [[TYPE_sat_sk]], i64 0}
// CHECK-DAG: [[TYPE_sat_sk]] = !{!"_Sat short _Accum"
// CHECK-DAG: [[TAG_sat_k]] = !{[[TYPE_sat_k:!.*]], [[TYPE_sat_k]], i64 0}
// CHECK-DAG: [[TYPE_sat_k]] = !{!"_Sat _Accum"
// CHECK-DAG: [[TAG_sat_lk]] = !{[[TYPE_sat_lk:!.*]], [[TYPE_sat_lk]], i64 0}
// CHECK-DAG: [[TYPE_sat_lk]] = !{!"_Sat long _Accum"