/kernel/linux/linux-6.6/arch/x86/include/asm/ |
H A D | cpuid.h | 12 u32 eax, ebx, ecx, edx; member 31 unsigned int *ecx, unsigned int *edx) in native_cpuid() 33 /* ecx is often an input as well as an output. */ in native_cpuid() 37 "=c" (*ecx), in native_cpuid() 39 : "0" (*eax), "2" (*ecx) in native_cpuid() 46 unsigned int eax = op, ebx, ecx = 0, edx; \ 48 native_cpuid(&eax, &ebx, &ecx, &edx); \ 58 native_cpuid_reg(ecx) 69 * clear %ecx since some cpus (Cyrix MII) do not set or clear %ecx 30 native_cpuid(unsigned int *eax, unsigned int *ebx, unsigned int *ecx, unsigned int *edx) native_cpuid() argument 72 cpuid(unsigned int op, unsigned int *eax, unsigned int *ebx, unsigned int *ecx, unsigned int *edx) cpuid() argument 82 cpuid_count(unsigned int op, int count, unsigned int *eax, unsigned int *ebx, unsigned int *ecx, unsigned int *edx) cpuid_count() argument 96 unsigned int eax, ebx, ecx, edx; cpuid_eax() local 105 unsigned int eax, ebx, ecx, edx; cpuid_ebx() local 114 unsigned int eax, ebx, ecx, edx; cpuid_ecx() local 123 unsigned int eax, ebx, ecx, edx; cpuid_edx() local [all...] |
H A D | mwait.h | 29 static __always_inline void __monitor(const void *eax, unsigned long ecx, in __monitor() argument 32 /* "monitor %eax, %ecx, %edx;" */ in __monitor() 34 :: "a" (eax), "c" (ecx), "d"(edx)); in __monitor() 37 static __always_inline void __monitorx(const void *eax, unsigned long ecx, in __monitorx() argument 40 /* "monitorx %eax, %ecx, %edx;" */ in __monitorx() 42 :: "a" (eax), "c" (ecx), "d"(edx)); in __monitorx() 45 static __always_inline void __mwait(unsigned long eax, unsigned long ecx) in __mwait() argument 49 /* "mwait %eax, %ecx;" */ in __mwait() 51 :: "a" (eax), "c" (ecx)); in __mwait() 81 unsigned long ecx) in __mwaitx() 80 __mwaitx(unsigned long eax, unsigned long ebx, unsigned long ecx) __mwaitx() argument 90 __sti_mwait(unsigned long eax, unsigned long ecx) __sti_mwait() argument 108 mwait_idle_with_hints(unsigned long eax, unsigned long ecx) mwait_idle_with_hints() argument 137 __tpause(u32 ecx, u32 edx, u32 eax) __tpause() argument [all...] |
/kernel/linux/linux-5.10/arch/x86/math-emu/ |
H A D | reg_round.S | 125 movl PARAM4,%ecx 145 movl %ecx,%esi 146 andl CW_PC,%ecx 147 cmpl PR_64_BITS,%ecx 150 cmpl PR_53_BITS,%ecx 153 cmpl PR_24_BITS,%ecx 159 cmpl PR_RESERVED_BITS,%ecx 173 movl %esi,%ecx 174 andl CW_RC,%ecx 175 cmpl RC_RND,%ecx [all...] |
H A D | wm_sqrt.S | 91 movl SIGL(%esi),%ecx 100 rcrl $1,%ecx 108 movl %ecx,FPU_fsqrt_arg_1 114 movl $0xaaaaaaaa,%ecx 115 mull %ecx 128 movl FPU_fsqrt_arg_2,%ecx /* ms word */ 137 shrl %ecx /* Doing this first will prevent a divide */ 140 movl %ecx,%edx /* msw of the arg / 2 */ 145 movl %ecx,%edx 150 movl %ecx, [all...] |
/kernel/linux/linux-6.6/arch/x86/math-emu/ |
H A D | reg_round.S | 125 movl PARAM4,%ecx 145 movl %ecx,%esi 146 andl CW_PC,%ecx 147 cmpl PR_64_BITS,%ecx 150 cmpl PR_53_BITS,%ecx 153 cmpl PR_24_BITS,%ecx 159 cmpl PR_RESERVED_BITS,%ecx 173 movl %esi,%ecx 174 andl CW_RC,%ecx 175 cmpl RC_RND,%ecx [all...] |
H A D | wm_sqrt.S | 91 movl SIGL(%esi),%ecx 100 rcrl $1,%ecx 108 movl %ecx,FPU_fsqrt_arg_1 114 movl $0xaaaaaaaa,%ecx 115 mull %ecx 128 movl FPU_fsqrt_arg_2,%ecx /* ms word */ 137 shrl %ecx /* Doing this first will prevent a divide */ 140 movl %ecx,%edx /* msw of the arg / 2 */ 145 movl %ecx,%edx 150 movl %ecx, [all...] |
/kernel/linux/linux-5.10/arch/x86/include/asm/ |
H A D | mwait.h | 28 static inline void __monitor(const void *eax, unsigned long ecx, in __monitor() argument 31 /* "monitor %eax, %ecx, %edx;" */ in __monitor() 33 :: "a" (eax), "c" (ecx), "d"(edx)); in __monitor() 36 static inline void __monitorx(const void *eax, unsigned long ecx, in __monitorx() argument 39 /* "monitorx %eax, %ecx, %edx;" */ in __monitorx() 41 :: "a" (eax), "c" (ecx), "d"(edx)); in __monitorx() 44 static inline void __mwait(unsigned long eax, unsigned long ecx) in __mwait() argument 48 /* "mwait %eax, %ecx;" */ in __mwait() 50 :: "a" (eax), "c" (ecx)); in __mwait() 80 unsigned long ecx) in __mwaitx() 79 __mwaitx(unsigned long eax, unsigned long ebx, unsigned long ecx) __mwaitx() argument 89 __sti_mwait(unsigned long eax, unsigned long ecx) __sti_mwait() argument 107 mwait_idle_with_hints(unsigned long eax, unsigned long ecx) mwait_idle_with_hints() argument 129 __tpause(u32 ecx, u32 edx, u32 eax) __tpause() argument [all...] |
/kernel/linux/linux-5.10/tools/testing/selftests/vm/ |
H A D | pkey-x86.h | 60 unsigned int ecx = 0; in __read_pkey_reg() local 65 : "c" (ecx)); in __read_pkey_reg() 73 unsigned int ecx = 0; in __write_pkey_reg() local 79 : : "a" (eax), "c" (ecx), "d" (edx)); in __write_pkey_reg() 84 unsigned int *ecx, unsigned int *edx) in __cpuid() 86 /* ecx is often an input as well as an output. */ in __cpuid() 91 "=c" (*ecx), in __cpuid() 93 : "0" (*eax), "2" (*ecx)); in __cpuid() 96 /* Intel-defined CPU features, CPUID level 0x00000007:0 (ecx) */ 104 unsigned int ecx; in cpu_has_pkeys() local 83 __cpuid(unsigned int *eax, unsigned int *ebx, unsigned int *ecx, unsigned int *edx) __cpuid() argument 134 unsigned int ecx; pkey_reg_xstate_offset() local [all...] |
/kernel/linux/linux-5.10/arch/x86/lib/ |
H A D | atomic64_cx8_32.S | 13 movl %ecx, %edx 20 read64 %ecx 52 movl %ecx, %ebp 54 read64 %ecx 57 movl %edx, %ecx 59 \insc\()l %edi, %ecx 66 movl %ecx, %edx 85 movl %edx, %ecx 87 \insc\()l $0, %ecx 94 movl %ecx, [all...] |
H A D | checksum_32.S | 53 movl 16(%esp),%ecx # Function arg: int len 61 dec %ecx 70 subl $2, %ecx # Alignment uses up two bytes. 72 addl $2, %ecx # ecx was < 2. Deal with it. 79 movl %ecx, %edx 80 shrl $5, %ecx 100 dec %ecx 103 2: movl %edx, %ecx 112 4: andl $3, %ecx [all...] |
H A D | copy_mc_64.S | 34 movl %esi, %ecx 35 andl $7, %ecx 36 subl $8, %ecx 37 negl %ecx 38 subl %ecx, %edx 47 decl %ecx 51 movl %edx, %ecx 53 shrl $3, %ecx 64 decl %ecx 73 movl %edx, %ecx [all...] |
/kernel/linux/linux-6.6/arch/x86/lib/ |
H A D | atomic64_cx8_32.S | 13 movl %ecx, %edx 20 read64 %ecx 52 movl %ecx, %ebp 54 read64 %ecx 57 movl %edx, %ecx 59 \insc\()l %edi, %ecx 66 movl %ecx, %edx 85 movl %edx, %ecx 87 \insc\()l $0, %ecx 94 movl %ecx, [all...] |
H A D | checksum_32.S | 53 movl 16(%esp),%ecx # Function arg: int len 61 dec %ecx 70 subl $2, %ecx # Alignment uses up two bytes. 72 addl $2, %ecx # ecx was < 2. Deal with it. 79 movl %ecx, %edx 80 shrl $5, %ecx 100 dec %ecx 103 2: movl %edx, %ecx 112 4: andl $3, %ecx [all...] |
H A D | clear_page_64.S | 18 movl $4096/8,%ecx 27 movl $4096/64,%ecx 30 decl %ecx 48 movl $4096,%ecx 69 cmp $8,%ecx 72 testl %ecx,%ecx 88 sub $8,%ecx 90 cmp $8,%ecx 108 cmpl $8,%ecx [all...] |
/kernel/linux/linux-6.6/tools/testing/selftests/mm/ |
H A D | pkey-x86.h | 42 unsigned int ecx = 0; in __read_pkey_reg() local 47 : "c" (ecx)); in __read_pkey_reg() 55 unsigned int ecx = 0; in __write_pkey_reg() local 61 : : "a" (eax), "c" (ecx), "d" (edx)); in __write_pkey_reg() 65 /* Intel-defined CPU features, CPUID level 0x00000007:0 (ecx) */ 73 unsigned int ecx; in cpu_has_pkeys() local 76 __cpuid_count(0x7, 0x0, eax, ebx, ecx, edx); in cpu_has_pkeys() 78 if (!(ecx & X86_FEATURE_PKU)) { in cpu_has_pkeys() 82 if (!(ecx & X86_FEATURE_OSPKE)) { in cpu_has_pkeys() 94 unsigned int ecx; in cpu_max_xsave_size() local 114 unsigned int ecx; pkey_reg_xstate_offset() local [all...] |
/kernel/linux/linux-6.6/arch/x86/entry/ |
H A D | entry_32.S | 14 * 4(%esp) - %ecx 183 pushl %ecx 186 movl 4*4(%esp), %ecx # flags 187 movl %ecx, %ss:-1*4(%eax) 189 movl 3*4(%esp), %ecx # cs 190 andl $0x0000ffff, %ecx 191 movl %ecx, %ss:-2*4(%eax) 193 movl 2*4(%esp), %ecx # ip 194 movl %ecx, %ss:-3*4(%eax) 196 movl 1*4(%esp), %ecx # ea [all...] |
/kernel/linux/linux-5.10/arch/x86/kernel/ |
H A D | ftrace_32.S | 45 pushl %ecx 61 movl function_trace_op, %ecx 70 popl %ecx 128 pushl %ecx 136 movl function_trace_op, %ecx # 3rd argument: ftrace_pos 146 movl PT_EIP(%esp), %ecx 147 movl %ecx, -4(%eax) 150 movl PT_EAX(%esp), %ecx 151 movl %ecx, -8(%eax) 154 popl %ecx [all...] |
/kernel/linux/linux-6.6/arch/x86/kernel/ |
H A D | ftrace_32.S | 45 pushl %ecx 61 movl function_trace_op, %ecx 70 popl %ecx 128 pushl %ecx 136 movl function_trace_op, %ecx # 3rd argument: ftrace_pos 146 movl PT_EIP(%esp), %ecx 147 movl %ecx, -4(%eax) 150 movl PT_EAX(%esp), %ecx 151 movl %ecx, -8(%eax) 154 popl %ecx [all...] |
/kernel/linux/linux-5.10/arch/x86/kernel/cpu/ |
H A D | topology.c | 24 #define LEAFB_SUBTYPE(ecx) (((ecx) >> 8) & 0xff) 37 unsigned int eax, ebx, ecx, edx; in check_extended_topology_leaf() local 39 cpuid_count(leaf, SMT_LEVEL, &eax, &ebx, &ecx, &edx); in check_extended_topology_leaf() 41 if (ebx == 0 || (LEAFB_SUBTYPE(ecx) != SMT_TYPE)) in check_extended_topology_leaf() 68 unsigned int eax, ebx, ecx, edx; in detect_extended_topology_early() local 77 cpuid_count(leaf, SMT_LEVEL, &eax, &ebx, &ecx, &edx); in detect_extended_topology_early() 95 unsigned int eax, ebx, ecx, edx, sub_index; in detect_extended_topology() local 110 cpuid_count(leaf, SMT_LEVEL, &eax, &ebx, &ecx, &edx); in detect_extended_topology() 120 cpuid_count(leaf, sub_index, &eax, &ebx, &ecx, in detect_extended_topology() [all...] |
/kernel/linux/linux-6.6/arch/x86/kernel/cpu/ |
H A D | topology.c | 24 #define LEAFB_SUBTYPE(ecx) (((ecx) >> 8) & 0xff) 37 unsigned int eax, ebx, ecx, edx; in check_extended_topology_leaf() local 39 cpuid_count(leaf, SMT_LEVEL, &eax, &ebx, &ecx, &edx); in check_extended_topology_leaf() 41 if (ebx == 0 || (LEAFB_SUBTYPE(ecx) != SMT_TYPE)) in check_extended_topology_leaf() 68 unsigned int eax, ebx, ecx, edx; in detect_extended_topology_early() local 77 cpuid_count(leaf, SMT_LEVEL, &eax, &ebx, &ecx, &edx); in detect_extended_topology_early() 95 unsigned int eax, ebx, ecx, edx, sub_index; in detect_extended_topology() local 110 cpuid_count(leaf, SMT_LEVEL, &eax, &ebx, &ecx, &edx); in detect_extended_topology() 120 cpuid_count(leaf, sub_index, &eax, &ebx, &ecx, in detect_extended_topology() [all...] |
/kernel/linux/linux-5.10/arch/x86/entry/ |
H A D | entry_32.S | 14 * 4(%esp) - %ecx 260 pushl %ecx 263 movl 4*4(%esp), %ecx # flags 264 movl %ecx, %ss:-1*4(%eax) 266 movl 3*4(%esp), %ecx # cs 267 andl $0x0000ffff, %ecx 268 movl %ecx, %ss:-2*4(%eax) 270 movl 2*4(%esp), %ecx # ip 271 movl %ecx, %ss:-3*4(%eax) 273 movl 1*4(%esp), %ecx # ea [all...] |
/kernel/linux/linux-5.10/arch/x86/um/ |
H A D | checksum_32.S | 53 movl 16(%esp),%ecx # Function arg: int len 57 subl $2, %ecx # Alignment uses up two bytes. 59 addl $2, %ecx # ecx was < 2. Deal with it. 66 movl %ecx, %edx 67 shrl $5, %ecx 87 dec %ecx 90 2: movl %edx, %ecx 99 4: andl $3, %ecx 101 cmpl $2, %ecx [all...] |
/kernel/linux/linux-5.10/drivers/gpu/drm/vmwgfx/ |
H A D | vmwgfx_msg.h | 52 * @ecx: [OUT] e.g. status from a non-HB message status command 59 eax, ebx, ecx, edx, si, di) \ 64 "=c"(ecx), \ 94 * @ecx: [OUT] e.g. status from a non-HB message status command 103 eax, ebx, ecx, edx, si, di) \ 111 "=c"(ecx), \ 128 eax, ebx, ecx, edx, si, di) \ 136 "=c"(ecx), \ 162 eax, ebx, ecx, edx, si, di) \ 172 "=c"(ecx), \ [all...] |
H A D | vmwgfx_msg.c | 92 unsigned long eax, ebx, ecx, edx, si = 0, di = 0; in vmw_open_channel() local 98 eax, ebx, ecx, edx, si, di); in vmw_open_channel() 100 if ((HIGH_WORD(ecx) & MESSAGE_STATUS_SUCCESS) == 0) in vmw_open_channel() 121 unsigned long eax, ebx, ecx, edx, si, di; in vmw_close_channel() local 131 eax, ebx, ecx, edx, si, di); in vmw_close_channel() 133 if ((HIGH_WORD(ecx) & MESSAGE_STATUS_SUCCESS) == 0) in vmw_close_channel() 151 unsigned long si, di, eax, ebx, ecx, edx; in vmw_port_hb_out() local 167 eax, ebx, ecx, edx, si, di); in vmw_port_hb_out() 173 ecx = MESSAGE_STATUS_SUCCESS << 16; in vmw_port_hb_out() 174 while (msg_len && (HIGH_WORD(ecx) in vmw_port_hb_out() 207 unsigned long si, di, eax, ebx, ecx, edx; vmw_port_hb_in() local 262 unsigned long eax, ebx, ecx, edx, si, di; vmw_send_msg() local 315 unsigned long eax, ebx, ecx, edx, si, di; vmw_recv_msg() local [all...] |
/kernel/linux/linux-6.6/drivers/gpu/drm/vmwgfx/ |
H A D | vmwgfx_msg_x86.h | 55 * @ecx: [OUT] e.g. status from a non-HB message status command 62 eax, ebx, ecx, edx, si, di) \ 67 "=c"(ecx), \ 97 * @ecx: [OUT] e.g. status from a non-HB message status command 106 eax, ebx, ecx, edx, si, di) \ 118 "=c"(ecx), \ 135 eax, ebx, ecx, edx, si, di) \ 147 "=c"(ecx), \ 173 eax, ebx, ecx, edx, si, di) \ 183 "=c"(ecx), \ [all...] |