OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gcc.c-torture/] [execute/] [20030714-1.c] - Blame information for rev 695

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 688 jeremybenn
/* derived from PR optimization/11440  */
2
 
3
extern void abort (void);
4
extern void exit (int);
5
 
6
typedef _Bool bool;
7
const bool false = 0;
8
const bool true = 1;
9
 
10
enum EPosition
11
{
12
  STATIC, RELATIVE, ABSOLUTE, FIXED
13
};
14
typedef enum EPosition EPosition;
15
 
16
enum EFloat
17
{
18
  FNONE = 0, FLEFT, FRIGHT
19
};
20
typedef enum EFloat EFloat;
21
 
22
struct RenderBox
23
{
24
  int unused[6];
25
  short m_verticalPosition;
26
 
27
  bool m_layouted : 1;
28
  bool m_unused : 1;
29
  bool m_minMaxKnown : 1;
30
  bool m_floating : 1;
31
 
32
  bool m_positioned : 1;
33
  bool m_overhangingContents : 1;
34
  bool m_relPositioned : 1;
35
  bool m_paintSpecial : 1;
36
 
37
  bool m_isAnonymous : 1;
38
  bool m_recalcMinMax : 1;
39
  bool m_isText : 1;
40
  bool m_inline : 1;
41
 
42
  bool m_replaced : 1;
43
  bool m_mouseInside : 1;
44
  bool m_hasFirstLine : 1;
45
  bool m_isSelectionBorder : 1;
46
 
47
  bool (*isTableCell) (struct RenderBox *this);
48
};
49
 
50
typedef struct RenderBox RenderBox;
51
 
52
struct RenderStyle
53
{
54
  struct NonInheritedFlags
55
    {
56
      union
57
        {
58
          struct
59
            {
60
              unsigned int _display : 4;
61
              unsigned int _bg_repeat : 2;
62
              bool _bg_attachment : 1;
63
              unsigned int _overflow : 4 ;
64
              unsigned int _vertical_align : 4;
65
              unsigned int _clear : 2;
66
              EPosition _position : 2;
67
              EFloat _floating : 2;
68
              unsigned int _table_layout : 1;
69
              bool _flowAroundFloats :1;
70
 
71
              unsigned int _styleType : 3;
72
              bool _hasHover : 1;
73
              bool _hasActive : 1;
74
              bool _clipSpecified : 1;
75
              unsigned int _unicodeBidi : 2;
76
              int _unused : 1;
77
            } f;
78
          int _niflags;
79
        };
80
    } noninherited_flags;
81
};
82
 
83
typedef struct RenderStyle RenderStyle;
84
 
85
extern void RenderObject_setStyle(RenderBox *this, RenderStyle *_style);
86
extern void removeFromSpecialObjects(RenderBox *this);
87
 
88
 
89
 
90
void RenderBox_setStyle(RenderBox *thisin, RenderStyle *_style)
91
{
92
  RenderBox *this = thisin;
93
  bool oldpos, tmp;
94
  EPosition tmppo;
95
 
96
  tmp = this->m_positioned;
97
 
98
  oldpos = tmp;
99
 
100
  RenderObject_setStyle(this, _style);
101
 
102
  tmppo = _style->noninherited_flags.f._position;
103
 
104
  switch(tmppo)
105
    {
106
    case ABSOLUTE:
107
    case FIXED:
108
        {
109
          bool ltrue = true;
110
          this->m_positioned = ltrue;
111
          break;
112
        }
113
 
114
    default:
115
        {
116
          EFloat tmpf;
117
          EPosition tmpp;
118
          if (oldpos)
119
            {
120
              bool ltrue = true;
121
              this->m_positioned = ltrue;
122
              removeFromSpecialObjects(this);
123
            }
124
            {
125
              bool lfalse = false;
126
              this->m_positioned = lfalse;
127
            }
128
 
129
          tmpf = _style->noninherited_flags.f._floating;
130
 
131
          if(!this->isTableCell (this) && !(tmpf == FNONE))
132
            {
133
              bool ltrue = true;
134
              this->m_floating = ltrue;
135
            }
136
          else
137
            {
138
              tmpp = _style->noninherited_flags.f._position;
139
              if (tmpp == RELATIVE)
140
                {
141
                  bool ltrue = true;
142
                  this->m_relPositioned = ltrue;
143
                }
144
            }
145
        }
146
    }
147
}
148
 
149
 
150
 
151
 
152
RenderBox g_this;
153
RenderStyle g__style;
154
 
155
void RenderObject_setStyle(RenderBox *this, RenderStyle *_style)
156
{
157
  (void) this;
158
  (void) _style;
159
}
160
 
161
void removeFromSpecialObjects(RenderBox *this)
162
{
163
  (void) this;
164
}
165
 
166
bool RenderBox_isTableCell (RenderBox *this)
167
{
168
  (void) this;
169
  return false;
170
}
171
 
172
int main (void)
173
{
174
 
175
  g_this.m_relPositioned = false;
176
  g_this.m_positioned = false;
177
  g_this.m_floating = false;
178
  g_this.isTableCell = RenderBox_isTableCell;
179
 
180
  g__style.noninherited_flags.f._position = FIXED;
181
  g__style.noninherited_flags.f._floating = FNONE;
182
 
183
  RenderBox_setStyle (&g_this, &g__style);
184
 
185
  if (g_this.m_positioned != true)
186
    abort ();
187
  if (g_this.m_relPositioned != false)
188
    abort ();
189
  if (g_this.m_floating != false)
190
    abort ();
191
 
192
  exit (0);
193
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.