mirror of
https://github.com/verilator/verilator.git
synced 2025-02-08 06:32:24 +00:00
45 lines
1.3 KiB
C++
45 lines
1.3 KiB
C++
|
// -*- mode: C++; c-file-style: "cc-mode" -*-
|
||
|
//
|
||
|
//*************************************************************************
|
||
|
//
|
||
|
// Code available from: https://verilator.org
|
||
|
//
|
||
|
// Copyright 2022-2023 by Wilson Snyder. This program is free software; you can
|
||
|
// redistribute it and/or modify it under the terms of either the GNU
|
||
|
// Lesser General Public License Version 3 or the Perl Artistic License
|
||
|
// Version 2.0.
|
||
|
// SPDX-License-Identifier: LGPL-3.0-only OR Artistic-2.0
|
||
|
//
|
||
|
//*************************************************************************
|
||
|
|
||
|
#define VL_MT_DISABLED_CODE_UNIT 1
|
||
|
|
||
|
#include "mt_disabled.h"
|
||
|
#include "mt_enabled.h"
|
||
|
|
||
|
void unannotatedMtDisabledFunctionBad() {
|
||
|
}
|
||
|
|
||
|
void UnannotatedMtDisabledClass::unannotatedMtDisabledMethodBad() {
|
||
|
}
|
||
|
|
||
|
void UnannotatedMtDisabledClass::unannotatedMtDisabledStaticMethodBad() {
|
||
|
}
|
||
|
|
||
|
// Declarations in .cpp don't have to be annotated with VL_MT_DISABLED.
|
||
|
void annotatedMtDisabledFunctionOK();
|
||
|
|
||
|
void annotatedMtDisabledFunctionOK() {
|
||
|
VerilatedMutex m;
|
||
|
// REQUIRES should be ignored and mutex locking not needed.
|
||
|
nsf_aa_VL_REQUIRES(m);
|
||
|
}
|
||
|
|
||
|
void AnnotatedMtDisabledClass::annotatedMtDisabledMethodOK() {
|
||
|
annotatedMtDisabledFunctionOK();
|
||
|
}
|
||
|
|
||
|
void AnnotatedMtDisabledClass::annotatedMtDisabledStaticMethodOK() {
|
||
|
annotatedMtDisabledFunctionOK();
|
||
|
}
|