1# Copyright 2013 the V8 project authors. All rights reserved.
2# Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
3#
4# Redistribution and use in source and binary forms, with or without
5# modification, are permitted provided that the following conditions
6# are met:
7# 1.  Redistributions of source code must retain the above copyright
8#     notice, this list of conditions and the following disclaimer.
9# 2.  Redistributions in binary form must reproduce the above copyright
10#     notice, this list of conditions and the following disclaimer in the
11#     documentation and/or other materials provided with the distribution.
12#
13# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
14# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
15# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
16# DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
17# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
18# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
19# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
20# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
21# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
22# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
23
24Tests that a variable predicted to be either int or double but proven to be an int does confuse the Branch logic.
25
26On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
27
28
29PASS foo(0, 1, 0) is 0.5
30PASS foo(i, i + 1, i + 2) is 1
31PASS foo(i, i + 1, i + 2) is 1
32PASS foo(i, i + 1, i + 2) is 1
33PASS foo(i, i + 1, i + 2) is 1
34PASS foo(i, i + 1, i + 2) is 1
35PASS foo(i, i + 1, i + 2) is 1
36PASS foo(i, i + 1, i + 2) is 1
37PASS foo(i, i + 1, i + 2) is 1
38PASS foo(i, i + 1, i + 2) is 1
39PASS foo(i, i + 1, i + 2) is 1
40PASS foo(i, i + 1, i + 2) is 1
41PASS foo(i, i + 1, i + 2) is 1
42PASS foo(i, i + 1, i + 2) is 1
43PASS foo(i, i + 1, i + 2) is 1
44PASS foo(i, i + 1, i + 2) is 1
45PASS foo(i, i + 1, i + 2) is 1
46PASS foo(i, i + 1, i + 2) is 1
47PASS foo(i, i + 1, i + 2) is 1
48PASS foo(i, i + 1, i + 2) is 1
49PASS foo(i, i + 1, i + 2) is 1
50PASS foo(i, i + 1, i + 2) is 1
51PASS foo(i, i + 1, i + 2) is 1
52PASS foo(i, i + 1, i + 2) is 1
53PASS foo(i, i + 1, i + 2) is 1
54PASS foo(i, i + 1, i + 2) is 1
55PASS foo(i, i + 1, i + 2) is 1
56PASS foo(i, i + 1, i + 2) is 1
57PASS foo(i, i + 1, i + 2) is 1
58PASS foo(i, i + 1, i + 2) is 1
59PASS foo(i, i + 1, i + 2) is 1
60PASS foo(i, i + 1, i + 2) is 1
61PASS foo(i, i + 1, i + 2) is 1
62PASS foo(i, i + 1, i + 2) is 1
63PASS foo(i, i + 1, i + 2) is 1
64PASS foo(i, i + 1, i + 2) is 1
65PASS foo(i, i + 1, i + 2) is 1
66PASS foo(i, i + 1, i + 2) is 1
67PASS foo(i, i + 1, i + 2) is 1
68PASS foo(i, i + 1, i + 2) is 1
69PASS foo(i, i + 1, i + 2) is 1
70PASS foo(i, i + 1, i + 2) is 1
71PASS foo(i, i + 1, i + 2) is 1
72PASS foo(i, i + 1, i + 2) is 1
73PASS foo(i, i + 1, i + 2) is 1
74PASS foo(i, i + 1, i + 2) is 1
75PASS foo(i, i + 1, i + 2) is 1
76PASS foo(i, i + 1, i + 2) is 1
77PASS foo(i, i + 1, i + 2) is 1
78PASS foo(i, i + 1, i + 2) is 1
79PASS foo(i, i + 1, i + 2) is 1
80PASS foo(i, i + 1, i + 2) is 1
81PASS foo(i, i + 1, i + 2) is 1
82PASS foo(i, i + 1, i + 2) is 1
83PASS foo(i, i + 1, i + 2) is 1
84PASS foo(i, i + 1, i + 2) is 1
85PASS foo(i, i + 1, i + 2) is 1
86PASS foo(i, i + 1, i + 2) is 1
87PASS foo(i, i + 1, i + 2) is 1
88PASS foo(i, i + 1, i + 2) is 1
89PASS foo(i, i + 1, i + 2) is 1
90PASS foo(i, i + 1, i + 2) is 1
91PASS foo(i, i + 1, i + 2) is 1
92PASS foo(i, i + 1, i + 2) is 1
93PASS foo(i, i + 1, i + 2) is 1
94PASS foo(i, i + 1, i + 2) is 1
95PASS foo(i, i + 1, i + 2) is 1
96PASS foo(i, i + 1, i + 2) is 1
97PASS foo(i, i + 1, i + 2) is 1
98PASS foo(i, i + 1, i + 2) is 1
99PASS foo(i, i + 1, i + 2) is 1
100PASS foo(i, i + 1, i + 2) is 1
101PASS foo(i, i + 1, i + 2) is 1
102PASS foo(i, i + 1, i + 2) is 1
103PASS foo(i, i + 1, i + 2) is 1
104PASS foo(i, i + 1, i + 2) is 1
105PASS foo(i, i + 1, i + 2) is 1
106PASS foo(i, i + 1, i + 2) is 1
107PASS foo(i, i + 1, i + 2) is 1
108PASS foo(i, i + 1, i + 2) is 1
109PASS foo(i, i + 1, i + 2) is 1
110PASS foo(i, i + 1, i + 2) is 1
111PASS foo(i, i + 1, i + 2) is 1
112PASS foo(i, i + 1, i + 2) is 1
113PASS foo(i, i + 1, i + 2) is 1
114PASS foo(i, i + 1, i + 2) is 1
115PASS foo(i, i + 1, i + 2) is 1
116PASS foo(i, i + 1, i + 2) is 1
117PASS foo(i, i + 1, i + 2) is 1
118PASS foo(i, i + 1, i + 2) is 1
119PASS foo(i, i + 1, i + 2) is 1
120PASS foo(i, i + 1, i + 2) is 1
121PASS foo(i, i + 1, i + 2) is 1
122PASS foo(i, i + 1, i + 2) is 1
123PASS foo(i, i + 1, i + 2) is 1
124PASS foo(i, i + 1, i + 2) is 1
125PASS foo(i, i + 1, i + 2) is 1
126PASS foo(i, i + 1, i + 2) is 1
127PASS foo(i, i + 1, i + 2) is 1
128PASS foo(i, i + 1, i + 2) is 1
129PASS foo(i, i + 1, i + 2) is 1
130PASS foo(i, i + 1, i + 2) is 1
131PASS foo(i, i + 1, i + 2) is 1
132PASS foo(i, i + 1, i + 2) is 1
133PASS foo(i, i + 1, i + 2) is 1
134PASS foo(i, i + 1, i + 2) is 1
135PASS foo(i, i + 1, i + 2) is 1
136PASS foo(i, i + 1, i + 2) is 1
137PASS foo(i, i + 1, i + 2) is 1
138PASS foo(i, i + 1, i + 2) is 1
139PASS foo(i, i + 1, i + 2) is 1
140PASS foo(i, i + 1, i + 2) is 1
141PASS foo(i, i + 1, i + 2) is 1
142PASS foo(i, i + 1, i + 2) is 1
143PASS foo(i, i + 1, i + 2) is 1
144PASS foo(i, i + 1, i + 2) is 1
145PASS foo(i, i + 1, i + 2) is 1
146PASS foo(i, i + 1, i + 2) is 1
147PASS foo(i, i + 1, i + 2) is 1
148PASS foo(i, i + 1, i + 2) is 1
149PASS foo(i, i + 1, i + 2) is 1
150PASS foo(i, i + 1, i + 2) is 1
151PASS foo(i, i + 1, i + 2) is 1
152PASS foo(i, i + 1, i + 2) is 1
153PASS foo(i, i + 1, i + 2) is 1
154PASS foo(i, i + 1, i + 2) is 1
155PASS foo(i, i + 1, i + 2) is 1
156PASS foo(i, i + 1, i + 2) is 1
157PASS foo(i, i + 1, i + 2) is 1
158PASS foo(i, i + 1, i + 2) is 1
159PASS foo(i, i + 1, i + 2) is 1
160PASS foo(i, i + 1, i + 2) is 1
161PASS foo(i, i + 1, i + 2) is 1
162PASS foo(i, i + 1, i + 2) is 1
163PASS foo(i, i + 1, i + 2) is 1
164PASS foo(i, i + 1, i + 2) is 1
165PASS foo(i, i + 1, i + 2) is 1
166PASS foo(i, i + 1, i + 2) is 1
167PASS foo(i, i + 1, i + 2) is 1
168PASS foo(i, i + 1, i + 2) is 1
169PASS foo(i, i + 1, i + 2) is 1
170PASS foo(i, i + 1, i + 2) is 1
171PASS foo(i, i + 1, i + 2) is 1
172PASS foo(i, i + 1, i + 2) is 1
173PASS foo(i, i + 1, i + 2) is 1
174PASS foo(i, i + 1, i + 2) is 1
175PASS foo(i, i + 1, i + 2) is 1
176PASS foo(i, i + 1, i + 2) is 1
177PASS foo(i, i + 1, i + 2) is 1
178PASS foo(i, i + 1, i + 2) is 1
179PASS foo(i, i + 1, i + 2) is 1
180PASS foo(i, i + 1, i + 2) is 1
181PASS foo(i, i + 1, i + 2) is 1
182PASS foo(i, i + 1, i + 2) is 1
183PASS foo(i, i + 1, i + 2) is 1
184PASS foo(i, i + 1, i + 2) is 1
185PASS foo(i, i + 1, i + 2) is 1
186PASS foo(i, i + 1, i + 2) is 1
187PASS foo(i, i + 1, i + 2) is 1
188PASS foo(i, i + 1, i + 2) is 1
189PASS foo(i, i + 1, i + 2) is 1
190PASS foo(i, i + 1, i + 2) is 1
191PASS foo(i, i + 1, i + 2) is 1
192PASS foo(i, i + 1, i + 2) is 1
193PASS foo(i, i + 1, i + 2) is 1
194PASS foo(i, i + 1, i + 2) is 1
195PASS foo(i, i + 1, i + 2) is 1
196PASS foo(i, i + 1, i + 2) is 1
197PASS foo(i, i + 1, i + 2) is 1
198PASS foo(i, i + 1, i + 2) is 1
199PASS foo(i, i + 1, i + 2) is 1
200PASS foo(i, i + 1, i + 2) is 1
201PASS foo(i, i + 1, i + 2) is 1
202PASS foo(i, i + 1, i + 2) is 1
203PASS foo(i, i + 1, i + 2) is 1
204PASS foo(i, i + 1, i + 2) is 1
205PASS foo(i, i + 1, i + 2) is 1
206PASS foo(i, i + 1, i + 2) is 1
207PASS foo(i, i + 1, i + 2) is 1
208PASS foo(i, i + 1, i + 2) is 1
209PASS foo(i, i + 1, i + 2) is 1
210PASS foo(i, i + 1, i + 2) is 1
211PASS foo(i, i + 1, i + 2) is 1
212PASS foo(i, i + 1, i + 2) is 1
213PASS foo(i, i + 1, i + 2) is 1
214PASS foo(i, i + 1, i + 2) is 1
215PASS foo(i, i + 1, i + 2) is 1
216PASS foo(i, i + 1, i + 2) is 1
217PASS foo(i, i + 1, i + 2) is 1
218PASS foo(i, i + 1, i + 2) is 1
219PASS foo(i, i + 1, i + 2) is 1
220PASS foo(i, i + 1, i + 2) is 1
221PASS foo(i, i + 1, i + 2) is 1
222PASS foo(i, i + 1, i + 2) is 1
223PASS foo(i, i + 1, i + 2) is 1
224PASS foo(i, i + 1, i + 2) is 1
225PASS foo(i, i + 1, i + 2) is 1
226PASS foo(i, i + 1, i + 2) is 1
227PASS foo(i, i + 1, i + 2) is 1
228PASS foo(i, i + 1, i + 2) is 1
229PASS foo(i, i + 1, i + 2) is 1
230PASS successfullyParsed is true
231
232TEST COMPLETE
233
234