Add compiler testing for always_inline attribute
Add compiler testing for fastcall attribute Add the FASTCALL define to visual c Remove some overkill inline routines Make sure that all the inline routines in headers are static Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3355
This commit is contained in:
parent
5f6236ee35
commit
88caf1dc71
20 changed files with 182 additions and 147 deletions
|
|
@ -218,26 +218,26 @@ static inline Bits MakeVolume( Bitu wave, Bitu volume ) {
|
|||
return (sig >> exp);
|
||||
};
|
||||
|
||||
static Bits FASTCALL WaveForm0( Bitu i, Bitu volume ) {
|
||||
static Bits DB_FASTCALL WaveForm0( Bitu i, Bitu volume ) {
|
||||
Bits neg = 0 - (( i >> 9) & 1);//Create ~0 or 0
|
||||
Bitu wave = SinTable[i & 511];
|
||||
return (MakeVolume( wave, volume ) ^ neg) - neg;
|
||||
}
|
||||
static Bits FASTCALL WaveForm1( Bitu i, Bitu volume ) {
|
||||
static Bits DB_FASTCALL WaveForm1( Bitu i, Bitu volume ) {
|
||||
Bit32u wave = SinTable[i & 511];
|
||||
wave |= ( ( (i ^ 512 ) & 512) - 1) >> ( 32 - 12 );
|
||||
return MakeVolume( wave, volume );
|
||||
}
|
||||
static Bits FASTCALL WaveForm2( Bitu i, Bitu volume ) {
|
||||
static Bits DB_FASTCALL WaveForm2( Bitu i, Bitu volume ) {
|
||||
Bitu wave = SinTable[i & 511];
|
||||
return MakeVolume( wave, volume );
|
||||
}
|
||||
static Bits FASTCALL WaveForm3( Bitu i, Bitu volume ) {
|
||||
static Bits DB_FASTCALL WaveForm3( Bitu i, Bitu volume ) {
|
||||
Bitu wave = SinTable[i & 255];
|
||||
wave |= ( ( (i ^ 256 ) & 256) - 1) >> ( 32 - 12 );
|
||||
return MakeVolume( wave, volume );
|
||||
}
|
||||
static Bits FASTCALL WaveForm4( Bitu i, Bitu volume ) {
|
||||
static Bits DB_FASTCALL WaveForm4( Bitu i, Bitu volume ) {
|
||||
//Twice as fast
|
||||
i <<= 1;
|
||||
Bits neg = 0 - (( i >> 9) & 1);//Create ~0 or 0
|
||||
|
|
@ -245,18 +245,18 @@ static Bits FASTCALL WaveForm4( Bitu i, Bitu volume ) {
|
|||
wave |= ( ( (i ^ 512 ) & 512) - 1) >> ( 32 - 12 );
|
||||
return (MakeVolume( wave, volume ) ^ neg) - neg;
|
||||
}
|
||||
static Bits FASTCALL WaveForm5( Bitu i, Bitu volume ) {
|
||||
static Bits DB_FASTCALL WaveForm5( Bitu i, Bitu volume ) {
|
||||
//Twice as fast
|
||||
i <<= 1;
|
||||
Bitu wave = SinTable[i & 511];
|
||||
wave |= ( ( (i ^ 512 ) & 512) - 1) >> ( 32 - 12 );
|
||||
return MakeVolume( wave, volume );
|
||||
}
|
||||
static Bits FASTCALL WaveForm6( Bitu i, Bitu volume ) {
|
||||
static Bits DB_FASTCALL WaveForm6( Bitu i, Bitu volume ) {
|
||||
Bits neg = 0 - (( i >> 9) & 1);//Create ~0 or 0
|
||||
return (MakeVolume( 0, volume ) ^ neg) - neg;
|
||||
}
|
||||
static Bits FASTCALL WaveForm7( Bitu i, Bitu volume ) {
|
||||
static Bits DB_FASTCALL WaveForm7( Bitu i, Bitu volume ) {
|
||||
//Negative is reversed here
|
||||
Bits neg = (( i >> 9) & 1) - 1;
|
||||
Bitu wave = (i << 3);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue