Browse Source

fixes for compatibility with the STHORM SDK

Ioannis Koutras 12 years ago
parent
commit
554909b120

+ 2 - 2
CMakeLists.txt

@@ -9,6 +9,8 @@ set(APPLICATION_VERSION_MINOR 5)
 
 set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/Modules)
 
+set(DMM_DATA_ALIGNMENT "${CMAKE_SIZEOF_VOID_P}")
+
 include(DefineInstallationPaths)
 include(DefineOptions.cmake)
 
@@ -109,8 +111,6 @@ if(STATS STREQUAL "global")
   set(WITH_ALLOCATOR_STATS ON)
 endif(STATS STREQUAL "global")
 
-set(DMM_DATA_ALIGNMENT "${CMAKE_SIZEOF_VOID_P}")
-
 configure_file (
 	"${PROJECT_SOURCE_DIR}/config.h.cmake"
 	"${PROJECT_BINARY_DIR}/dmmlib/config.h"

+ 3 - 2
DefineOptions.cmake

@@ -61,8 +61,9 @@ option(LEON3 "Build for Leon3" OFF)
 option(LINUX "Build for Linux" OFF) 
 
 if(P2012)
-  set(WITH_SYSTEM_CALLS "none")
-  set(HAVE_LOCKS OFF)
+  set(DMM_DATA_ALIGNMENT "4") # Do not change
+  set(WITH_SYSTEM_CALLS "none") # Do not change
+  set(HAVE_LOCKS OFF) # Do not change
   set(RAW_BLOCKS_TYPE "freelist")
   set(ORDERING_POLICY "lifo")
   set(FITTING_POLICY "first")

+ 2 - 2
private-include/trace.h

@@ -16,7 +16,7 @@
  */
 
 /**
- * @file   trace.h
+ * @file   dmmlib_trace.h
  * @author Ioannis Koutras (joko@microlab.ntua.gr)
  * @date   September 2012
  * @brief  Tracing functions
@@ -24,7 +24,7 @@
 
 #ifndef _DMMLIB_TRACE_H_
 #define _DMMLIB_TRACE_H_
-#include <dmmlib/config.h>
+#include "dmmlib/config.h"
 
 #ifdef PARSE_ENV
 #include "dmmlib/dmmlib.h" /* to check if systemallocator is initialized */

+ 1 - 1
src/bitmap/debug.c

@@ -27,7 +27,7 @@
 #include <inttypes.h>
 #include <string.h>
 
-#include "trace.h"
+#include "dmmlib_trace.h"
 
 /**
  * Returns the number of used cells (including the ones of the bitmap vector not

+ 1 - 1
src/bitmap/free.c

@@ -22,8 +22,8 @@
  * @brief  free() implementation for bitmap-organized raw blocks
  */
 
+#include "dmmlib_trace.h"
 #include "statistics.h"
-#include "trace.h"
 
 #include "bitmap/bitmap.h"
 #include "bitmap/bitmap_rb.h"

+ 1 - 1
src/bitmap/malloc.c

@@ -26,8 +26,8 @@
 #include "bitmap/bitmap_rb.h"
 #include "bitmap/bitmap_other.h"
 
+#include "dmmlib_trace.h"
 #include "statistics.h"
-#include "trace.h"
 
 /**
  * Returns a memory block from a bitmap-organized raw block

+ 1 - 1
src/debug.c

@@ -24,7 +24,7 @@
 
 #include "dmmlib/debug.h"
 
-#include "trace.h"
+#include "dmmlib_trace.h"
 #include <stdbool.h>
 #include "dmmlib/dmmlib.h"
 #include "locks.h"

+ 1 - 1
src/free.c

@@ -28,11 +28,11 @@
 #include "dmmlib/dmmlib.h"
 
 #include "default_rb.h"
+#include "dmmlib_trace.h"
 #include "locks.h"
 #include "other.h"
 #include "release_memory.h"
 #include "statistics.h"
-#include "trace.h"
 
 void free(void *ptr) {
     raw_block_header_t *owner_raw_block;

+ 13 - 6
src/freelist/block_header_funcs.c

@@ -17,8 +17,10 @@
 
 #include "freelist/block_header_funcs.h"
 
+#include <inttypes.h>
+
 block_header_t * get_header(void *ptr) {
-    return (block_header_t *) ((char *) ptr - HEADER_SIZE);
+    return (block_header_t *) ((uintptr_t) ptr - HEADER_SIZE);
 }
 
 size_t get_size(block_header_t *ptr) {
@@ -39,7 +41,8 @@ size_t get_size_availability(block_header_t *ptr) {
     return ptr->size;
 }
 
-void set_size_and_free(freelist_rb_t *raw_block, block_header_t *ptr, size_t size) {
+void set_size_and_free(freelist_rb_t *raw_block, block_header_t *ptr,
+        size_t size) {
     block_header_t *next_block_header;
 
     ptr->size = size << 1;
@@ -50,7 +53,8 @@ void set_size_and_free(freelist_rb_t *raw_block, block_header_t *ptr, size_t siz
     }
 }
 
-void set_size_and_used(freelist_rb_t *raw_block, block_header_t *ptr, size_t size) {
+void set_size_and_used(freelist_rb_t *raw_block, block_header_t *ptr,
+        size_t size) {
     block_header_t *next_block_header;
 
     ptr->size = size << 1;
@@ -100,7 +104,8 @@ bool is_previous_free(block_header_t *ptr) {
     }
 }
 
-void set_previous_size_availability(block_header_t *ptr, size_t previous_size_availability) {
+void set_previous_size_availability(block_header_t *ptr,
+        size_t previous_size_availability) {
     ptr->previous_size = previous_size_availability;
 }
 
@@ -113,12 +118,14 @@ size_t get_previous_size_availability(block_header_t *ptr) {
 }
 
 block_header_t * get_dlprevious(block_header_t *ptr) {
-    return (block_header_t *) ((char *) ptr - HEADER_SIZE - get_previous_size(ptr));
+    return (block_header_t *) ((uintptr_t) ptr - HEADER_SIZE -
+            get_previous_size(ptr));
 }
 
 block_header_t * get_dlnext(freelist_rb_t *raw_block, block_header_t *ptr) {
     if(raw_block->border_ptr != ptr) {
-        return (block_header_t *) ((char *) ptr + get_size(ptr) + HEADER_SIZE);
+        return (block_header_t *) ((uintptr_t) ptr + get_size(ptr) +
+                HEADER_SIZE);
     } else {
         return (block_header_t *) NULL;
     }

+ 1 - 1
src/freelist/debug.c

@@ -27,7 +27,7 @@
 #include "dmmlib/freelist/block_header.h"
 #include "freelist/block_header_funcs.h"
 
-#include "trace.h"
+#include "dmmlib_trace.h"
 
 /** Prints the list of free blocks of a specific freelist-organised raw block.
  *

+ 2 - 2
src/freelist/free.c

@@ -21,10 +21,10 @@
  * @brief  free() implementation for freelist-organised raw blocks
  */
 
-#include <dmmlib/config.h>
+#include "dmmlib/config.h"
 
+#include "dmmlib_trace.h"
 #include "statistics.h"
-#include "trace.h"
 
 #include "freelist/block_header_funcs.h"
 #include "freelist/ordering_policy.h"

+ 2 - 2
src/freelist/malloc.c

@@ -25,13 +25,13 @@
 
 #include <inttypes.h>
 
-#include <dmmlib/config.h>
+#include "dmmlib/config.h"
 
 #include "dmmlib/freelist/freelist.h"
 
+#include "dmmlib_trace.h"
 #include "padding.h"
 #include "statistics.h"
-#include "trace.h"
 
 #include "freelist/block_header_funcs.h"
 #include "freelist/fitting_policy.h"

+ 1 - 1
src/malloc.c

@@ -34,8 +34,8 @@
 #include "locks.h"
 #include "default_rb.h"
 
+#include "dmmlib_trace.h"
 #include "statistics.h"
-#include "trace.h"
 
 void * malloc(size_t size) {
     raw_block_header_t *raw_block, *new_raw_block;

+ 3 - 4
src/memalign.c

@@ -30,16 +30,15 @@
 #include <sys/mman.h>
 #include <assert.h>
 
+#include "dmmlib/config.h"
 #include "dmmlib/dmmlib.h"
 
 #include "memcpy.h"
 
-#include <dmmlib/config.h>
+#include "default_rb.h"
+#include "dmmlib_trace.h"
 #include "locks.h"
 #include "statistics.h"
-#include "trace.h"
-
-#include "default_rb.h"
 
 #ifdef BITMAP_RB_ONLY
 #error Current memory-aligned allocation implementation supports only \

+ 2 - 3
src/parse_env.c

@@ -22,14 +22,13 @@
  * @brief  Parse the DMMLIB_OPTS enviroment variable.
  */
 
-#include <dmmlib/config.h>
-
 #include <stdlib.h>
 #include <string.h>
 #include <stdio.h>
 
+#include "dmmlib/config.h"
 #include "dmmlib/dmmlib.h"
-#include "trace.h"
+#include "dmmlib_trace.h"
 
 __attribute__((constructor)) void parse_env(void);
 

+ 1 - 1
src/realloc.c

@@ -29,6 +29,7 @@
 
 #include "locks.h"
 #include "default_rb.h"
+#include "dmmlib_trace.h"
 #include "other.h"
 #include "statistics.h"
 
@@ -42,7 +43,6 @@
 
 #include "memcpy.h"
 
-#include "trace.h"
 
 void * realloc(void *ptr, size_t size) {
     raw_block_header_t *owner_raw_block;

+ 1 - 1
src/statistics.c

@@ -26,7 +26,7 @@
 
 #include "dmmlib/dmmlib.h"
 
-#include "trace.h"
+#include "dmmlib_trace.h"
 
 /** Updates a dmmstats_t variable
  *