[polly] r275680 - GPGPU: Abort if any dummy function is called

Tobias Grosser via llvm-commits llvm-commits at lists.llvm.org
Sat Jul 16 00:30:28 PDT 2016


Author: grosser
Date: Sat Jul 16 02:30:27 2016
New Revision: 275680

URL: http://llvm.org/viewvc/llvm-project?rev=275680&view=rev
Log:
GPGPU: Abort if any dummy function is called

This ensures that accidental calls to these functions will break loadly instead
of corrupting the stack with invalid return values.

These functions have been introduced earlier as replacement of pet and parts of
ppcg which we will never use and consequently have not been imported or compiled
into Polly.

Modified:
    polly/trunk/lib/External/ppcg/external.c

Modified: polly/trunk/lib/External/ppcg/external.c
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/lib/External/ppcg/external.c?rev=275680&r1=275679&r2=275680&view=diff
==============================================================================
--- polly/trunk/lib/External/ppcg/external.c (original)
+++ polly/trunk/lib/External/ppcg/external.c Sat Jul 16 02:30:27 2016
@@ -1,44 +1,141 @@
-void ppcg_start_block(){}
-void ppcg_end_block(){}
-void ppcg_print_macros(){}
-void pet_scop_compute_outer_to_any(){}
-void pet_scop_compute_outer_to_inner(){}
-void pet_tree_get_type(){}
-void pet_tree_foreach_access_expr(){}
-void pet_expr_get_ctx(){}
-void pet_expr_access_is_read(){}
-void pet_expr_access_is_write(){}
-void pet_expr_access_get_tagged_may_read(){}
-void pet_expr_access_get_tagged_may_write(){}
-void pet_expr_access_get_must_write(){}
-void pet_expr_access_get_index(){}
-void pet_expr_access_get_ref_id(){}
-void print_cpu(){}
-void ppcg_print_exposed_declarations(){}
-void ppcg_print_declaration(){}
-void pet_stmt_print_body(){}
-void pet_loc_get_start(){}
-void pet_loc_get_end(){}
-void pet_scop_collect_tagged_may_reads(){}
-void pet_scop_collect_may_reads(){}
-void pet_scop_collect_tagged_may_writes(){}
-void pet_scop_collect_may_writes(){}
-void pet_scop_collect_tagged_must_writes(){}
-void pet_scop_collect_must_writes(){}
-void pet_scop_collect_tagged_must_kills(){}
-void pet_transform_C_source(){}
-void pet_scop_print_original(){}
-void pet_scop_free(){}
-void pet_scop_align_params(){}
-void pet_scop_can_build_ast_exprs(){}
-void pet_scop_has_data_dependent_conditions(){}
-void pet_tree_foreach_expr(){}
-void pet_expr_foreach_call_expr(){}
-void pet_stmt_is_kill(){}
-void pet_options_args() {}
-void ppcg_print_guarded() {}
-void ppcg_version() {}
-void pet_options_set_encapsulate_dynamic_control() {}
-void generate_opencl() {}
-void generate_cpu() {}
-void pet_stmt_build_ast_exprs() {}
+#include "assert.h"
+#include "stdio.h"
+#include "stdlib.h"
+
+#define die() { \
+  fprintf(stderr, "Dummy function %s called\n", __FUNCTION__); \
+  abort(); \
+}
+
+void ppcg_start_block() {
+  die();
+}
+void ppcg_end_block(){
+  die();
+}
+void ppcg_print_macros(){
+  die();
+}
+void pet_scop_compute_outer_to_any(){
+  die();
+}
+void pet_scop_compute_outer_to_inner(){
+  die();
+}
+void pet_tree_get_type(){
+  die();
+}
+void pet_tree_foreach_access_expr(){
+  die();
+}
+void pet_expr_get_ctx(){
+  die();
+}
+void pet_expr_access_is_read(){
+  die();
+}
+void pet_expr_access_is_write(){
+  die();
+}
+void pet_expr_access_get_tagged_may_read(){
+  die();
+}
+void pet_expr_access_get_tagged_may_write(){
+  die();
+}
+void pet_expr_access_get_must_write(){
+  die();
+}
+void pet_expr_access_get_index(){
+  die();
+}
+void pet_expr_access_get_ref_id(){
+  die();
+}
+void print_cpu(){
+  die();
+}
+void ppcg_print_exposed_declarations(){
+  die();
+}
+void ppcg_print_declaration(){
+  die();
+}
+void pet_stmt_print_body(){
+  die();
+}
+void pet_loc_get_start(){
+  die();
+}
+void pet_loc_get_end(){
+  die();
+}
+void pet_scop_collect_tagged_may_reads(){
+  die();
+}
+void pet_scop_collect_may_reads(){
+  die();
+}
+void pet_scop_collect_tagged_may_writes(){
+  die();
+}
+void pet_scop_collect_may_writes(){
+  die();
+}
+void pet_scop_collect_tagged_must_writes(){
+  die();
+}
+void pet_scop_collect_must_writes(){
+  die();
+}
+void pet_scop_collect_tagged_must_kills(){
+  die();
+}
+void pet_transform_C_source(){
+  die();
+}
+void pet_scop_print_original(){
+  die();
+}
+void pet_scop_free(){
+  die();
+}
+void pet_scop_align_params(){
+  die();
+}
+void pet_scop_can_build_ast_exprs(){
+  die();
+}
+void pet_scop_has_data_dependent_conditions(){
+  die();
+}
+void pet_tree_foreach_expr(){
+  die();
+}
+void pet_expr_foreach_call_expr(){
+  die();
+}
+void pet_stmt_is_kill(){
+  die();
+}
+void pet_options_args() {
+  die();
+}
+void ppcg_print_guarded() {
+  die();
+}
+void ppcg_version() {
+  die();
+}
+void pet_options_set_encapsulate_dynamic_control() {
+  die();
+}
+void generate_opencl() {
+  die();
+}
+void generate_cpu() {
+  die();
+}
+void pet_stmt_build_ast_exprs() {
+  die();
+}




More information about the llvm-commits mailing list