1*c5de4dd1SFangrui Song // RUN: %clang_cc1 -ffixed-point -emit-llvm %s -o - -triple=x86_64-unknown-linux-gnu | FileCheck %s 2d2fd1106SLeonard Chan 3d2fd1106SLeonard Chan // Primary fixed point types func(signed short _Accum)4d2fd1106SLeonard Chanvoid func(signed short _Accum){} // CHECK: @_Z4funcDAs func(signed _Accum)5d2fd1106SLeonard Chanvoid func(signed _Accum){} // CHECK: @_Z4funcDAi func(signed long _Accum)6d2fd1106SLeonard Chanvoid func(signed long _Accum){} // CHECK: @_Z4funcDAl func(unsigned short _Accum)7d2fd1106SLeonard Chanvoid func(unsigned short _Accum){} // CHECK: @_Z4funcDAt func(unsigned _Accum)8d2fd1106SLeonard Chanvoid func(unsigned _Accum){} // CHECK: @_Z4funcDAj func(unsigned long _Accum)9d2fd1106SLeonard Chanvoid func(unsigned long _Accum){} // CHECK: @_Z4funcDAm func(signed short _Fract)10d2fd1106SLeonard Chanvoid func(signed short _Fract){} // CHECK: @_Z4funcDRs func(signed _Fract)11d2fd1106SLeonard Chanvoid func(signed _Fract){} // CHECK: @_Z4funcDRi func(signed long _Fract)12d2fd1106SLeonard Chanvoid func(signed long _Fract){} // CHECK: @_Z4funcDRl func(unsigned short _Fract)13d2fd1106SLeonard Chanvoid func(unsigned short _Fract){} // CHECK: @_Z4funcDRt func(unsigned _Fract)14d2fd1106SLeonard Chanvoid func(unsigned _Fract){} // CHECK: @_Z4funcDRj func(unsigned long _Fract)15d2fd1106SLeonard Chanvoid func(unsigned long _Fract){} // CHECK: @_Z4funcDRm 16d2fd1106SLeonard Chan 17d2fd1106SLeonard Chan // Aliased func2(short _Accum)18d2fd1106SLeonard Chanvoid func2(short _Accum){} // CHECK: @_Z5func2DAs func2(_Accum)19d2fd1106SLeonard Chanvoid func2(_Accum){} // CHECK: @_Z5func2DAi func2(long _Accum)20d2fd1106SLeonard Chanvoid func2(long _Accum){} // CHECK: @_Z5func2DAl func2(short _Fract)21d2fd1106SLeonard Chanvoid func2(short _Fract){} // CHECK: @_Z5func2DRs func2(_Fract)22d2fd1106SLeonard Chanvoid func2(_Fract){} // CHECK: @_Z5func2DRi func2(long _Fract)23d2fd1106SLeonard Chanvoid func2(long _Fract){} // CHECK: @_Z5func2DRl 24d2fd1106SLeonard Chan 25d2fd1106SLeonard Chan // Primary saturated func(_Sat signed short _Accum)26d2fd1106SLeonard Chanvoid func(_Sat signed short _Accum){} // CHECK: @_Z4funcDSDAs func(_Sat signed _Accum)27d2fd1106SLeonard Chanvoid func(_Sat signed _Accum){} // CHECK: @_Z4funcDSDAi func(_Sat signed long _Accum)28d2fd1106SLeonard Chanvoid func(_Sat signed long _Accum){} // CHECK: @_Z4funcDSDAl func(_Sat unsigned short _Accum)29d2fd1106SLeonard Chanvoid func(_Sat unsigned short _Accum){} // CHECK: @_Z4funcDSDAt func(_Sat unsigned _Accum)30d2fd1106SLeonard Chanvoid func(_Sat unsigned _Accum){} // CHECK: @_Z4funcDSDAj func(_Sat unsigned long _Accum)31d2fd1106SLeonard Chanvoid func(_Sat unsigned long _Accum){} // CHECK: @_Z4funcDSDAm func(_Sat signed short _Fract)32d2fd1106SLeonard Chanvoid func(_Sat signed short _Fract){} // CHECK: @_Z4funcDSDRs func(_Sat signed _Fract)33d2fd1106SLeonard Chanvoid func(_Sat signed _Fract){} // CHECK: @_Z4funcDSDRi func(_Sat signed long _Fract)34d2fd1106SLeonard Chanvoid func(_Sat signed long _Fract){} // CHECK: @_Z4funcDSDRl func(_Sat unsigned short _Fract)35d2fd1106SLeonard Chanvoid func(_Sat unsigned short _Fract){} // CHECK: @_Z4funcDSDRt func(_Sat unsigned _Fract)36d2fd1106SLeonard Chanvoid func(_Sat unsigned _Fract){} // CHECK: @_Z4funcDSDRj func(_Sat unsigned long _Fract)37d2fd1106SLeonard Chanvoid func(_Sat unsigned long _Fract){} // CHECK: @_Z4funcDSDRm 38d2fd1106SLeonard Chan 39d2fd1106SLeonard Chan // Aliased saturated func2(_Sat short _Accum)40d2fd1106SLeonard Chanvoid func2(_Sat short _Accum){} // CHECK: @_Z5func2DSDAs func2(_Sat _Accum)41d2fd1106SLeonard Chanvoid func2(_Sat _Accum){} // CHECK: @_Z5func2DSDAi func2(_Sat long _Accum)42d2fd1106SLeonard Chanvoid func2(_Sat long _Accum){} // CHECK: @_Z5func2DSDAl func2(_Sat short _Fract)43d2fd1106SLeonard Chanvoid func2(_Sat short _Fract){} // CHECK: @_Z5func2DSDRs func2(_Sat _Fract)44d2fd1106SLeonard Chanvoid func2(_Sat _Fract){} // CHECK: @_Z5func2DSDRi func2(_Sat long _Fract)45d2fd1106SLeonard Chanvoid func2(_Sat long _Fract){} // CHECK: @_Z5func2DSDRl 46