12345678910111213141516171819202122 |
- extern "C" {
- extern int not3(int);
- extern int bytes(int);
- extern long long shr32(long long);
- extern double double5(void);
- }
- int main(int argc,char **argv)
- {
- if (not3(3)) return 100;
- /* on ppc32, gcc -mpowerpc64 produces SIGILL for >>32 */
- if (!not3(shr32(1))) return 100;
- /* on pentium 1, gcc -march=pentium2 produces SIGILL for (...+7)/8 */
- if (bytes(not3(1)) != 1) return 100;
- /* on pentium 1, gcc -march=prescott produces SIGILL for double comparison */
- if (double5() < 0) return 100;
- return 0;
- }
|