[git commit] powertop: fix cpuid asm: ebx saving/restoring is properly done by gcc

Denys Vlasenko vda.linux at googlemail.com
Fri Jan 7 00:33:46 UTC 2022


commit: https://git.busybox.net/busybox/commit/?id=89092c61bc37ed61bfacf10433d52b9bc4299116
branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master

function                                             old     new   delta
print_intel_cstates                                  481     477      -4

Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
 procps/powertop.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/procps/powertop.c b/procps/powertop.c
index 24c2b320f..18ddaa3ec 100644
--- a/procps/powertop.c
+++ b/procps/powertop.c
@@ -506,12 +506,9 @@ static void cpuid(unsigned int *eax, unsigned int *ebx, unsigned int *ecx,
 {
 	/* EAX value specifies what information to return */
 	asm (
-		"	pushl %%ebx\n"     /* Save EBX */
 		"	cpuid\n"
-		"	movl %%ebx, %1\n"  /* Save content of EBX */
-		"	popl %%ebx\n"      /* Restore EBX */
 		: "=a"(*eax), /* Output */
-		  "=r"(*ebx),
+		  "=b"(*ebx),
 		  "=c"(*ecx),
 		  "=d"(*edx)
 		: "0"(*eax),  /* Input */


More information about the busybox-cvs mailing list