blob: bd1bf149147246640e62a489e0d8c9d7388a3745 [file] [log] [blame]
CPPSRC = BC.cpp
EXECUTABLE = bc.gem5
# BC has a compilation error in host code with ROCm 4.0, so O2 and O3 do not
# pass even on real GPUs
OPTS = -O1
HIP_PATH ?= /opt/rocm/hip
HIPCC = $(HIP_PATH)/bin/hipcc
# these are needed for m5ops
GEM5_PATH ?= /path/to/gem5
CFLAGS += -I$(GEM5_PATH)/include -I../graph_parser
LDFLAGS += -L$(GEM5_PATH)/util/m5/build/x86/out -lm5
BIN_DIR ?= ./bin
all: $(BIN_DIR)/$(EXECUTABLE)
$(BIN_DIR)/$(EXECUTABLE): $(CPPSRC) ../graph_parser/util.cpp $(BIN_DIR)
$(HIPCC) $(OPTS) --amdgpu-target=gfx801,gfx803 $(CXXFLAGS) ../graph_parser/util.cpp $(CPPSRC) -DGEM5_FUSION -o $(BIN_DIR)/$(EXECUTABLE) $(CFLAGS) $(LDFLAGS)
$(BIN_DIR):
mkdir -p $(BIN_DIR)
clean:
rm -rf $(BIN_DIR)
.PHONY: bc clean