comparison usr/src/cmd/dtrace/test/tst/common/types/tst.assignops.d @ 0:c9caec207d52 b86

Initial porting based on b86
author Koji Uno <koji.uno@sun.com>
date Tue, 02 Jun 2009 18:56:50 +0900
parents
children 1a15d5aaf794
comparison
equal deleted inserted replaced
-1:000000000000 0:c9caec207d52
1 /*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21
22 /*
23 * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
24 * Use is subject to license terms.
25 */
26
27 #pragma ident "@(#)tst.assignops.d 1.1 06/08/28 SMI"
28
29 /*
30 * ASSERTION:
31 * Verify assignment operators
32 *
33 * SECTION: Types, Operators, and Expressions/Assignment Operators
34 *
35 */
36
37 #pragma D option quiet
38
39
40 BEGIN
41 {
42 int_1 = 0x100;
43 int_2 = 0xf0f0;
44 int_3 = 0x0f0f;
45
46 intn = 0x1;
47
48 intn += int_1;
49 printf("%x\n", intn);
50 intn -= int_1;
51 printf("%x\n", intn);
52 intn *= int_1;
53 printf("%x\n", intn);
54 intn /= int_1;
55 printf("%x\n", intn);
56 intn %= int_1;
57 printf("%x\n", intn);
58 printf("\n");
59
60 intb = 0x0000;
61
62 intb |= (int_2 | intb);
63 printf("%x\n", intb);
64 intb &= (int_2 | int_3);
65 printf("%x\n", intb);
66 intb ^= (int_2 | int_3);
67 printf("%x\n", intb);
68 intb |= ~(intb);
69 printf("%x\n", intb);
70 printf("\n");
71
72 intb = int_2;
73
74 printf("%x\n", intb);
75 intb <<= 3;
76 printf("%x\n", intb);
77 intb >>= 3;
78 printf("%x\n", intb);
79
80 exit(0);
81
82 }