Remove use of VL_INLINE_OPT macro (#6507)
This commit is contained in:
parent
5247e40659
commit
5cd8bd0356
|
|
@ -166,11 +166,6 @@ Unfortunately, using the optimizer with SystemC files can result in
|
|||
compilation taking several minutes. (The SystemC libraries have many little
|
||||
inlined functions that drive the compiler nuts.)
|
||||
|
||||
If using your own makefiles, you may want to compile the Verilated
|
||||
code with ``--MAKEFLAGS -DVL_INLINE_OPT=inline``. This will inline
|
||||
functions; however, this requires that all cpp files be compiled in a single
|
||||
compiler run.
|
||||
|
||||
You may uncover further tuning possibilities by profiling the Verilog code.
|
||||
See :ref:`profiling`.
|
||||
|
||||
|
|
|
|||
|
|
@ -312,8 +312,10 @@
|
|||
//=========================================================================
|
||||
// Optimization
|
||||
|
||||
#ifndef VL_INLINE_OPT
|
||||
# define VL_INLINE_OPT ///< "inline" if compiling all objects in single compiler run
|
||||
#ifndef VL_NO_LEGACY
|
||||
# ifndef VL_INLINE_OPT
|
||||
# define VL_INLINE_OPT // Historical, has no effect on Verilated models.
|
||||
# endif
|
||||
#endif
|
||||
|
||||
//=========================================================================
|
||||
|
|
|
|||
|
|
@ -534,7 +534,6 @@ class AstCFunc final : public AstNode {
|
|||
// an explicitly passed 'self' pointer as the first argument. This can
|
||||
// be slightly faster due to __restrict, and we do not declare in header
|
||||
// so adding/removing loose functions doesn't recompile everything.
|
||||
bool m_isInline : 1; // Inline function
|
||||
bool m_isVirtual : 1; // Virtual function
|
||||
bool m_entryPoint : 1; // User may call into this top level function
|
||||
bool m_dpiPure : 1; // Pure DPI function
|
||||
|
|
@ -564,7 +563,6 @@ public:
|
|||
m_isDestructor = false;
|
||||
m_isMethod = true;
|
||||
m_isLoose = false;
|
||||
m_isInline = false;
|
||||
m_isVirtual = false;
|
||||
m_needProcess = false;
|
||||
m_entryPoint = false;
|
||||
|
|
@ -606,7 +604,6 @@ public:
|
|||
void rtnType(const string& rtnType) { m_rtnType = rtnType; }
|
||||
bool dontCombine() const { return m_dontCombine || isTrace() || entryPoint(); }
|
||||
void dontCombine(bool flag) { m_dontCombine = flag; }
|
||||
bool dontInline() const { return dontCombine() || slow() || funcPublic(); }
|
||||
bool declPrivate() const { return m_declPrivate; }
|
||||
void declPrivate(bool flag) { m_declPrivate = flag; }
|
||||
bool keepIfEmpty() const VL_MT_SAFE { return m_keepIfEmpty; }
|
||||
|
|
@ -628,8 +625,6 @@ public:
|
|||
bool isLoose() const { return m_isLoose; }
|
||||
void isLoose(bool flag) { m_isLoose = flag; }
|
||||
bool isProperMethod() const { return isMethod() && !isLoose(); }
|
||||
bool isInline() const { return m_isInline; }
|
||||
void isInline(bool flag) { m_isInline = flag; }
|
||||
bool isVirtual() const { return m_isVirtual; }
|
||||
void isVirtual(bool flag) { m_isVirtual = flag; }
|
||||
bool needProcess() const { return m_needProcess; }
|
||||
|
|
|
|||
|
|
@ -56,11 +56,6 @@ class BranchVisitor final : public VNVisitorConst {
|
|||
} // else leave unknown
|
||||
}
|
||||
|
||||
void visit(AstCFunc* nodep) override {
|
||||
if (!nodep->dontInline()) nodep->isInline(true);
|
||||
iterateChildrenConst(nodep);
|
||||
}
|
||||
|
||||
void visit(AstNode* nodep) override {
|
||||
if (nodep->isUnlikely()) {
|
||||
UINFO(4, " UNLIKELY: " << nodep);
|
||||
|
|
|
|||
|
|
@ -334,7 +334,6 @@ public:
|
|||
puts("\n");
|
||||
m_lazyDecls.emit(nodep);
|
||||
if (nodep->ifdef() != "") putns(nodep, "#ifdef " + nodep->ifdef() + "\n");
|
||||
if (nodep->isInline()) putns(nodep, "VL_INLINE_OPT ");
|
||||
emitCFuncHeader(nodep, m_modp, /* withScope: */ true);
|
||||
|
||||
if (nodep->isConstructor()) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue