Преглед изворни кода

Ensure consistent line endings within files with minimum patch size. (#229)

David Peek пре 6 година
родитељ
комит
8e1dc7d89d
6 измењених фајлова са 311 додато и 311 уклоњено
  1. 6 6
      include/pcre/config.h
  2. 135 135
      src/code.c
  3. 5 5
      src/main.c
  4. 33 33
      src/module.c
  5. 119 119
      src/std/thread.c
  6. 13 13
      src/std/track.c

+ 6 - 6
include/pcre/config.h

@@ -1,8 +1,8 @@
 #define COMPILE_PCRE16
-#undef SUPPORT_JIT
+#undef SUPPORT_JIT
 #define PCRE_STATIC
-#define SUPPORT_UCP
-
+#define SUPPORT_UCP
+
 #ifdef _MSC_VER
 #	pragma warning(disable:4710) // inline disabled
 #	pragma warning(disable:4711) // inline activated
@@ -18,14 +18,14 @@
    parentheses (of any kind) in a pattern. This limits the amount of system
    stack that is used while compiling a pattern. */
 #define PARENS_NEST_LIMIT 250
-
+
 /* The value of LINK_SIZE determines the number of bytes used to store links
    as offsets within the compiled regex. The default is 2, which allows for
    compiled patterns up to 64K long. This covers the vast majority of cases.
    However, PCRE can also be compiled to use 3 or 4 bytes instead. This allows
    for longer patterns in extreme cases. */
-#define LINK_SIZE 2
-
+#define LINK_SIZE 2
+
 /* This limit is parameterized just in case anybody ever wants to change it.
    Care must be taken if it is increased, because it guards against integer
    overflow caused by enormously large patterns. */

+ 135 - 135
src/code.c

@@ -533,7 +533,7 @@ hl_code *hl_code_read( const unsigned char *data, int size, char **error_msg ) {
 void hl_code_free( hl_code *c ) {
 	hl_free(&c->falloc);
 }
-
+
 static const unsigned int crc32_table[] =
 {
   0x00000000, 0x04c11db7, 0x09823b6e, 0x0d4326d9,
@@ -600,135 +600,135 @@ static const unsigned int crc32_table[] =
   0x9abc8bd5, 0x9e7d9662, 0x933eb0bb, 0x97ffad0c,
   0xafb010b1, 0xab710d06, 0xa6322bdf, 0xa2f33668,
   0xbcb4666d, 0xb8757bda, 0xb5365d03, 0xb1f740b4
-};
-
-#define H(b) hash = (hash >> 8) ^ crc32_table[(hash ^ b) & 0xFF]
-#define H32(i) { H(i&0xFF); H((i>>8)&0xFF); H((i>>16)&0xFF); H(((unsigned int)i)>>24); }
-#define HFUN(idx) H32(functions_signs[functions_indexes[idx]]); 
-#define HSTR(s) { const char *_c = s; while( *_c ) H(*_c++); }
-#define HUSTR(s) { const uchar *_c = s; while( *_c ) H(*_c++); }
-
-int hl_code_hash_type( hl_type *t ) {
-	int hash = -1;
-	int i;
-	switch( t->kind ) {
-	case HFUN:
-		H(t->fun->nargs);
-		for(i=0;i<t->fun->nargs;i++)
-			H32(hl_code_hash_type(t->fun->args[i]));
-		H32(hl_code_hash_type(t->fun->ret));
-		break;
-	// TODO
-	default:
-		break;
-	}
-	H(t->kind);
-	return hash;
-}
-
-int hl_code_hash_native( hl_native *n ) {
-	int hash = -1;
-	HSTR(n->lib);
-	HSTR(n->name);
-	H32(hl_code_hash_type(n->t));
-	return hash;
-}
-
-int hl_code_hash_fun_sign( hl_function *f ) {
-	int hash = -1;
-	H32(hl_code_hash_type(f->type));
-	if( f->obj ) {
-		HUSTR(f->obj->name);
-		HUSTR(f->field.name);
-	} else if( f->field.ref ) {
-		HUSTR(f->field.ref->obj->name);
-		HUSTR(f->field.ref->field.name);
-		H32(f->ref);
-	}
-	return hash;
-}
-
-int hl_code_hash_fun( hl_code *c, hl_function *f, int *functions_indexes, int *functions_signs ) {
-	int hash = -1;
-	int i, k;
-	for(i=0;i<f->nregs;i++)
-		H32(hl_code_hash_type(f->regs[i]));
-	for(k=0;k<f->nops;k++) {
-		hl_opcode *o = f->ops + k;
-		H(o->op);
-		switch( o->op ) {
-		case OInt:
-			H32(o->p1);
-			H32(c->ints[o->p2]);
-			break;
-		case OFloat:
-			H32(o->p1);
-			H32( ((int*)c->floats)[o->p2<<1] );
-			H32( ((int*)c->floats)[(o->p2<<1)|1] );
-			break;
-		//case OString:
-		//case OBytes:
-		case OType:
-			H32(o->p1);
-			H32(hl_code_hash_type(c->types + o->p2));
-			break;
-		case OCall0:
-			H32(o->p1);
-			HFUN(o->p2);
-			break;
-		case OCall1:
-			H32(o->p1);
-			HFUN(o->p2);
-			H32(o->p3);
-			break;
-		case OCall2:
-			H32(o->p1);
-			HFUN(o->p2);
-			H32(o->p3);
-			H32((int)(int_val)o->extra);
-			break;
-		case OCall3:
-			H32(o->p1);
-			HFUN(o->p2);
-			H32(o->p3);
-			H32(o->extra[0]);
-			H32(o->extra[1]);
-			break;
-		case OCall4:
-			H32(o->p1);
-			HFUN(o->p2);
-			H32(o->p3);
-			H32(o->extra[0]);
-			H32(o->extra[1]);
-			H32(o->extra[2]);
-			break;
-		case OCallN:
-			H32(o->p1);
-			HFUN(o->p2);
-			H32(o->p3);
-			for(i=0;i<o->p3;i++)
-				H32(o->extra[i]);
-			break;
-		case OStaticClosure:
-			H32(o->p1);
-			HFUN(o->p2);
-			break;
-		case OInstanceClosure:
-			H32(o->p1);
-			HFUN(o->p2);
-			H32(o->p3);
-			break;
-		case ODynGet:
-			H32(o->p1);
-			H32(o->p2);
-			HSTR(c->strings[o->p3]);
-			break;
-		case ODynSet:
-			H32(o->p1);
-			HSTR(c->strings[o->p2]);
-			H32(o->p3);
-			break;
-		default:
+};
+
+#define H(b) hash = (hash >> 8) ^ crc32_table[(hash ^ b) & 0xFF]
+#define H32(i) { H(i&0xFF); H((i>>8)&0xFF); H((i>>16)&0xFF); H(((unsigned int)i)>>24); }
+#define HFUN(idx) H32(functions_signs[functions_indexes[idx]]); 
+#define HSTR(s) { const char *_c = s; while( *_c ) H(*_c++); }
+#define HUSTR(s) { const uchar *_c = s; while( *_c ) H(*_c++); }
+
+int hl_code_hash_type( hl_type *t ) {
+	int hash = -1;
+	int i;
+	switch( t->kind ) {
+	case HFUN:
+		H(t->fun->nargs);
+		for(i=0;i<t->fun->nargs;i++)
+			H32(hl_code_hash_type(t->fun->args[i]));
+		H32(hl_code_hash_type(t->fun->ret));
+		break;
+	// TODO
+	default:
+		break;
+	}
+	H(t->kind);
+	return hash;
+}
+
+int hl_code_hash_native( hl_native *n ) {
+	int hash = -1;
+	HSTR(n->lib);
+	HSTR(n->name);
+	H32(hl_code_hash_type(n->t));
+	return hash;
+}
+
+int hl_code_hash_fun_sign( hl_function *f ) {
+	int hash = -1;
+	H32(hl_code_hash_type(f->type));
+	if( f->obj ) {
+		HUSTR(f->obj->name);
+		HUSTR(f->field.name);
+	} else if( f->field.ref ) {
+		HUSTR(f->field.ref->obj->name);
+		HUSTR(f->field.ref->field.name);
+		H32(f->ref);
+	}
+	return hash;
+}
+
+int hl_code_hash_fun( hl_code *c, hl_function *f, int *functions_indexes, int *functions_signs ) {
+	int hash = -1;
+	int i, k;
+	for(i=0;i<f->nregs;i++)
+		H32(hl_code_hash_type(f->regs[i]));
+	for(k=0;k<f->nops;k++) {
+		hl_opcode *o = f->ops + k;
+		H(o->op);
+		switch( o->op ) {
+		case OInt:
+			H32(o->p1);
+			H32(c->ints[o->p2]);
+			break;
+		case OFloat:
+			H32(o->p1);
+			H32( ((int*)c->floats)[o->p2<<1] );
+			H32( ((int*)c->floats)[(o->p2<<1)|1] );
+			break;
+		//case OString:
+		//case OBytes:
+		case OType:
+			H32(o->p1);
+			H32(hl_code_hash_type(c->types + o->p2));
+			break;
+		case OCall0:
+			H32(o->p1);
+			HFUN(o->p2);
+			break;
+		case OCall1:
+			H32(o->p1);
+			HFUN(o->p2);
+			H32(o->p3);
+			break;
+		case OCall2:
+			H32(o->p1);
+			HFUN(o->p2);
+			H32(o->p3);
+			H32((int)(int_val)o->extra);
+			break;
+		case OCall3:
+			H32(o->p1);
+			HFUN(o->p2);
+			H32(o->p3);
+			H32(o->extra[0]);
+			H32(o->extra[1]);
+			break;
+		case OCall4:
+			H32(o->p1);
+			HFUN(o->p2);
+			H32(o->p3);
+			H32(o->extra[0]);
+			H32(o->extra[1]);
+			H32(o->extra[2]);
+			break;
+		case OCallN:
+			H32(o->p1);
+			HFUN(o->p2);
+			H32(o->p3);
+			for(i=0;i<o->p3;i++)
+				H32(o->extra[i]);
+			break;
+		case OStaticClosure:
+			H32(o->p1);
+			HFUN(o->p2);
+			break;
+		case OInstanceClosure:
+			H32(o->p1);
+			HFUN(o->p2);
+			H32(o->p3);
+			break;
+		case ODynGet:
+			H32(o->p1);
+			H32(o->p2);
+			HSTR(c->strings[o->p3]);
+			break;
+		case ODynSet:
+			H32(o->p1);
+			HSTR(c->strings[o->p2]);
+			H32(o->p3);
+			break;
+		default:
 			switch( hl_op_nargs[o->op] ) {
 			case 0:
 				break;
@@ -785,8 +785,8 @@ int hl_code_hash_fun( hl_code *c, hl_function *f, int *functions_indexes, int *f
 						H32(o->extra[i]);
 				}
 				break;
-			}
-		}
-	}
-	return hash;
-}
+			}
+		}
+	}
+	return hash;
+}

+ 5 - 5
src/main.c

@@ -120,11 +120,11 @@ static void handle_signal( int signum ) {
 	raise(signum);
 }
 static void setup_handler() {
-	struct sigaction act;
-	act.sa_sigaction = NULL;
-	act.sa_handler = handle_signal;
-	act.sa_flags = 0;
-	sigemptyset(&act.sa_mask);
+	struct sigaction act;
+	act.sa_sigaction = NULL;
+	act.sa_handler = handle_signal;
+	act.sa_flags = 0;
+	sigemptyset(&act.sa_mask);
 	sigaction(SIGSEGV,&act,NULL);
 	sigaction(SIGTERM,&act,NULL);
 }

+ 33 - 33
src/module.c

@@ -272,7 +272,7 @@ static void *resolve_library( const char *lib ) {
 	char tmp[256];	
 	void *h;
 
-#	ifndef HL_CONSOLE
+#	ifndef HL_CONSOLE
 	static char *DISABLED_LIBS = NULL;
 	if( !DISABLED_LIBS ) {
 		DISABLED_LIBS = getenv("HL_DISABLED_LIBS");
@@ -502,39 +502,39 @@ int hl_module_init( hl_module *m, h_bool hot_reload ) {
 		hl_runtime_obj *rt;
 		vdynamic **global = (vdynamic**)(m->globals_data + m->globals_indexes[c->global]);
 		vdynamic *v = NULL;
-		switch (t->kind) {
-		case HOBJ:
-			rt = hl_get_obj_rt(t);
-			v = (vdynamic*)hl_malloc(&m->ctx.alloc,rt->size);
-			v->t = t;
-			for (j = 0; j<c->nfields; j++) {
-				int idx = c->fields[j];
-				hl_type *ft = t->obj->fields[j].t;
-				void *addr = (char*)v + rt->fields_indexes[j];
-				switch (ft->kind) {
-				case HI32:
-					*(int*)addr = m->code->ints[idx];
-					break;
-				case HBOOL:
-					*(bool*)addr = idx != 0;
-					break;
-				case HF64:
-					*(double*)addr = m->code->floats[idx];
-					break;
-				case HBYTES:
-					*(const void**)addr = hl_get_ustring(m->code, idx);
-					break;
-				case HTYPE:
-					*(hl_type**)addr = m->code->types + idx;
-					break;
-				default:
-					*(void**)addr = *(void**)(m->globals_data + m->globals_indexes[idx]);
-					break;
-				}
-			}
-			break;
+		switch (t->kind) {
+		case HOBJ:
+			rt = hl_get_obj_rt(t);
+			v = (vdynamic*)hl_malloc(&m->ctx.alloc,rt->size);
+			v->t = t;
+			for (j = 0; j<c->nfields; j++) {
+				int idx = c->fields[j];
+				hl_type *ft = t->obj->fields[j].t;
+				void *addr = (char*)v + rt->fields_indexes[j];
+				switch (ft->kind) {
+				case HI32:
+					*(int*)addr = m->code->ints[idx];
+					break;
+				case HBOOL:
+					*(bool*)addr = idx != 0;
+					break;
+				case HF64:
+					*(double*)addr = m->code->floats[idx];
+					break;
+				case HBYTES:
+					*(const void**)addr = hl_get_ustring(m->code, idx);
+					break;
+				case HTYPE:
+					*(hl_type**)addr = m->code->types + idx;
+					break;
+				default:
+					*(void**)addr = *(void**)(m->globals_data + m->globals_indexes[idx]);
+					break;
+				}
+			}
+			break;
 		default:
-			hl_fatal("assert");
+			hl_fatal("assert");
 		}
 		*global = v;
 		hl_remove_root(global);

+ 119 - 119
src/std/thread.c

@@ -208,134 +208,134 @@ DEFINE_PRIM(_VOID, tls_set, _TLS _DYN);
 
 // ----------------- DEQUE
 
-typedef struct _tqueue {
-	vdynamic *msg;
-	struct _tqueue *next;
-} tqueue;
-
-struct _hl_deque;
-typedef struct _hl_deque hl_deque;
-
-struct _hl_deque {
-	void (*free)( hl_deque * );
-	tqueue *first;
-	tqueue *last;
-#ifdef HL_THREADS
-#	ifdef HL_WIN
-	CRITICAL_SECTION lock;
-	HANDLE wait;
-#	else
-	pthread_mutex_t lock;
-	pthread_cond_t wait;
-#	endif
-#endif
+typedef struct _tqueue {
+	vdynamic *msg;
+	struct _tqueue *next;
+} tqueue;
+
+struct _hl_deque;
+typedef struct _hl_deque hl_deque;
+
+struct _hl_deque {
+	void (*free)( hl_deque * );
+	tqueue *first;
+	tqueue *last;
+#ifdef HL_THREADS
+#	ifdef HL_WIN
+	CRITICAL_SECTION lock;
+	HANDLE wait;
+#	else
+	pthread_mutex_t lock;
+	pthread_cond_t wait;
+#	endif
+#endif
 };
 
 #if !defined(HL_THREADS)
 #	define LOCK(l)
 #	define UNLOCK(l)
 #	define SIGNAL(l)
-#elif defined(HL_WIN)
-#	define LOCK(l)		EnterCriticalSection(&(l))
-#	define UNLOCK(l)	LeaveCriticalSection(&(l))
-#	define SIGNAL(l)	ReleaseSemaphore(l,1,NULL)
-#else
-#	define LOCK(l)		pthread_mutex_lock(&(l))
-#	define UNLOCK(l)	pthread_mutex_unlock(&(l))
-#	define SIGNAL(l)	pthread_cond_signal(&(l))
-#endif
-
-static void hl_deque_free( hl_deque *q ) {
-	hl_remove_root(&q->first);
-#	if !defined(HL_THREADS)
-#	elif defined(HL_WIN)
-	DeleteCriticalSection(&q->lock);
-	CloseHandle(q->wait);
-#	else
-	pthread_mutex_destroy(&q->lock);
-	pthread_cond_destroy(&q->wait);
-#	endif
-}
-
-HL_API hl_deque *hl_deque_alloc() {
-	hl_deque *q = (hl_deque*)hl_gc_alloc_finalizer(sizeof(hl_deque));
-	q->free = hl_deque_free;
-	q->first = NULL;
-	q->last = NULL;
-	hl_add_root(&q->first);
-#	if !defined(HL_THREADS)
-#	elif defined(HL_WIN)
-	q->wait = CreateSemaphore(NULL,0,(1 << 30),NULL);
-	InitializeCriticalSection(&q->lock);
-#	else
-	pthread_mutex_init(&q->lock,NULL);
-	pthread_cond_init(&q->wait,NULL);
-#	endif
-	return q;
-}
-
-HL_API void hl_deque_add( hl_deque *q, vdynamic *msg ) {
-	tqueue *t = (tqueue*)hl_gc_alloc_raw(sizeof(tqueue));
-	t->msg = msg;
-	t->next = NULL;
-	LOCK(q->lock);
-	if( q->last == NULL )
-		q->first = t;
-	else
-		q->last->next = t;
-	q->last = t;
-	SIGNAL(q->wait);
-	UNLOCK(q->lock);
-}
-
-HL_API void hl_deque_push( hl_deque *q, vdynamic *msg ) {
-	tqueue *t = (tqueue*)hl_gc_alloc_raw(sizeof(tqueue));
-	t->msg = msg;
-	LOCK(q->lock);
-	t->next = q->first;
-	q->first = t;
-	if( q->last == NULL )
-		q->last = t;
-	SIGNAL(q->wait);
-	UNLOCK(q->lock);
-}
-
-HL_API vdynamic *hl_deque_pop( hl_deque *q, bool block ) {
-	vdynamic *msg;
-	hl_blocking(true);
-	LOCK(q->lock);
-	while( q->first == NULL )
-		if( block ) {
-#			if !defined(HL_THREADS)
-#			elif defined(HL_WIN)
-			UNLOCK(q->lock);
-			WaitForSingleObject(q->wait,INFINITE);
-			LOCK(q->lock);
-#			else
-			pthread_cond_wait(&q->wait,&q->lock);
-#			endif
-		} else {
-			UNLOCK(q->lock);
-			hl_blocking(false);
-			return NULL;
-		}
-	msg = q->first->msg;
-	q->first = q->first->next;
-	if( q->first == NULL )
-		q->last = NULL;
-	else
-		SIGNAL(q->wait);
-	UNLOCK(q->lock);
-	hl_blocking(false);
-	return msg;
-}
+#elif defined(HL_WIN)
+#	define LOCK(l)		EnterCriticalSection(&(l))
+#	define UNLOCK(l)	LeaveCriticalSection(&(l))
+#	define SIGNAL(l)	ReleaseSemaphore(l,1,NULL)
+#else
+#	define LOCK(l)		pthread_mutex_lock(&(l))
+#	define UNLOCK(l)	pthread_mutex_unlock(&(l))
+#	define SIGNAL(l)	pthread_cond_signal(&(l))
+#endif
+
+static void hl_deque_free( hl_deque *q ) {
+	hl_remove_root(&q->first);
+#	if !defined(HL_THREADS)
+#	elif defined(HL_WIN)
+	DeleteCriticalSection(&q->lock);
+	CloseHandle(q->wait);
+#	else
+	pthread_mutex_destroy(&q->lock);
+	pthread_cond_destroy(&q->wait);
+#	endif
+}
+
+HL_API hl_deque *hl_deque_alloc() {
+	hl_deque *q = (hl_deque*)hl_gc_alloc_finalizer(sizeof(hl_deque));
+	q->free = hl_deque_free;
+	q->first = NULL;
+	q->last = NULL;
+	hl_add_root(&q->first);
+#	if !defined(HL_THREADS)
+#	elif defined(HL_WIN)
+	q->wait = CreateSemaphore(NULL,0,(1 << 30),NULL);
+	InitializeCriticalSection(&q->lock);
+#	else
+	pthread_mutex_init(&q->lock,NULL);
+	pthread_cond_init(&q->wait,NULL);
+#	endif
+	return q;
+}
+
+HL_API void hl_deque_add( hl_deque *q, vdynamic *msg ) {
+	tqueue *t = (tqueue*)hl_gc_alloc_raw(sizeof(tqueue));
+	t->msg = msg;
+	t->next = NULL;
+	LOCK(q->lock);
+	if( q->last == NULL )
+		q->first = t;
+	else
+		q->last->next = t;
+	q->last = t;
+	SIGNAL(q->wait);
+	UNLOCK(q->lock);
+}
+
+HL_API void hl_deque_push( hl_deque *q, vdynamic *msg ) {
+	tqueue *t = (tqueue*)hl_gc_alloc_raw(sizeof(tqueue));
+	t->msg = msg;
+	LOCK(q->lock);
+	t->next = q->first;
+	q->first = t;
+	if( q->last == NULL )
+		q->last = t;
+	SIGNAL(q->wait);
+	UNLOCK(q->lock);
+}
+
+HL_API vdynamic *hl_deque_pop( hl_deque *q, bool block ) {
+	vdynamic *msg;
+	hl_blocking(true);
+	LOCK(q->lock);
+	while( q->first == NULL )
+		if( block ) {
+#			if !defined(HL_THREADS)
+#			elif defined(HL_WIN)
+			UNLOCK(q->lock);
+			WaitForSingleObject(q->wait,INFINITE);
+			LOCK(q->lock);
+#			else
+			pthread_cond_wait(&q->wait,&q->lock);
+#			endif
+		} else {
+			UNLOCK(q->lock);
+			hl_blocking(false);
+			return NULL;
+		}
+	msg = q->first->msg;
+	q->first = q->first->next;
+	if( q->first == NULL )
+		q->last = NULL;
+	else
+		SIGNAL(q->wait);
+	UNLOCK(q->lock);
+	hl_blocking(false);
+	return msg;
+}
 
 
 #define _DEQUE _ABSTRACT(hl_deque)
-DEFINE_PRIM(_DEQUE, deque_alloc, _NO_ARG);
-DEFINE_PRIM(_VOID, deque_add, _DEQUE _DYN);
-DEFINE_PRIM(_VOID, deque_push, _DEQUE _DYN);
-DEFINE_PRIM(_DYN, deque_pop, _DEQUE _BOOL);
+DEFINE_PRIM(_DEQUE, deque_alloc, _NO_ARG);
+DEFINE_PRIM(_VOID, deque_add, _DEQUE _DYN);
+DEFINE_PRIM(_VOID, deque_push, _DEQUE _DYN);
+DEFINE_PRIM(_DYN, deque_pop, _DEQUE _BOOL);
 
 // ----------------- THREAD
 

+ 13 - 13
src/std/track.c

@@ -178,23 +178,23 @@ HL_PRIM void hl_track_entry( int id, hl_type **t, int *allocs, int *size, varray
 }
 
 HL_PRIM bool hl_track_enabled() {
-	hl_thread_info *t = hl_get_thread();
+	hl_thread_info *t = hl_get_thread();
 	return t && (t->exc_flags & HL_TRACK_DISABLE) == 0;
 }
 
 HL_PRIM void hl_track_enable( bool b ) {
-	hl_thread_info *t = hl_get_thread();
-	if( t ) {
-		if( !b )
-			t->exc_flags |= HL_TRACK_DISABLE;
-		else
-			t->exc_flags &= ~HL_TRACK_DISABLE;
-	}
-}
-
-HL_PRIM void hl_track_reset() {
-	bcount = 0;
-}
+	hl_thread_info *t = hl_get_thread();
+	if( t ) {
+		if( !b )
+			t->exc_flags |= HL_TRACK_DISABLE;
+		else
+			t->exc_flags &= ~HL_TRACK_DISABLE;
+	}
+}
+
+HL_PRIM void hl_track_reset() {
+	bcount = 0;
+}
 
 DEFINE_PRIM(_VOID, track_init, _NO_ARG);
 DEFINE_PRIM(_VOID, track_stop, _NO_ARG);