mirror of
https://github.com/rdolbeau/VexRiscvBPluginGenerator.git
synced 2025-04-18 18:44:42 -04:00
Factorize R5 compilers in Makefiles
This commit is contained in:
parent
f445689eea
commit
3de1b5bf23
13 changed files with 119 additions and 177 deletions
9
Makefile
9
Makefile
|
@ -4,6 +4,8 @@ DEPXX=$(SRCXX:.cpp=.d)
|
|||
OBJ=inst_par.o inst_lex.o
|
||||
LEX=flex
|
||||
YACC=bison -d #--report-file=bison.log --report=all
|
||||
CC=gcc
|
||||
CFLAGS=-O2
|
||||
CXX=g++
|
||||
CXXFLAGS=-O2
|
||||
|
||||
|
@ -134,19 +136,22 @@ R5B_OPT=-Os -march=rv32imab -mabi=ilp32 -I.
|
|||
R5IMA_TOOLCHAIN=/home/dolbeau2/LITEX/buildroot-rv32/output/host
|
||||
R5IMA_GCC=$(R5IMA_TOOLCHAIN)/bin/riscv32-buildroot-linux-gnu-gcc
|
||||
R5IMA_OPT=-Os -march=rv32ima -mabi=ilp32 -I.
|
||||
R5IMA_STRIP=$(R5IMA_TOOLCHAIN)/riscv32-buildroot-linux-gnu-strip
|
||||
|
||||
NEWINST_H=new_instructions_support_b.h new_instructions_support.h new_instructions_support_k.h new_instructions_support_p.h
|
||||
|
||||
tests: test_b test_p
|
||||
|
||||
signal.o: signal.c
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) -c $< -o $@
|
||||
|
||||
test_b.S: test_b.c
|
||||
test_b.S: test_b.c $(NEWINST_H)
|
||||
$(R5B_GCC) $(R5B_OPT) -DCHECK_SIGILL -S $< -o $@
|
||||
|
||||
test_p.S: test_p.c
|
||||
$(R5B_GCC) $(R5B_OPT) -DCHECK_SIGILL -S $< -o $@
|
||||
|
||||
test_b.o: test_b.S
|
||||
test_b.o: test_b.S $(NEWINST_H)
|
||||
$(R5B_GCC) $(R5B_OPT) -DCHECK_SIGILL -c $< -o $@
|
||||
|
||||
test_p.o: test_p.S
|
||||
|
|
|
@ -2,17 +2,10 @@ SRCs=encrypt.c try-anything.c verify.c
|
|||
OBJs=$(SRCs:.c=.o)
|
||||
SCLIBS=cpucycles.o kernelrandombytes.o
|
||||
|
||||
COMPDIR=~dolbeau2/LITEX/buildroot-rv32/output/host
|
||||
ALTCOMPDIR=/opt/riscv64b
|
||||
include ../r5.mk
|
||||
|
||||
CC=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-gcc
|
||||
ALTCC=$(ALTCOMPDIR)/bin/riscv64-unknown-elf-gcc
|
||||
CXX=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-g++
|
||||
STRIP=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-strip
|
||||
NEWOPT=-march=rv32imab -mabi=ilp32 -I. -I.. -O3 -DRV32B #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
OPT=-march=rv32ima -mabi=ilp32 -I. -I.. -O3 #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
#ALTCC=$(CC)
|
||||
#NEWOPT=$(OPT)
|
||||
R5IMA_OPT+=-I..
|
||||
R5B_OPT+=-I.. -DRV32B -DRV32K
|
||||
|
||||
all: aeadaes256ocbtaglen128v1 aeadaes256ocbtaglen128v1_small
|
||||
|
||||
|
@ -20,28 +13,28 @@ clean:
|
|||
rm -f $(OBJs) *.S try.o try_small.o encrypt.o aeadaes256ocbtaglen128v1 aeadaes256ocbtaglen128v1_small
|
||||
|
||||
%.o: %.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try_small.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@ -DSMALL
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@ -DSMALL
|
||||
|
||||
encrypt.S: encrypt.c
|
||||
$(ALTCC) $(NEWOPT) $< -S -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -S -o $@
|
||||
|
||||
encrypt.o: encrypt.S
|
||||
$(ALTCC) $(NEWOPT) $< -c -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -c -o $@
|
||||
|
||||
aeadaes256ocbtaglen128v1: $(OBJs) encrypt.o try.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
aeadaes256ocbtaglen128v1_small: $(OBJs) encrypt.o try_small.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
kernelrandombytes.o: random.cpp
|
||||
$(CXX) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
cpucycles.o: riscv.c
|
||||
$(CC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
$(R5IMA_GCC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
|
|
|
@ -2,17 +2,10 @@ SRCs=riscv32.c try-anything.c
|
|||
OBJs=$(SRCs:.c=.o)
|
||||
SCLIBS=cpucycles.o kernelrandombytes.o
|
||||
|
||||
COMPDIR=~dolbeau2/LITEX/buildroot-rv32/output/host
|
||||
ALTCOMPDIR=/opt/riscv64b
|
||||
include ../r5.mk
|
||||
|
||||
CC=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-gcc
|
||||
ALTCC=$(ALTCOMPDIR)/bin/riscv64-unknown-elf-gcc
|
||||
CXX=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-g++
|
||||
STRIP=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-strip
|
||||
NEWOPT=-march=rv32imab -mabi=ilp32 -I. -I.. -O3 -DRV32B #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
OPT=-march=rv32ima -mabi=ilp32 -I. -I.. -O3 #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
#ALTCC=$(CC)
|
||||
#NEWOPT=$(OPT)
|
||||
R5IMA_OPT+=-I..
|
||||
R5B_OPT+=-I.. -DRV32B -DRV32K
|
||||
|
||||
all: aes256ctr aes256ctr_small
|
||||
|
||||
|
@ -20,28 +13,28 @@ clean:
|
|||
rm -f $(OBJs) *.S try.o try_small.o riscv32.o aes256ctr aes256ctr_small
|
||||
|
||||
%.o: %.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try_small.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@ -DSMALL
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@ -DSMALL
|
||||
|
||||
riscv32.S: riscv32.c
|
||||
$(ALTCC) $(NEWOPT) $< -S -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -S -o $@
|
||||
|
||||
riscv32.o: riscv32.S
|
||||
$(ALTCC) $(NEWOPT) $< -c -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -c -o $@
|
||||
|
||||
aes256ctr: $(OBJs) riscv32.o try.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
aes256ctr_small: $(OBJs) riscv32.o try_small.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
kernelrandombytes.o: random.cpp
|
||||
$(CXX) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
cpucycles.o: riscv.c
|
||||
$(CC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
$(R5IMA_GCC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
|
|
|
@ -2,23 +2,10 @@ SRCs=core.c try-anything.c
|
|||
OBJs=$(SRCs:.c=.o)
|
||||
SCLIBS=cpucycles.o kernelrandombytes.o
|
||||
|
||||
COMPDIR=~dolbeau2/LITEX/buildroot-rv32/output/host
|
||||
ALTCOMPDIR=/opt/riscv64b
|
||||
include ../r5.mk
|
||||
|
||||
CC=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-gcc
|
||||
ALTCC=$(ALTCOMPDIR)/bin/riscv64-unknown-elf-gcc
|
||||
CXX=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-g++
|
||||
STRIP=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-strip
|
||||
NEWOPT=-march=rv32imab -mabi=ilp32 -I. -I.. -O3 -DRV32B #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
OPT=-march=rv32ima -mabi=ilp32 -I. -I.. -O3 #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
#ALTCC=$(CC)
|
||||
#NEWOPT=$(OPT)
|
||||
|
||||
# CC=gcc
|
||||
# CXX=g++
|
||||
# ALTCC=$(CC)
|
||||
# OPT=-O2
|
||||
# NEWOPT=$(OPT)
|
||||
R5IMA_OPT+=-I..
|
||||
R5B_OPT+=-I.. -DRV32B -DRV32K
|
||||
|
||||
all: aes256decrypt aes256decrypt_small
|
||||
|
||||
|
@ -26,28 +13,28 @@ clean:
|
|||
rm -f $(OBJs) *.S try.o try_small.o core.o aes256decrypt aes256decrypt_small
|
||||
|
||||
%.o: %.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try_small.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@ -DSMALL
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@ -DSMALL
|
||||
|
||||
core.S: core.c
|
||||
$(ALTCC) $(NEWOPT) $< -S -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -S -o $@
|
||||
|
||||
core.o: core.S
|
||||
$(ALTCC) $(NEWOPT) $< -c -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -c -o $@
|
||||
|
||||
aes256decrypt: $(OBJs) core.o try.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
aes256decrypt_small: $(OBJs) core.o try_small.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
kernelrandombytes.o: random.cpp
|
||||
$(CXX) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
cpucycles.o: riscv.c
|
||||
$(CC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
$(R5IMA_GCC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
|
|
|
@ -2,17 +2,10 @@ SRCs=core.c try-anything.c
|
|||
OBJs=$(SRCs:.c=.o)
|
||||
SCLIBS=cpucycles.o kernelrandombytes.o
|
||||
|
||||
COMPDIR=~dolbeau2/LITEX/buildroot-rv32/output/host
|
||||
ALTCOMPDIR=/opt/riscv64b
|
||||
include ../r5.mk
|
||||
|
||||
CC=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-gcc
|
||||
ALTCC=$(ALTCOMPDIR)/bin/riscv64-unknown-elf-gcc
|
||||
CXX=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-g++
|
||||
STRIP=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-strip
|
||||
NEWOPT=-march=rv32imab -mabi=ilp32 -I. -I.. -O3 -DRV32B #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
OPT=-march=rv32ima -mabi=ilp32 -I. -I.. -O3 #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
#ALTCC=$(CC)
|
||||
#NEWOPT=$(OPT)
|
||||
R5IMA_OPT+=-I..
|
||||
R5B_OPT+=-I.. -DRV32B -DRV32K
|
||||
|
||||
all: aes256encrypt aes256encrypt_small
|
||||
|
||||
|
@ -20,28 +13,28 @@ clean:
|
|||
rm -f $(OBJs) *.S try.o try_small.o core.o aes256encrypt aes256encrypt_small
|
||||
|
||||
%.o: %.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try_small.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@ -DSMALL
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@ -DSMALL
|
||||
|
||||
core.S: core.c
|
||||
$(ALTCC) $(NEWOPT) $< -S -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -S -o $@
|
||||
|
||||
core.o: core.S
|
||||
$(ALTCC) $(NEWOPT) $< -c -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -c -o $@
|
||||
|
||||
aes256encrypt: $(OBJs) core.o try.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
aes256encrypt_small: $(OBJs) core.o try_small.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
kernelrandombytes.o: random.cpp
|
||||
$(CXX) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
cpucycles.o: riscv.c
|
||||
$(CC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
$(R5IMA_GCC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
|
|
|
@ -2,17 +2,10 @@ SRCs=encrypt.c try-anything.c verify.c
|
|||
OBJs=$(SRCs:.c=.o)
|
||||
SCLIBS=cpucycles.o kernelrandombytes.o
|
||||
|
||||
COMPDIR=~dolbeau2/LITEX/buildroot-rv32/output/host
|
||||
ALTCOMPDIR=/opt/riscv64b
|
||||
include ../r5.mk
|
||||
|
||||
CC=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-gcc
|
||||
ALTCC=$(ALTCOMPDIR)/bin/riscv64-unknown-elf-gcc
|
||||
CXX=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-g++
|
||||
STRIP=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-strip
|
||||
NEWOPT=-march=rv32imab -mabi=ilp32 -I. -I.. -O3 -DRV32B #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
OPT=-march=rv32ima -mabi=ilp32 -I. -I.. -O3 #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
#ALTCC=$(CC)
|
||||
#NEWOPT=$(OPT)
|
||||
R5IMA_OPT+=-I..
|
||||
R5B_OPT+=-I.. -DRV32B -DRV32K
|
||||
|
||||
all: aes256gcmv1 aes256gcmv1_small
|
||||
|
||||
|
@ -20,28 +13,28 @@ clean:
|
|||
rm -f $(OBJs) *.S try.o try_small.o encrypt.o aes256gcmv1 aes256gcmv1_small
|
||||
|
||||
%.o: %.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try_small.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@ -DSMALL
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@ -DSMALL
|
||||
|
||||
encrypt.S: encrypt.c
|
||||
$(ALTCC) $(NEWOPT) $< -S -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -S -o $@
|
||||
|
||||
encrypt.o: encrypt.S
|
||||
$(ALTCC) $(NEWOPT) $< -c -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -c -o $@
|
||||
|
||||
aes256gcmv1: $(OBJs) encrypt.o try.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
aes256gcmv1_small: $(OBJs) encrypt.o try_small.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
kernelrandombytes.o: random.cpp
|
||||
$(CXX) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
cpucycles.o: riscv.c
|
||||
$(CC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
$(R5IMA_GCC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
|
|
|
@ -2,17 +2,10 @@ SRCs=api.c try-anything.c
|
|||
OBJs=$(SRCs:.c=.o)
|
||||
SCLIBS=cpucycles.o kernelrandombytes.o
|
||||
|
||||
COMPDIR=~dolbeau2/LITEX/buildroot-rv32/output/host
|
||||
ALTCOMPDIR=/opt/riscv64b
|
||||
include ../r5.mk
|
||||
|
||||
CC=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-gcc
|
||||
ALTCC=$(ALTCOMPDIR)/bin/riscv64-unknown-elf-gcc
|
||||
CXX=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-g++
|
||||
STRIP=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-strip
|
||||
NEWOPT=-march=rv32imab -mabi=ilp32 -I. -I.. -O3 -DRV32B #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
OPT=-march=rv32ima -mabi=ilp32 -I. -I.. -O3 #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
#ALTCC=$(CC)
|
||||
#NEWOPT=$(OPT)
|
||||
R5IMA_OPT+=-I..
|
||||
R5B_OPT+=-I.. -DRV32B -DRV32K
|
||||
|
||||
all: chacha20 chacha20_small
|
||||
|
||||
|
@ -20,31 +13,31 @@ clean:
|
|||
rm -f $(OBJs) *.S try.o try_small.o chacha.o chacha20 chacha20_small chacha20_small_var chacha.s chacha_var.s
|
||||
|
||||
%.o: %.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try_small.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@ -DSMALL
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@ -DSMALL
|
||||
|
||||
chacha.S: chacha.c
|
||||
$(ALTCC) $(NEWOPT) $< -S -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -S -o $@
|
||||
|
||||
chacha.o: chacha.S
|
||||
$(ALTCC) $(NEWOPT) $< -c -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -c -o $@
|
||||
|
||||
chacha20: $(OBJs) chacha.o try.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
chacha20_small: $(OBJs) chacha.o try_small.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
strip:
|
||||
$(STRIP) chacha20 chacha20_small
|
||||
|
||||
kernelrandombytes.o: random.cpp
|
||||
$(CXX) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
cpucycles.o: riscv.c
|
||||
$(CC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
$(R5IMA_GCC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
|
|
|
@ -9,15 +9,14 @@
|
|||
ASM2MACRO(XPERM_N,0x28002033)
|
||||
ASM2MACRO(XPERM_B,0x28004033)
|
||||
ASM2MACRO(XPERM_H,0x28006033)
|
||||
ASM2MACRO(SH1ADD,0x20002033)
|
||||
ASM2MACRO(SH2ADD,0x20004033)
|
||||
ASM2MACRO(SH3ADD,0x20006033)
|
||||
ASM2MACRO(_SH1ADD,0x20002033)
|
||||
ASM2MACRO(_SH2ADD,0x20004033)
|
||||
ASM2MACRO(_SH3ADD,0x20006033)
|
||||
FUN2(xperm_n,XPERM_N)
|
||||
FUN2(xperm_b,XPERM_B)
|
||||
FUN2(xperm_h,XPERM_H)
|
||||
FUN2(sh1add,SH1ADD)
|
||||
FUN2(sh2add,SH2ADD)
|
||||
FUN2(sh3add,SH3ADD)
|
||||
|
||||
FUN2(_sh1add,_SH1ADD)
|
||||
FUN2(_sh2add,_SH2ADD)
|
||||
FUN2(_sh3add,_SH3ADD)
|
||||
|
||||
#endif // __NEW_INSTRUCTION_SUPPORT_B_H__
|
||||
|
|
|
@ -2,17 +2,10 @@ SRCs=blocks.c try-anything.c
|
|||
OBJs=$(SRCs:.c=.o)
|
||||
SCLIBS=cpucycles.o kernelrandombytes.o
|
||||
|
||||
COMPDIR=~dolbeau2/LITEX/buildroot-rv32/output/host
|
||||
ALTCOMPDIR=/opt/riscv64b
|
||||
include ../r5.mk
|
||||
|
||||
CC=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-gcc
|
||||
ALTCC=$(ALTCOMPDIR)/bin/riscv64-unknown-elf-gcc
|
||||
CXX=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-g++
|
||||
STRIP=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-strip
|
||||
NEWOPT=-march=rv32imab -mabi=ilp32 -I. -I.. -O3 -DRV32ZKNH #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
OPT=-march=rv32ima -mabi=ilp32 -I. -I.. -O3 #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
#ALTCC=$(CC)
|
||||
#NEWOPT=$(OPT)
|
||||
R5IMA_OPT+=-I..
|
||||
R5B_OPT+=-I.. -DRV32B -DRV32K
|
||||
|
||||
all: sha256 sha256_small
|
||||
|
||||
|
@ -20,28 +13,28 @@ clean:
|
|||
rm -f $(OBJs) *.S try.o try_small.o blocks.o sha256 sha256_small blocks.S
|
||||
|
||||
%.o: %.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try_small.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@ -DSMALL
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@ -DSMALL
|
||||
|
||||
blocks.S: blocks.c
|
||||
$(ALTCC) $(NEWOPT) $< -S -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -S -o $@
|
||||
|
||||
blocks.o: blocks.S
|
||||
$(ALTCC) $(NEWOPT) $< -c -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -c -o $@
|
||||
|
||||
sha256: $(OBJs) blocks.o try.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
sha256_small: $(OBJs) blocks.o try_small.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
kernelrandombytes.o: random.cpp
|
||||
$(CXX) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
cpucycles.o: riscv.c
|
||||
$(CC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
$(R5IMA_GCC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
#include <stdint.h>
|
||||
|
||||
#ifdef RV32ZKNH
|
||||
#ifdef RV32K
|
||||
#include "new_instructions_support_k.h"
|
||||
#endif
|
||||
|
||||
|
@ -29,7 +29,7 @@ static void store_bigendian(unsigned char *x,uint32_t u)
|
|||
|
||||
#define Ch(x,y,z) ((x & y) ^ (~x & z))
|
||||
#define Maj(x,y,z) ((x & y) ^ (x & z) ^ (y & z))
|
||||
#ifndef RV32ZKNH
|
||||
#ifndef RV32K
|
||||
#define Sigma0(x) (ROTR(x, 2) ^ ROTR(x,13) ^ ROTR(x,22))
|
||||
#define Sigma1(x) (ROTR(x, 6) ^ ROTR(x,11) ^ ROTR(x,25))
|
||||
#define sigma0(x) (ROTR(x, 7) ^ ROTR(x,18) ^ SHR(x, 3))
|
||||
|
|
|
@ -2,17 +2,10 @@ SRCs=blocks.c try-anything.c
|
|||
OBJs=$(SRCs:.c=.o)
|
||||
SCLIBS=cpucycles.o kernelrandombytes.o
|
||||
|
||||
COMPDIR=~dolbeau2/LITEX/buildroot-rv32/output/host
|
||||
ALTCOMPDIR=/opt/riscv64b
|
||||
include ../r5.mk
|
||||
|
||||
CC=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-gcc
|
||||
ALTCC=$(ALTCOMPDIR)/bin/riscv64-unknown-elf-gcc
|
||||
CXX=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-g++
|
||||
STRIP=$(COMPDIR)/bin/riscv32-buildroot-linux-gnu-strip
|
||||
NEWOPT=-march=rv32imab -mabi=ilp32 -I. -I.. -O3 -DRV32ZKNH #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
OPT=-march=rv32ima -mabi=ilp32 -I. -I.. -O3 #-fno-vectorize #-DUSE_EPI_CUSTOM
|
||||
#ALTCC=$(CC)
|
||||
#NEWOPT=$(OPT)
|
||||
R5IMA_OPT+=-I..
|
||||
R5B_OPT+=-I.. -DRV32B -DRV32K
|
||||
|
||||
all: sha512 sha512_small
|
||||
|
||||
|
@ -20,28 +13,28 @@ clean:
|
|||
rm -f $(OBJs) *.S try.o try_small.o blocks.o sha512 sha512_small blocks.S
|
||||
|
||||
%.o: %.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
try_small.o: try.c
|
||||
$(CC) $(OPT) $< -c -o $@ -DSMALL
|
||||
$(R5IMA_GCC) $(R5IMA_OPT) $< -c -o $@ -DSMALL
|
||||
|
||||
blocks.S: blocks.c
|
||||
$(ALTCC) $(NEWOPT) $< -S -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -S -o $@
|
||||
|
||||
blocks.o: blocks.S
|
||||
$(ALTCC) $(NEWOPT) $< -c -o $@
|
||||
$(R5B_GCC) $(R5B_OPT) $< -c -o $@
|
||||
|
||||
sha512: $(OBJs) blocks.o try.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
sha512_small: $(OBJs) blocks.o try_small.o $(SCLIBS)
|
||||
$(CXX) $(OPT) $^ -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $^ -o $@
|
||||
|
||||
kernelrandombytes.o: random.cpp
|
||||
$(CXX) $(OPT) $< -c -o $@
|
||||
$(R5IMA_GXX) $(R5IMA_OPT) $< -c -o $@
|
||||
|
||||
cpucycles.o: riscv.c
|
||||
$(CC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
$(R5IMA_GCC) $< -march=rv32ima -mabi=ilp32 -I. -O1 -c -o $@
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
#include <stdint.h>
|
||||
|
||||
#ifdef RV32ZKNH
|
||||
#ifdef RV32K
|
||||
#include "new_instructions_support_k.h"
|
||||
#endif
|
||||
|
||||
|
@ -39,7 +39,7 @@ static void store_bigendian(unsigned char *x,uint64_t u)
|
|||
#define Ch(x,y,z) ((x & y) ^ (~x & z))
|
||||
#define Maj(x,y,z) ((x & y) ^ (x & z) ^ (y & z))
|
||||
|
||||
#ifndef RV32ZKNH
|
||||
#ifndef RV32K
|
||||
#define Sigma0(x) (ROTR(x,28) ^ ROTR(x,34) ^ ROTR(x,39))
|
||||
#define Sigma1(x) (ROTR(x,14) ^ ROTR(x,18) ^ ROTR(x,41))
|
||||
#define sigma0(x) (ROTR(x, 1) ^ ROTR(x, 8) ^ SHR(x,7))
|
||||
|
|
12
test_b.c
12
test_b.c
|
@ -57,15 +57,15 @@ uint_xlen_t xperm_h (uint_xlen_t rs1, uint_xlen_t rs2) { return xperm(rs1, rs2,
|
|||
uint_xlen_t xperm_w (uint_xlen_t rs1, uint_xlen_t rs2) { return xperm(rs1, rs2, 5); }
|
||||
|
||||
|
||||
uint_xlen_t sh1add(uint_xlen_t rs1, uint_xlen_t rs2)
|
||||
uint_xlen_t _sh1add(uint_xlen_t rs1, uint_xlen_t rs2)
|
||||
{
|
||||
return (rs1 << 1) + rs2;
|
||||
}
|
||||
uint_xlen_t sh2add(uint_xlen_t rs1, uint_xlen_t rs2)
|
||||
uint_xlen_t _sh2add(uint_xlen_t rs1, uint_xlen_t rs2)
|
||||
{
|
||||
return (rs1 << 2) + rs2;
|
||||
}
|
||||
uint_xlen_t sh3add(uint_xlen_t rs1, uint_xlen_t rs2)
|
||||
uint_xlen_t _sh3add(uint_xlen_t rs1, uint_xlen_t rs2)
|
||||
{
|
||||
return (rs1 << 3) + rs2;
|
||||
}
|
||||
|
@ -226,9 +226,9 @@ int main(int argc, char **argv) {
|
|||
}
|
||||
|
||||
// extra stuff
|
||||
T2(sh1add);
|
||||
T2(sh2add);
|
||||
T2(sh3add);
|
||||
T2(_sh1add);
|
||||
T2(_sh2add);
|
||||
T2(_sh3add);
|
||||
|
||||
T2(xperm_n);
|
||||
T2(xperm_b);
|
||||
|
|
Loading…
Add table
Reference in a new issue