dtrace_asm.S (179237) | dtrace_asm.S (227430) |
---|---|
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, Version 1.0 only 6 * (the "License"). You may not use this file except in compliance 7 * with the License. 8 * --- 5 unchanged lines hidden (view full) --- 14 * When distributing Covered Code, include this CDDL HEADER in each 15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 * If applicable, add the following below this CDDL HEADER, with the 17 * fields enclosed by brackets "[]" replaced with your own identifying 18 * information: Portions Copyright [yyyy] [name of copyright owner] 19 * 20 * CDDL HEADER END 21 * | 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, Version 1.0 only 6 * (the "License"). You may not use this file except in compliance 7 * with the License. 8 * --- 5 unchanged lines hidden (view full) --- 14 * When distributing Covered Code, include this CDDL HEADER in each 15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 * If applicable, add the following below this CDDL HEADER, with the 17 * fields enclosed by brackets "[]" replaced with your own identifying 18 * information: Portions Copyright [yyyy] [name of copyright owner] 19 * 20 * CDDL HEADER END 21 * |
22 * $FreeBSD: head/sys/cddl/dev/dtrace/i386/dtrace_asm.S 179237 2008-05-23 05:59:42Z jb $ | 22 * $FreeBSD: head/sys/cddl/dev/dtrace/i386/dtrace_asm.S 227430 2011-11-10 22:03:35Z rstone $ |
23 */ 24/* 25 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 26 * Use is subject to license terms. 27 */ 28 29#define _ASM 30 --- 89 unchanged lines hidden (view full) --- 120 movl (%ebx), %ebp /* pop %ebp */ 121 movl 16(%esp), %eax /* load calling EFLAGS */ 122 movl %eax, (%ebx) /* store calling EFLAGS */ 123 movl 12(%esp), %eax /* load calling CS */ 124 movl %eax, -4(%ebx) /* store calling CS */ 125 movl 8(%esp), %eax /* load calling EIP */ 126 incl %eax /* increment over LOCK prefix */ 127 movl %eax, -8(%ebx) /* store calling EIP */ | 23 */ 24/* 25 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 26 * Use is subject to license terms. 27 */ 28 29#define _ASM 30 --- 89 unchanged lines hidden (view full) --- 120 movl (%ebx), %ebp /* pop %ebp */ 121 movl 16(%esp), %eax /* load calling EFLAGS */ 122 movl %eax, (%ebx) /* store calling EFLAGS */ 123 movl 12(%esp), %eax /* load calling CS */ 124 movl %eax, -4(%ebx) /* store calling CS */ 125 movl 8(%esp), %eax /* load calling EIP */ 126 incl %eax /* increment over LOCK prefix */ 127 movl %eax, -8(%ebx) /* store calling EIP */ |
128 movl %ebx, -4(%esp) /* temporarily store new %esp */ | 128 subl $8, %ebx /* adjust for three pushes, one pop */ 129 movl %ebx, 8(%esp) /* temporarily store new %esp */ |
129 popl %ebx /* pop off temp */ 130 popl %eax /* pop off temp */ | 130 popl %ebx /* pop off temp */ 131 popl %eax /* pop off temp */ |
131 movl -12(%esp), %esp /* set stack pointer */ 132 subl $8, %esp /* adjust for three pushes, one pop */ | 132 movl (%esp), %esp /* set stack pointer */ |
133 iret /* return from interrupt */ 134invop_nop: 135 /* 136 * We must emulate a "nop". This is obviously not hard: we need only 137 * advance the %eip by one. 138 */ 139 popa 140 incl (%esp) --- 387 unchanged lines hidden --- | 133 iret /* return from interrupt */ 134invop_nop: 135 /* 136 * We must emulate a "nop". This is obviously not hard: we need only 137 * advance the %eip by one. 138 */ 139 popa 140 incl (%esp) --- 387 unchanged lines hidden --- |