tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tinycc-devel] [PATCH] tccgen.c: Optimise 0<<x, 0>>x, -1>>x, x&0, x*


From: Edmund Grimley Evans
Subject: Re: [Tinycc-devel] [PATCH] tccgen.c: Optimise 0<<x, 0>>x, -1>>x, x&0, x*0, x|-1, x%1.
Date: Fri, 6 Mar 2015 09:48:18 +0000

> Yes, I know, but I would nevertheless prefer (0 / x) to do the same
> thing as (y / x) when both x and y are zero at run time. That
> potentially depends on the target architecture.

To explain a bit better what I mean: On a particular architecture I
would like each of the following programs to do the same thing when
invoked with no arguments, which isn't required by any standard that I
know of, but it's nice to have and easy to achieve.

#include <stdio.h>
int main(int argc, char *argv[])
{
  int a = argc >> 1 & 127;
  int b = argc >> 8 & 127
  printf("%d\n", a / b);
  return 0;
}

#include <stdio.h>
int main(int argc, char *argv[])
{
  int a = argc >> 1 & 127;
  int b = argc >> 8 & 127
  printf("%d\n", a / 0);
  return 0;
}

#include <stdio.h>
int main(int argc, char *argv[])
{
  int a = argc >> 1 & 127;
  int b = argc >> 8 & 127;
  printf("%d\n", 0 / 0);
  return 0;
}

What those programs do does, of course, depend on the architecture.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]