From 972c0800830ae6ad6ff01f4cbdb5b8588dcf85ce Mon Sep 17 00:00:00 2001 From: Artur Harasimiuk Date: Thu, 24 May 2018 11:06:30 +0200 Subject: [PATCH] enable & switch to clang 6.0 Change-Id: I61910614ddaa37db18a3d995fa94efb03238279a Signed-off-by: Artur Harasimiuk --- manifests/manifest.yml | 2 +- runtime/built_ins/built_ins.cpp | 1 + runtime/built_ins/built_ins.h | 2 ++ runtime/built_ins/builtins_dispatch_builder.h | 1 + runtime/helpers/kmd_notify_properties.h | 1 + .../windows/d3d_sharing_functions.h | 4 ++-- runtime/sharings/sharing_factory.h | 1 + runtime/sharings/va/va_sharing_functions.h | 2 +- runtime/utilities/arrayref.h | 18 +++++++++++------- unit_tests/.clang-tidy | 2 +- .../enqueue_debug_kernel_tests.cpp | 2 ++ unit_tests/os_interface/linux/.clang-tidy | 3 +-- .../sharings/va/va_sharing_linux_tests.cpp | 6 +++--- 13 files changed, 28 insertions(+), 17 deletions(-) diff --git a/manifests/manifest.yml b/manifests/manifest.yml index 585cf59743..22026a67ca 100644 --- a/manifests/manifest.yml +++ b/manifests/manifest.yml @@ -17,7 +17,7 @@ components: branch: infra clean_on_sync: true dest_dir: infra - revision: 8b13573ecf55f1f1142a815fdc181d34c29c7574 + revision: 5a57e424807a4fb6a2e4146211b8ae421baa3e30 type: git internal: branch: master diff --git a/runtime/built_ins/built_ins.cpp b/runtime/built_ins/built_ins.cpp index 3ab936536d..38a543b6a2 100644 --- a/runtime/built_ins/built_ins.cpp +++ b/runtime/built_ins/built_ins.cpp @@ -107,6 +107,7 @@ SchedulerKernel &BuiltIns::getSchedulerKernel(Context &context) { }; std::call_once(schedulerBuiltIn.programIsInitialized, initializeSchedulerProgramAndKernel); + UNRECOVERABLE_IF(schedulerBuiltIn.pKernel == nullptr); return *static_cast(schedulerBuiltIn.pKernel); } diff --git a/runtime/built_ins/built_ins.h b/runtime/built_ins/built_ins.h index 2d1b7baadb..f210cdcc2a 100644 --- a/runtime/built_ins/built_ins.h +++ b/runtime/built_ins/built_ins.h @@ -80,6 +80,8 @@ class Storage { : rootPath(rootPath) { } + virtual ~Storage() = default; + BuiltinResourceT load(const std::string &resourceName); protected: diff --git a/runtime/built_ins/builtins_dispatch_builder.h b/runtime/built_ins/builtins_dispatch_builder.h index 676f7ec7d8..ec9c7ee5c2 100644 --- a/runtime/built_ins/builtins_dispatch_builder.h +++ b/runtime/built_ins/builtins_dispatch_builder.h @@ -65,6 +65,7 @@ class BuiltinDispatchInfoBuilder { }; BuiltinDispatchInfoBuilder(BuiltIns &kernelLib) : kernelsLib(kernelLib) {} + virtual ~BuiltinDispatchInfoBuilder() = default; template void populate(Context &context, Device &device, EBuiltInOps operation, const char *options, KernelsDescArgsT &&... desc); diff --git a/runtime/helpers/kmd_notify_properties.h b/runtime/helpers/kmd_notify_properties.h index 8a2573831b..0fd7aae5cd 100644 --- a/runtime/helpers/kmd_notify_properties.h +++ b/runtime/helpers/kmd_notify_properties.h @@ -48,6 +48,7 @@ class KmdNotifyHelper { public: KmdNotifyHelper() = delete; KmdNotifyHelper(const KmdNotifyProperties *properties) : properties(properties){}; + MOCKABLE_VIRTUAL ~KmdNotifyHelper() = default; bool obtainTimeoutParams(int64_t &timeoutValueOutput, bool quickKmdSleepRequest, diff --git a/runtime/os_interface/windows/d3d_sharing_functions.h b/runtime/os_interface/windows/d3d_sharing_functions.h index 27e0862ced..2e748541e7 100644 --- a/runtime/os_interface/windows/d3d_sharing_functions.h +++ b/runtime/os_interface/windows/d3d_sharing_functions.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, Intel Corporation + * Copyright (c) 2017 - 2018, Intel Corporation * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -103,7 +103,7 @@ class D3DSharingFunctions : public SharingFunctions { } D3DSharingFunctions() = delete; - virtual ~D3DSharingFunctions(){}; + static const uint32_t sharingId; MOCKABLE_VIRTUAL void createQuery(D3DQuery **query); diff --git a/runtime/sharings/sharing_factory.h b/runtime/sharings/sharing_factory.h index b240287995..5629ae65e3 100644 --- a/runtime/sharings/sharing_factory.h +++ b/runtime/sharings/sharing_factory.h @@ -48,6 +48,7 @@ class SharingContextBuilder { class SharingBuilderFactory { public: + virtual ~SharingBuilderFactory() = default; virtual std::unique_ptr createContextBuilder() = 0; virtual std::string getExtensions() = 0; virtual void fillGlobalDispatchTable() = 0; diff --git a/runtime/sharings/va/va_sharing_functions.h b/runtime/sharings/va/va_sharing_functions.h index 48b7aebb92..8065ee58d5 100644 --- a/runtime/sharings/va/va_sharing_functions.h +++ b/runtime/sharings/va/va_sharing_functions.h @@ -29,7 +29,7 @@ namespace OCLRT { class VASharingFunctions : public SharingFunctions { public: VASharingFunctions(VADisplay vaDisplay); - ~VASharingFunctions(); + ~VASharingFunctions() override; uint32_t getId() const override { return VASharingFunctions::sharingId; diff --git a/runtime/utilities/arrayref.h b/runtime/utilities/arrayref.h index 62efc0d848..67c51362e5 100644 --- a/runtime/utilities/arrayref.h +++ b/runtime/utilities/arrayref.h @@ -33,8 +33,14 @@ class ArrayRef { using const_iterator = const DataType *; template - ArrayRef(IteratorType b, IteratorType e) - : b(&*b), e(&*(e - 1) + 1) { + ArrayRef(IteratorType b, IteratorType e) { + if (b != nullptr) { + this->b = &*b; + this->e = &*(e - 1) + 1; + } else { + this->b = nullptr; + this->e = nullptr; + } } template @@ -52,9 +58,7 @@ class ArrayRef { : b(&array[0]), e(&array[Size]) { } - ArrayRef() - : b(0), e(0) { - } + ArrayRef() = default; size_t size() const { return e - b; @@ -94,8 +98,8 @@ class ArrayRef { } private: - DataType *b; - DataType *e; + DataType *b = nullptr; + DataType *e = nullptr; }; template diff --git a/unit_tests/.clang-tidy b/unit_tests/.clang-tidy index 6a491db76b..ed97f94d88 100644 --- a/unit_tests/.clang-tidy +++ b/unit_tests/.clang-tidy @@ -1,5 +1,5 @@ --- -Checks: 'clang-diagnostic-*,clang-analyzer-*,google-default-arguments,modernize-use-override,modernize-use-default-member-init,-clang-analyzer-alpha*,readability-identifier-naming,-clang-analyzer-core.StackAddressEscape,-clang-analyzer-optin.performance.Padding,-clang-analyzer-security.insecureAPI.strcpy,-clang-analyzer-cplusplus.NewDeleteLeaks,-clang-analyzer-core.CallAndMessage,-clang-analyzer-core.uninitialized.Assign,-clang-analyzer-unix.MismatchedDeallocator,-clang-analyzer-core.NonNullParamChecker,-clang-analyzer-core.NullDereference,-clang-analyzer-cplusplus.NewDelete' +Checks: 'clang-diagnostic-*,clang-analyzer-*,google-default-arguments,modernize-use-override,modernize-use-default-member-init,-clang-analyzer-alpha*,readability-identifier-naming,-clang-analyzer-core.StackAddressEscape,-clang-analyzer-optin.performance.Padding,-clang-analyzer-security.insecureAPI.strcpy,-clang-analyzer-cplusplus.NewDeleteLeaks,-clang-analyzer-core.CallAndMessage,-clang-analyzer-core.uninitialized.Assign,-clang-analyzer-unix.MismatchedDeallocator,-clang-analyzer-core.NonNullParamChecker,-clang-analyzer-core.NullDereference,-clang-analyzer-cplusplus.NewDelete,-clang-analyzer-optin.cplusplus.VirtualCall' # WarningsAsErrors: '.*' HeaderFilterRegex: 'runtime/' AnalyzeTemporaryDtors: false diff --git a/unit_tests/command_queue/enqueue_debug_kernel_tests.cpp b/unit_tests/command_queue/enqueue_debug_kernel_tests.cpp index 8796e734f6..b7dfd280e1 100644 --- a/unit_tests/command_queue/enqueue_debug_kernel_tests.cpp +++ b/unit_tests/command_queue/enqueue_debug_kernel_tests.cpp @@ -157,4 +157,6 @@ HWTEST_F(EnqueueDebugKernelSimpleTest, givenKernelFromProgramWithoutDebugEnabled size_t gws[] = {1, 1, 1}; mockCmdQ->enqueueKernel(kernel.get(), 1, nullptr, gws, nullptr, 0, nullptr, nullptr); + + ::testing::Mock::VerifyAndClearExpectations(mockCmdQ.get()); } diff --git a/unit_tests/os_interface/linux/.clang-tidy b/unit_tests/os_interface/linux/.clang-tidy index cae29226af..a83341e8af 100644 --- a/unit_tests/os_interface/linux/.clang-tidy +++ b/unit_tests/os_interface/linux/.clang-tidy @@ -1,6 +1,5 @@ --- -Checks: 'clang-diagnostic-*,clang-analyzer-*,google-default-arguments,modernize-use-override,modernize-use-default-member-init,-clang-analyzer-alpha*,readability-identifier-naming,-clang-analyzer-optin.performance.Padding,-clang-analyzer-cplusplus.NewDelete,-clang-analyzer-cplusplus.NewDeleteLeaks' - +Checks: 'clang-diagnostic-*,clang-analyzer-*,google-default-arguments,modernize-use-override,modernize-use-default-member-init,-clang-analyzer-alpha*,readability-identifier-naming,-clang-analyzer-optin.performance.Padding,-clang-analyzer-cplusplus.NewDelete,-clang-analyzer-cplusplus.NewDeleteLeaks,-clang-analyzer-optin.cplusplus.VirtualCall' # WarningsAsErrors: '.*' HeaderFilterRegex: 'runtime/' diff --git a/unit_tests/sharings/va/va_sharing_linux_tests.cpp b/unit_tests/sharings/va/va_sharing_linux_tests.cpp index a8516aa56b..727636a2f3 100644 --- a/unit_tests/sharings/va/va_sharing_linux_tests.cpp +++ b/unit_tests/sharings/va/va_sharing_linux_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, Intel Corporation + * Copyright (c) 2017 - 2018, Intel Corporation * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -81,8 +81,8 @@ TEST(VASharingFunctions, GivenInitFunctionsWhenDLOpenFailsThenFunctionsAreNull) EXPECT_TRUE(functions.wereFunctionsAssignedNull()); } -VAPrivFunc GetLibFunc(VADisplay vaDisplay, const char *func) { - return (VAPrivFunc)0xdeadbeef; +void *GetLibFunc(VADisplay vaDisplay, const char *func) { + return (void *)0xdeadbeef; } TEST(VASharingFunctions, GivenInitFunctionsWhenDLOpenSuccedsThenFunctionsAreNotNull) {