aboutsummaryrefslogtreecommitdiff
path: root/gcc/objcp
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2025-07-24 07:38:13 -0700
committerH.J. Lu <hjl.tools@gmail.com>2025-07-28 08:05:58 -0700
commit5760ddbce26ff9c5c8851b6b2089ad65981d5078 (patch)
treeaf2c2f79acb8e032e2f0282b1f66d7a835398371 /gcc/objcp
parent86dc3b61c37946f1467466303ed29a143a952f35 (diff)
downloadgcc-master.zip
gcc-master.tar.gz
gcc-master.tar.bz2
x86: Disallow -mtls-dialect=gnu with no_caller_saved_registersHEADtrunkmaster
__tls_get_addr doesn't preserve vector registers. When a function with no_caller_saved_registers attribute calls __tls_get_addr, YMM and ZMM registers will be clobbered. Issue an error and suggest -mtls-dialect=gnu2 in this case. gcc/ PR target/121208 * config/i386/i386.cc (ix86_tls_get_addr): Issue an error for -mtls-dialect=gnu with no_caller_saved_registers attribute and suggest -mtls-dialect=gnu2. gcc/testsuite/ PR target/121208 * gcc.target/i386/pr121208-1a.c: New test. * gcc.target/i386/pr121208-1b.c: Likewise. * gcc.target/i386/pr121208-2a.c: Likewise. * gcc.target/i386/pr121208-2b.c: Likewise. * gcc.target/i386/pr121208-3a.c: Likewise. * gcc.target/i386/pr121208-3b.c: Likewise. Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
Diffstat (limited to 'gcc/objcp')
0 files changed, 0 insertions, 0 deletions