modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/execute/20021010-2.c (about)

     1  /* cse.c failure on x86 target.
     2     Contributed by Stuart Hastings 10 Oct 2002 <stuart@apple.com> */
     3  #include <stdlib.h>
     4  
     5  typedef signed short SInt16;
     6  
     7  typedef struct {
     8      SInt16 minx;
     9      SInt16 maxx;
    10      SInt16 miny;
    11      SInt16 maxy;
    12  } IOGBounds;
    13  
    14  int expectedwidth = 50;
    15  
    16  unsigned int *global_vramPtr = (unsigned int *)0xa000;
    17  
    18  IOGBounds global_bounds = { 100, 150, 100, 150 };
    19  IOGBounds global_saveRect = { 75, 175, 75, 175 };
    20  
    21  main()
    22  {
    23    unsigned int *vramPtr;
    24    int width;
    25    IOGBounds saveRect = global_saveRect;
    26    IOGBounds bounds = global_bounds;
    27  
    28    if (saveRect.minx < bounds.minx) saveRect.minx = bounds.minx;
    29    if (saveRect.maxx > bounds.maxx) saveRect.maxx = bounds.maxx;
    30  
    31    vramPtr = global_vramPtr + (saveRect.miny - bounds.miny) ;
    32    width = saveRect.maxx - saveRect.minx;
    33  
    34    if (width != expectedwidth)
    35      abort ();
    36    exit (0);
    37  }