diff options
Diffstat (limited to 'tools/intel-features/intel-mpx/test/main.cpp')
-rw-r--r-- | tools/intel-features/intel-mpx/test/main.cpp | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/tools/intel-features/intel-mpx/test/main.cpp b/tools/intel-features/intel-mpx/test/main.cpp deleted file mode 100644 index 110befb1e250..000000000000 --- a/tools/intel-features/intel-mpx/test/main.cpp +++ /dev/null @@ -1,49 +0,0 @@ -//===-- main.cpp ------------------------------------------------*- C++ -*-===// -//// -//// The LLVM Compiler Infrastructure -//// -//// This file is distributed under the University of Illinois Open Source -//// License. See LICENSE.TXT for details. -//// -////===----------------------------------------------------------------------===// -// - -const int size = 5; - -#include <cstddef> -#include <cstdlib> -#include <sys/prctl.h> - -void func(int *ptr) { - int *tmp; - -#if defined __GNUC__ && !defined __INTEL_COMPILER - __builtin___bnd_store_ptr_bounds ((void**)&ptr, ptr); -#endif - tmp = ptr + size - 1; -#if defined __GNUC__ && !defined __INTEL_COMPILER - __builtin___bnd_store_ptr_bounds ((void**)&tmp, tmp); -#endif - tmp = (int*)0x2; // Break 2. - - return; // Break 3. -} - -int -main(int argc, char const *argv[]) -{ - // This call returns 0 only if the CPU and the kernel support - // Intel(R) Memory Protection Extensions (Intel(R) MPX). - if (prctl(PR_MPX_ENABLE_MANAGEMENT, 0, 0, 0, 0) != 0) - return -1; - - int* a = (int *) calloc(size, sizeof(int)); -#if defined __GNUC__ && !defined __INTEL_COMPILER - __builtin___bnd_store_ptr_bounds ((void**)&a, a); -#endif - func(a); // Break 1. - - free(a); // Break 4. - - return 0; -} |