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 UInt32ToNumber and OSR exit are aware of copy propagation and correctly recover both versions of a variable that was subject to a UInt32ToNumber cast.
25
26On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
27
28
29PASS foo(-1) is [-1, 4294967295]
30PASS foo(-1) is [-1, 4294967295]
31PASS foo(-1) is [-1, 4294967295]
32PASS foo(-1) is [-1, 4294967295]
33PASS foo(-1) is [-1, 4294967295]
34PASS foo(-1) is [-1, 4294967295]
35PASS foo(-1) is [-1, 4294967295]
36PASS foo(-1) is [-1, 4294967295]
37PASS foo(-1) is [-1, 4294967295]
38PASS foo(-1) is [-1, 4294967295]
39PASS foo(-1) is [-1, 4294967295]
40PASS foo(-1) is [-1, 4294967295]
41PASS foo(-1) is [-1, 4294967295]
42PASS foo(-1) is [-1, 4294967295]
43PASS foo(-1) is [-1, 4294967295]
44PASS foo(-1) is [-1, 4294967295]
45PASS foo(-1) is [-1, 4294967295]
46PASS foo(-1) is [-1, 4294967295]
47PASS foo(-1) is [-1, 4294967295]
48PASS foo(-1) is [-1, 4294967295]
49PASS foo(-1) is [-1, 4294967295]
50PASS foo(-1) is [-1, 4294967295]
51PASS foo(-1) is [-1, 4294967295]
52PASS foo(-1) is [-1, 4294967295]
53PASS foo(-1) is [-1, 4294967295]
54PASS foo(-1) is [-1, 4294967295]
55PASS foo(-1) is [-1, 4294967295]
56PASS foo(-1) is [-1, 4294967295]
57PASS foo(-1) is [-1, 4294967295]
58PASS foo(-1) is [-1, 4294967295]
59PASS foo(-1) is [-1, 4294967295]
60PASS foo(-1) is [-1, 4294967295]
61PASS foo(-1) is [-1, 4294967295]
62PASS foo(-1) is [-1, 4294967295]
63PASS foo(-1) is [-1, 4294967295]
64PASS foo(-1) is [-1, 4294967295]
65PASS foo(-1) is [-1, 4294967295]
66PASS foo(-1) is [-1, 4294967295]
67PASS foo(-1) is [-1, 4294967295]
68PASS foo(-1) is [-1, 4294967295]
69PASS foo(-1) is [-1, 4294967295]
70PASS foo(-1) is [-1, 4294967295]
71PASS foo(-1) is [-1, 4294967295]
72PASS foo(-1) is [-1, 4294967295]
73PASS foo(-1) is [-1, 4294967295]
74PASS foo(-1) is [-1, 4294967295]
75PASS foo(-1) is [-1, 4294967295]
76PASS foo(-1) is [-1, 4294967295]
77PASS foo(-1) is [-1, 4294967295]
78PASS foo(-1) is [-1, 4294967295]
79PASS foo(-1) is [-1, 4294967295]
80PASS foo(-1) is [-1, 4294967295]
81PASS foo(-1) is [-1, 4294967295]
82PASS foo(-1) is [-1, 4294967295]
83PASS foo(-1) is [-1, 4294967295]
84PASS foo(-1) is [-1, 4294967295]
85PASS foo(-1) is [-1, 4294967295]
86PASS foo(-1) is [-1, 4294967295]
87PASS foo(-1) is [-1, 4294967295]
88PASS foo(-1) is [-1, 4294967295]
89PASS foo(-1) is [-1, 4294967295]
90PASS foo(-1) is [-1, 4294967295]
91PASS foo(-1) is [-1, 4294967295]
92PASS foo(-1) is [-1, 4294967295]
93PASS foo(-1) is [-1, 4294967295]
94PASS foo(-1) is [-1, 4294967295]
95PASS foo(-1) is [-1, 4294967295]
96PASS foo(-1) is [-1, 4294967295]
97PASS foo(-1) is [-1, 4294967295]
98PASS foo(-1) is [-1, 4294967295]
99PASS foo(-1) is [-1, 4294967295]
100PASS foo(-1) is [-1, 4294967295]
101PASS foo(-1) is [-1, 4294967295]
102PASS foo(-1) is [-1, 4294967295]
103PASS foo(-1) is [-1, 4294967295]
104PASS foo(-1) is [-1, 4294967295]
105PASS foo(-1) is [-1, 4294967295]
106PASS foo(-1) is [-1, 4294967295]
107PASS foo(-1) is [-1, 4294967295]
108PASS foo(-1) is [-1, 4294967295]
109PASS foo(-1) is [-1, 4294967295]
110PASS foo(-1) is [-1, 4294967295]
111PASS foo(-1) is [-1, 4294967295]
112PASS foo(-1) is [-1, 4294967295]
113PASS foo(-1) is [-1, 4294967295]
114PASS foo(-1) is [-1, 4294967295]
115PASS foo(-1) is [-1, 4294967295]
116PASS foo(-1) is [-1, 4294967295]
117PASS foo(-1) is [-1, 4294967295]
118PASS foo(-1) is [-1, 4294967295]
119PASS foo(-1) is [-1, 4294967295]
120PASS foo(-1) is [-1, 4294967295]
121PASS foo(-1) is [-1, 4294967295]
122PASS foo(-1) is [-1, 4294967295]
123PASS foo(-1) is [-1, 4294967295]
124PASS foo(-1) is [-1, 4294967295]
125PASS foo(-1) is [-1, 4294967295]
126PASS foo(-1) is [-1, 4294967295]
127PASS foo(-1) is [-1, 4294967295]
128PASS foo(-1) is [-1, 4294967295]
129PASS successfullyParsed is true
130
131TEST COMPLETE
132
133