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 28 #pragma ident "%Z%%M% %I% %E% SMI" 29 30 31 /* 32 * ASSERTION: 33 * Positive test to make sure that we can invoke sparc 34 * ureg[] aliases. 35 * 36 * SECTION: User Process Tracing/uregs Array 37 * 38 * NOTES: This test does no verification - the value of the output 39 * is not deterministic. 40 */ 41 42 #pragma D option quiet 43 44 BEGIN 45 { 46 printf("R_G0 = 0x%x\n", uregs[R_G0]); 47 printf("R_G1 = 0x%x\n", uregs[R_G1]); 48 printf("R_G2 = 0x%x\n", uregs[R_G2]); 49 printf("R_G3 = 0x%x\n", uregs[R_G3]); 50 printf("R_G4 = 0x%x\n", uregs[R_G4]); 51 printf("R_G5 = 0x%x\n", uregs[R_G5]); 52 printf("R_G6 = 0x%x\n", uregs[R_G6]); 53 printf("R_G7 = 0x%x\n", uregs[R_G7]); 54 printf("R_O0 = 0x%x\n", uregs[R_O0]); 55 printf("R_O1 = 0x%x\n", uregs[R_O1]); 56 printf("R_O2 = 0x%x\n", uregs[R_O2]); 57 printf("R_O3 = 0x%x\n", uregs[R_O3]); 58 printf("R_O4 = 0x%x\n", uregs[R_O4]); 59 printf("R_O5 = 0x%x\n", uregs[R_O5]); 60 printf("R_O6 = 0x%x\n", uregs[R_O6]); 61 printf("R_O7 = 0x%x\n", uregs[R_O7]); 62 printf("R_L0 = 0x%x\n", uregs[R_L0]); 63 printf("R_L1 = 0x%x\n", uregs[R_L1]); 64 printf("R_L2 = 0x%x\n", uregs[R_L2]); 65 printf("R_L3 = 0x%x\n", uregs[R_L3]); 66 printf("R_L4 = 0x%x\n", uregs[R_L4]); 67 printf("R_L5 = 0x%x\n", uregs[R_L5]); 68 printf("R_L6 = 0x%x\n", uregs[R_L6]); 69 printf("R_L7 = 0x%x\n", uregs[R_L7]); 70 printf("R_I0 = 0x%x\n", uregs[R_I0]); 71 printf("R_I1 = 0x%x\n", uregs[R_I1]); 72 printf("R_I2 = 0x%x\n", uregs[R_I2]); 73 printf("R_I3 = 0x%x\n", uregs[R_I3]); 74 printf("R_I4 = 0x%x\n", uregs[R_I4]); 75 printf("R_I5 = 0x%x\n", uregs[R_I5]); 76 printf("R_I6 = 0x%x\n", uregs[R_I6]); 77 printf("R_I7 = 0x%x\n", uregs[R_I7]); 78 printf("R_CCR = 0x%x\n", uregs[R_CCR]); 79 printf("R_PC = 0x%x\n", uregs[R_PC]); 80 printf("R_NPC = 0x%x\n", uregs[R_NPC]); 81 printf("R_Y = 0x%x\n", uregs[R_Y]); 82 printf("R_ASI = 0x%x\n", uregs[R_ASI]); 83 printf("R_FPRS = 0x%x\n", uregs[R_FPRS]); 84 exit(0); 85 } 86