1
0
mirror of https://github.com/exaloop/codon.git synced 2025-06-03 15:03:52 +08:00
2021-09-27 14:02:44 -04:00

36 lines
838 B
C++

#pragma once
#include "sir/value.h"
namespace seq {
namespace ir {
class Value;
namespace transform {
namespace parallel {
struct OMPSched {
int code;
bool dynamic;
Value *threads;
Value *chunk;
bool ordered;
explicit OMPSched(int code = -1, bool dynamic = false, Value *threads = nullptr,
Value *chunk = nullptr, bool ordered = false);
explicit OMPSched(const std::string &code, Value *threads = nullptr,
Value *chunk = nullptr, bool ordered = false);
OMPSched(const OMPSched &s)
: code(s.code), dynamic(s.dynamic), threads(s.threads), chunk(s.chunk),
ordered(s.ordered) {}
std::vector<Value *> getUsedValues() const;
int replaceUsedValue(id_t id, Value *newValue);
};
} // namespace parallel
} // namespace transform
} // namespace ir
} // namespace seq