summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAhmed El-Shafiey <[email protected]>2014-08-07 04:39:29 -0800
committerAndrew Boktor <[email protected]>2014-08-14 13:51:00 -0700
commit739602e9458a15aedb32b65847760a50109514f0 (patch)
tree879f527c90879cdd374abe49007192229e7fdc14
parentad5a3cf3480e3fa302382122af21278c881595d6 (diff)
-Forcing make clean to remove all automatically generated files by parsers (should fix regressions).
-remove some printfs that were there for debugging [git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 18480]
-rw-r--r--Makefile9
-rw-r--r--cuobjdump_to_ptxplus/Makefile2
-rw-r--r--src/cuda-sim/ptx.y1
-rw-r--r--src/gpgpu-sim/shader.cc9
4 files changed, 12 insertions, 9 deletions
diff --git a/Makefile b/Makefile
index 1e79170..a9332e0 100644
--- a/Makefile
+++ b/Makefile
@@ -239,3 +239,12 @@ clean: makedirs
cleangpgpusim: cleandocs
rm -rf $(SIM_LIB_DIR)
rm -rf $(SIM_OBJ_FILES_DIR)
+ rm -f *~ *.o ./src/cuda-sim/*.gcda ./src/cuda-sim/*.gcno ./src/cuda-sim/*.gcov ./src/cuda-sim/libgpgpu_ptx_sim.a \
+ ./src/cuda-sim/ptx.tab.h ./src/cuda-sim/ptx.tab.c ./src/cuda-sim/ptx.output ./src/cuda-sim/lex.ptx_.c \
+ ./src/cuda-sim/ptxinfo.tab.h ./src/cuda-sim/ptxinfo.tab.c ./src/cuda-sim/ptxinfo.output ./src/cuda-sim/lex.ptxinfo_.c \
+ ./src/cuda-sim/instructions.h ./src/cuda-sim/ptx_parser_decode.def ./src/cuda-sim/directed_tests.log \
+ ./cuobjdump_to_ptxplus/elf_lexer.cc ./cuobjdump_to_ptxplus/elf_parser.cc ./cuobjdump_to_ptxplus/elf_parser.hh \
+ ./cuobjdump_to_ptxplus/header_lexer.cc ./cuobjdump_to_ptxplus/header_parser.cc ./cuobjdump_to_ptxplus/header_parser.hh \
+ ./cuobjdump_to_ptxplus/lex.ptx_.c ./cuobjdump_to_ptxplus/ptx.output ./cuobjdump_to_ptxplus/ptx.tab.h cuobjdump_to_ptxplus/ptx.tab.h \
+ ./cuobjdump_to_ptxplus/sass_lexer.cc ./cuobjdump_to_ptxplus/sass_parser.cc ./cuobjdump_to_ptxplus/sass_parser.hh
+
diff --git a/cuobjdump_to_ptxplus/Makefile b/cuobjdump_to_ptxplus/Makefile
index 40b8b48..0358970 100644
--- a/cuobjdump_to_ptxplus/Makefile
+++ b/cuobjdump_to_ptxplus/Makefile
@@ -9,7 +9,7 @@ LD = g++
LDFLAGS = ${CCFLAGS}
OUTPUT_DIR=$(SIM_OBJ_FILES_DIR)/cuobjdump_to_ptxplus
-CXXFLAGS += -I $(OUTPUT_DIR) -I . -I ../src/cuda-sim/
+CXXFLAGS += -I $(OUTPUT_DIR) -I $(OUTPUT_DIR)/../cuda-sim/ -I . -I ../src/cuda-sim/
SASS_PARSER_OBJECTS = $(OUTPUT_DIR)/sass_lexer.o $(OUTPUT_DIR)/sass_parser.o
ELF_PARSER_OBJECTS = $(OUTPUT_DIR)/elf_lexer.o $(OUTPUT_DIR)/elf_parser.o
diff --git a/src/cuda-sim/ptx.y b/src/cuda-sim/ptx.y
index e5942f0..770ee1d 100644
--- a/src/cuda-sim/ptx.y
+++ b/src/cuda-sim/ptx.y
@@ -446,6 +446,7 @@ option: type_spec
;
atomic_operation_spec: ATOMIC_AND { add_option(ATOMIC_AND); }
+ | ATOMIC_POPC { add_option(ATOMIC_POPC); }
| ATOMIC_OR { add_option(ATOMIC_OR); }
| ATOMIC_XOR { add_option(ATOMIC_XOR); }
| ATOMIC_CAS { add_option(ATOMIC_CAS); }
diff --git a/src/gpgpu-sim/shader.cc b/src/gpgpu-sim/shader.cc
index 2fddadd..b761dac 100644
--- a/src/gpgpu-sim/shader.cc
+++ b/src/gpgpu-sim/shader.cc
@@ -21,7 +21,7 @@
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+// SERVICES; LOSSp OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -2606,7 +2606,6 @@ void barrier_set_t::deallocate_barrier( unsigned cta_id )
void barrier_set_t::warp_reaches_barrier(unsigned cta_id,unsigned warp_id,warp_inst_t* inst)
{
barrier_type bar_type = inst->bar_type;
- reduction_type red_type = inst->red_type;
unsigned bar_id = inst->bar_id;
unsigned bar_count = inst->bar_count;
assert(bar_id!=(unsigned)-1);
@@ -2628,15 +2627,12 @@ void barrier_set_t::warp_reaches_barrier(unsigned cta_id,unsigned warp_id,warp_i
warp_set_t active = warps_in_cta & m_warp_active;
if(bar_count==(unsigned)-1){
if( at_barrier == active ) {
- printf("Barrier should be released\n");
// all warps have reached barrier, so release waiting warps...
m_bar_id_to_warps[bar_id] &= ~at_barrier;
m_warp_at_barrier &= ~at_barrier;
if(bar_type==RED){
- printf("broadcast_barrier\n");
m_shader->broadcast_barrier_reduction(cta_id, bar_id,at_barrier);
}
- printf("warps at barrier = %u\n",m_warp_at_barrier.count());
}
}else{
// TODO: check on the hardware if the count should include warp that exited
@@ -2645,7 +2641,6 @@ void barrier_set_t::warp_reaches_barrier(unsigned cta_id,unsigned warp_id,warp_i
m_bar_id_to_warps[bar_id] &= ~at_barrier;
m_warp_at_barrier &= ~at_barrier;
if(bar_type==RED){
- printf("REDUCTION CALLED-2\n");
m_shader->broadcast_barrier_reduction(cta_id, bar_id,at_barrier);
}
}
@@ -2775,10 +2770,8 @@ void shader_core_ctx::decrement_atomic_count( unsigned wid, unsigned n )
void shader_core_ctx::broadcast_barrier_reduction(unsigned cta_id,unsigned bar_id,warp_set_t warps)
{
- unsigned value = get_reduction_value(cta_id,bar_id);
for(unsigned i=0; i<m_config->max_warps_per_shader;i++){
if(warps.test(i)){
- printf("braodcast for i=%u\n",i);
const warp_inst_t * inst = m_warp[i].restore_info_of_last_inst_at_barrier();
const_cast<warp_inst_t *> (inst)->broadcast_barrier_reduction(inst->get_active_mask());
}