This is the Official implementation of our ICSE2024 paper "Prism: Decomposing Program Semantics for Code Clone Detection through Compilation".
conda create -n prism Python=3.10;
conda activate prism;
# setup asm2vec
#git clone https://github.com/lancern/asm2vec.git;
export PYTHONPATH="path/to/asm2vec:$PYTHONPATH";
source ~/.bashrc;
Remove comment
Use Gcc/G++ compiler turn C/Cpp codes to asm
cd asm2vec/examples
python3 1-Asm2Funcs.py
python3 2-TrainAsm.py
python3 3-FunctionAvg.py
python3 preRun.py
cd bert-fine-tune
./run.sh
python3 get_bert_emb_96_ft.py #get the embedding after fine tune
cd generateTrainingData
python3 generateTrainingData.py
cd dnn
python3 train_loop.py
2.asm2vec