Skip to content

Commit 70916cb

Browse files
authored
Remove COMPILER_IBMXL macro for z/OS (#1777)
COMPILER_IBMXL identifies the Clang based IBM XL compiler (xlclang) on z/OS. This compiler is obsolete and replaced by the Open XL compiler, so the macro is no longer needed and the existing code would lead to incorrect asm syntax for Open XL.
1 parent f3ec7b8 commit 70916cb

File tree

2 files changed

+4
-7
lines changed

2 files changed

+4
-7
lines changed

src/cycleclock.h

+3-2
Original file line numberDiff line numberDiff line change
@@ -181,10 +181,11 @@ inline BENCHMARK_ALWAYS_INLINE int64_t Now() {
181181
#elif defined(__s390__) // Covers both s390 and s390x.
182182
// Return the CPU clock.
183183
uint64_t tsc;
184-
#if defined(BENCHMARK_OS_ZOS) && defined(COMPILER_IBMXL)
185-
// z/OS XL compiler HLASM syntax.
184+
#if defined(BENCHMARK_OS_ZOS)
185+
// z/OS HLASM syntax.
186186
asm(" stck %0" : "=m"(tsc) : : "cc");
187187
#else
188+
// Linux on Z syntax.
188189
asm("stck %0" : "=Q"(tsc) : : "cc");
189190
#endif
190191
return tsc;

src/internal_macros.h

+1-5
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,7 @@
1111
#endif
1212

1313
#if defined(__clang__)
14-
#if defined(__ibmxl__)
15-
#if !defined(COMPILER_IBMXL)
16-
#define COMPILER_IBMXL
17-
#endif
18-
#elif !defined(COMPILER_CLANG)
14+
#if !defined(COMPILER_CLANG)
1915
#define COMPILER_CLANG
2016
#endif
2117
#elif defined(_MSC_VER)

0 commit comments

Comments
 (0)