From: Roland McGrath Date: Wed, 11 Nov 2020 02:56:59 +0000 (-0800) Subject: [clang] Add missing header guard in X-Git-Tag: llvmorg-13-init~6470 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=cf36142d342a46689007df3b508b2ef059d76e46;p=platform%2Fupstream%2Fllvm.git [clang] Add missing header guard in This header has long lacked a standard multiple inclusion guard like other headers have, for no apparent reason. The GCC header of the same name likewise lacks one up through release 10.1, but trunk GCC (release 11, and perhaps future 10.x) has fixed it (see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96238). Reviewed By: phosek Differential Revision: https://reviews.llvm.org/D91226 --- diff --git a/clang/lib/Headers/cpuid.h b/clang/lib/Headers/cpuid.h index c903c3a..34f0e76 100644 --- a/clang/lib/Headers/cpuid.h +++ b/clang/lib/Headers/cpuid.h @@ -7,6 +7,9 @@ *===-----------------------------------------------------------------------=== */ +#ifndef __CPUID_H +#define __CPUID_H + #if !(__x86_64__ || __i386__) #error this header is for x86 only #endif @@ -312,3 +315,5 @@ static __inline int __get_cpuid_count (unsigned int __leaf, __cpuid_count(__leaf, __subleaf, *__eax, *__ebx, *__ecx, *__edx); return 1; } + +#endif /* __CPUID_H */ diff --git a/clang/test/Headers/cpuid.c b/clang/test/Headers/cpuid.c index b0ba07a..7e48549 100644 --- a/clang/test/Headers/cpuid.c +++ b/clang/test/Headers/cpuid.c @@ -2,6 +2,7 @@ // RUN: %clang_cc1 %s -ffreestanding -triple i386 -emit-llvm -o - | FileCheck %s --check-prefix=CHECK-32 #include +#include // Make sure multiple inclusion protection works. // CHECK-64: {{.*}} call { i32, i32, i32, i32 } asm " xchgq %rbx,${1:q}\0A cpuid\0A xchgq %rbx,${1:q}", "={ax},=r,={cx},={dx},0,~{dirflag},~{fpsr},~{flags}"(i32 %{{[a-z0-9]+}}) // CHECK-64: {{.*}} call { i32, i32, i32, i32 } asm " xchgq %rbx,${1:q}\0A cpuid\0A xchgq %rbx,${1:q}", "={ax},=r,={cx},={dx},0,2,~{dirflag},~{fpsr},~{flags}"(i32 %{{[a-z0-9]+}}, i32 %{{[a-z0-9]+}})