Remove type, class-hash primitives
							parent
							
								
									192471badb
								
							
						
					
					
						commit
						a27fa29098
					
				| 
						 | 
				
			
			@ -656,7 +656,6 @@ define-builtin
 | 
			
		|||
    { "code-room" "memory" }
 | 
			
		||||
    { "os-env" "system" }
 | 
			
		||||
    { "millis" "system" }
 | 
			
		||||
    { "type" "kernel.private" }
 | 
			
		||||
    { "tag" "kernel.private" }
 | 
			
		||||
    { "modify-code-heap" "compiler.units" }
 | 
			
		||||
    { "dlopen" "alien" }
 | 
			
		||||
| 
						 | 
				
			
			@ -728,7 +727,6 @@ define-builtin
 | 
			
		|||
    { "(sleep)" "threads.private" }
 | 
			
		||||
    { "<float-array>" "float-arrays" }
 | 
			
		||||
    { "<tuple-boa>" "classes.tuple.private" }
 | 
			
		||||
    { "class-hash" "kernel.private" }
 | 
			
		||||
    { "callstack>array" "kernel" }
 | 
			
		||||
    { "innermost-frame-quot" "kernel.private" }
 | 
			
		||||
    { "innermost-frame-scan" "kernel.private" }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -386,9 +386,6 @@ set-primitive-effect
 | 
			
		|||
\ tag { object } { fixnum } <effect> set-primitive-effect
 | 
			
		||||
\ tag make-foldable
 | 
			
		||||
 | 
			
		||||
\ class-hash { object } { fixnum } <effect> set-primitive-effect
 | 
			
		||||
\ class-hash make-foldable
 | 
			
		||||
 | 
			
		||||
\ cwd { } { string } <effect> set-primitive-effect
 | 
			
		||||
 | 
			
		||||
\ cd { string } { } <effect> set-primitive-effect
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -106,7 +106,6 @@ void *primitives[] = {
 | 
			
		|||
	primitive_code_room,
 | 
			
		||||
	primitive_os_env,
 | 
			
		||||
	primitive_millis,
 | 
			
		||||
	primitive_type,
 | 
			
		||||
	primitive_tag,
 | 
			
		||||
	primitive_modify_code_heap,
 | 
			
		||||
	primitive_dlopen,
 | 
			
		||||
| 
						 | 
				
			
			@ -178,7 +177,6 @@ void *primitives[] = {
 | 
			
		|||
	primitive_sleep,
 | 
			
		||||
	primitive_float_array,
 | 
			
		||||
	primitive_tuple_boa,
 | 
			
		||||
	primitive_class_hash,
 | 
			
		||||
	primitive_callstack_to_array,
 | 
			
		||||
	primitive_innermost_stack_frame_quot,
 | 
			
		||||
	primitive_innermost_stack_frame_scan,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										21
									
								
								vm/run.c
								
								
								
								
							
							
						
						
									
										21
									
								
								vm/run.c
								
								
								
								
							| 
						 | 
				
			
			@ -307,32 +307,11 @@ DEFINE_PRIMITIVE(sleep)
 | 
			
		|||
	sleep_millis(to_cell(dpop()));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
DEFINE_PRIMITIVE(type)
 | 
			
		||||
{
 | 
			
		||||
	drepl(tag_fixnum(type_of(dpeek())));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
DEFINE_PRIMITIVE(tag)
 | 
			
		||||
{
 | 
			
		||||
	drepl(tag_fixnum(TAG(dpeek())));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
DEFINE_PRIMITIVE(class_hash)
 | 
			
		||||
{
 | 
			
		||||
	CELL obj = dpeek();
 | 
			
		||||
	CELL tag = TAG(obj);
 | 
			
		||||
	if(tag == TUPLE_TYPE)
 | 
			
		||||
	{
 | 
			
		||||
		F_TUPLE *tuple = untag_object(obj);
 | 
			
		||||
		F_TUPLE_LAYOUT *layout = untag_object(tuple->layout);
 | 
			
		||||
		drepl(layout->hashcode);
 | 
			
		||||
	}
 | 
			
		||||
	else if(tag == OBJECT_TYPE)
 | 
			
		||||
		drepl(get(UNTAG(obj)));
 | 
			
		||||
	else
 | 
			
		||||
		drepl(tag_fixnum(tag));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
DEFINE_PRIMITIVE(slot)
 | 
			
		||||
{
 | 
			
		||||
	F_FIXNUM slot = untag_fixnum_fast(dpop());
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue