From d9b91fc58fdaf6c734927a4b9546959d9e385fb7 Mon Sep 17 00:00:00 2001 From: chad Date: Mon, 13 Oct 2014 15:23:40 -0400 Subject: [PATCH] Added "bar" instruction for barriers. --- doc/harp_iset.tex | 3 ++- src/instruction.cpp | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/doc/harp_iset.tex b/doc/harp_iset.tex index f913efc8..76741149 100644 --- a/doc/harp_iset.tex +++ b/doc/harp_iset.tex @@ -133,7 +133,7 @@ The bit fields in the instruction encodings depend heavily on this quality. 33 "itof" 2REG 34 "ftoi" 2REG 35 "fadd" 3REG 36 "fsub" 3REG 37 "fmul" 3REG 38 "fdiv" 3REG 39 "fneg" 2REG 3a "wspawn" 3REG 3b "split" NONE - 3c "join" NONE + 3c "join" NONE 3d "bar" \end{verbatim} \subsection{Word Encoding} @@ -358,6 +358,7 @@ format, which can be fixed point or floating point. \textbf{Instruction}&\textbf{Description}\\ \hline \texttt{wspawn} \%dest, \%pc, \%src&Create new warp, copying \%src in current warp to to \%dest in new warp.\\ +\texttt{bar} \%id, \%n&Barrier of \%n warps. Identified by \%id.\\ \end{tabular} \end{center} diff --git a/src/instruction.cpp b/src/instruction.cpp index 0bd037ab..90ccabe5 100644 --- a/src/instruction.cpp +++ b/src/instruction.cpp @@ -83,6 +83,7 @@ Instruction::InstTableEntry Instruction::instTable[] = { {"wspawn", false, false, true, false, AC_3REG, ITYPE_NULL }, {"split", false, false, true, false, AC_NONE, ITYPE_NULL }, {"join", false, false, true, false, AC_NONE, ITYPE_NULL }, + {"bar", false, false, true, false, AC_2REGSRC, ITYPE_NULL }, {NULL,false,false,false,false,AC_NONE,ITYPE_NULL}/////// End of table. };