Add assembly loops

This commit is contained in:
2023-12-02 22:18:57 +00:00
parent 43718ff047
commit 57acc5e16f
3 changed files with 189 additions and 7 deletions

View File

@@ -4,6 +4,12 @@ CC=clang
CXX=clang++
CFLAGS="-Wall -Wextra -I$(realpath ./include) "
ASM=nasm
ASM_FLAGS="-f elf64 "
AR=ar
AR_FLAGS="rcs"
# PARSE ARGUMENTS
# From this StackOverflow answer https://stackoverflow.com/a/14203146
while [[ $# > 0 ]];do
@@ -71,6 +77,18 @@ MEMTESTOUT=memtest
(set -x ; $CC $CFLAGS $MEMTESTSRC -o $MEMTESTOUT)
echo
# REPTEST ASSEMBLY
ASM_BUILD_DIR=reptest_build
ASM_SRC="./src/repetition_testing/reptest_functions.asm"
ASM_OBJ="./$ASM_BUILD_DIR/funcs.o"
ASM_LIB="./$ASM_BUILD_DIR/libfuncs.a"
mkdir $ASM_BUILD_DIR
(set -x ; $ASM $ASM_FLAGS $ASM_SRC -o $ASM_OBJ)
(set -x ; $AR $AR_FLAGS $ASM_LIB $ASM_OBJ)
echo
if [[ $BASIC_PROFILING == true ]] || [[ $FULL_PROFILING == true ]]; then
if [[ $FULL_PROFILING == true ]]; then
JSONFLAGS+="-DFULL_PROFILING"
@@ -95,7 +113,7 @@ if [[ $BASIC_PROFILING == true ]] || [[ $FULL_PROFILING == true ]]; then
cd ../
# REPETITION TESTING
REPTESTSRC="./src/repetition_testing/*.cpp ./$PROF_BUILD_DIR/*.o"
REPTESTSRC="./src/repetition_testing/*.cpp ./$PROF_BUILD_DIR/*.o $ASM_LIB"
REPTESTOUT=reptest
(set -x ; $CXX $CFLAGS $REPTESTFLAGS $REPTESTSRC -o $REPTESTOUT)
@@ -114,4 +132,4 @@ cd ../
echo
# CLEAR BUILD FILES
rm -rvf $JSON_BUILD_DIR $PROF_BUILD_DIR
rm -rvf $JSON_BUILD_DIR $PROF_BUILD_DIR $ASM_BUILD_DIR