diff options
author | Uros Bizjak <ubizjak@gmail.com> | 2025-08-29 09:05:23 +0200 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2025-08-29 09:05:23 +0200 |
commit | 119d658ac2aad88e306b4a66c1717e5ebf86c73f (patch) | |
tree | 981d711d8d3598e569977b2e16bcb5c30f76fecf /sysdeps/sparc | |
parent | 9a1cb8f783cb98d4c5fd180c43855fdbb74fbe71 (diff) | |
download | glibc-119d658ac2aad88e306b4a66c1717e5ebf86c73f.zip glibc-119d658ac2aad88e306b4a66c1717e5ebf86c73f.tar.gz glibc-119d658ac2aad88e306b4a66c1717e5ebf86c73f.tar.bz2 |
x86: Use flag output operands for inline asm in atomic-machine.h
Use the flag output constraints feature available in gcc 6+
("=@cc<cond>") instead of explicitly setting a boolean variable
with SETcc instruction. This approach decouples the instruction
that sets the flags from the code that consumes them, allowing
the compiler to create better code when working with flags users.
Instead of e.g.:
lock add %esi,(%rdi)
sets %sil
test %sil,%sil
jne <...>
the compiler now generates:
lock add %esi,(%rdi)
js <...>
No functional changes intended.
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
Cc: H.J.Lu <hjl.tools@gmail.com>
Cc: Florian Weimer <fweimer@redhat.com>
Cc: Carlos O'Donell <carlos@redhat.com>
Reviewed-by: Florian Weimer <fweimer@redhat.com>
Diffstat (limited to 'sysdeps/sparc')
0 files changed, 0 insertions, 0 deletions