Author: andreas
Date: Sun Jan 16 19:38:45 2005
New Revision: 9750
Modified:
trunk/fundev/Sources/harp/core-harp/asm-code-select.dylan
trunk/fundev/Sources/harp/core-harp/constant-ref.dylan
trunk/fundev/Sources/harp/core-harp/module.dylan
trunk/fundev/Sources/harp/gnu-outputter/gnu-outputter.dylan
trunk/fundev/Sources/harp/pentium-harp/general.dylan
trunk/fundev/Sources/harp/pentium-harp/moves.dylan
trunk/fundev/Sources/harp/pentium-linux-rtg/ffi-barrier.dylan
trunk/fundev/Sources/lib/run-time/collector.c
trunk/fundev/Sources/lib/run-time/pentium-linux/runtime.harp
trunk/fundev/Sources/lib/run-time/pentium-linux/runtime.s
Log:
bug: 6985
Replace the two broken implementations of storing the teb pointer in a
thread-local place by one that makes use of the system-provided
facilities for thread-local storage. I'm not too sure whether I'm using
the correct relocation type (R_386_TLS_LE at the moment), it could
break when linking against other libraries that use TLS. I'm following
what http://docsun.cites.uiuc.edu/sun_docs/C/solaris_9/SUNWdev/LLM/p62.html
says, though.
Modified: trunk/fundev/Sources/harp/core-harp/asm-code-select.dylan
==============================================================================
--- trunk/fundev/Sources/harp/core-harp/asm-code-select.dylan (original)
+++ trunk/fundev/Sources/harp/core-harp/asm-code-select.dylan Sun Jan 16
19:38:45 2005
@@ -177,6 +177,8 @@
case
high? => <labelled-absolute-constant-high>;
low? => <labelled-absolute-constant-low>;
+ instance?(constant-ref, <i-thread-constant-reference>)
+ => <labelled-absolute-thread-constant>;
otherwise => <labelled-absolute-constant>;
end;
let label
Modified: trunk/fundev/Sources/harp/core-harp/constant-ref.dylan
==============================================================================
--- trunk/fundev/Sources/harp/core-harp/constant-ref.dylan (original)
+++ trunk/fundev/Sources/harp/core-harp/constant-ref.dylan Sun Jan 16
19:38:45 2005
@@ -53,6 +53,9 @@
define abstract open class <indirect-constant-reference> (<constant-reference>)
end class;
+define abstract open class <thread-constant-reference> (<constant-reference>)
+end class;
+
define abstract open class <imported-constant-reference> (<constant-reference>)
end class;
@@ -118,7 +121,9 @@
(<i-indirect-constant-reference>, <imported-constant-reference>)
end class;
-
+define class <i-thread-constant-reference>
+ (<i-address-constant-reference>, <thread-constant-reference>)
+end class;
define class <interactor-indirect-constant-reference>
(<i-indirect-constant-reference>, <interactor-constant-reference>)
@@ -309,6 +314,8 @@
define class <labelled-absolute-constant-low> (<labelled-absolute-constant>)
end class;
+define class <labelled-absolute-thread-constant> (<labelled-absolute-constant>)
+end class;
/// And a subclass for relative constants.
Modified: trunk/fundev/Sources/harp/core-harp/module.dylan
==============================================================================
--- trunk/fundev/Sources/harp/core-harp/module.dylan (original)
+++ trunk/fundev/Sources/harp/core-harp/module.dylan Sun Jan 16 19:38:45 2005
@@ -258,6 +258,7 @@
<constant-reference>,
<address-constant-reference>,
<indirect-constant-reference>,
+ <thread-constant-reference>,
<imported-constant-reference>,
<interactor-constant-reference>,
<i-constant-reference>,
@@ -266,6 +267,7 @@
<df-constant-reference>,
<i-address-constant-reference>,
<i-indirect-constant-reference>,
+ <i-thread-constant-reference>,
<sf-address-constant-reference>,
<sf-indirect-constant-reference>,
<df-address-constant-reference>,
@@ -277,6 +279,7 @@
<labelled-absolute-constant>,
<labelled-absolute-constant-high>,
<labelled-absolute-constant-low>,
+ <labelled-absolute-thread-constant>,
<labelled-relative-constant>,
<labelled-constant-with-opcode>,
labelled-constant-size,
Modified: trunk/fundev/Sources/harp/gnu-outputter/gnu-outputter.dylan
==============================================================================
--- trunk/fundev/Sources/harp/gnu-outputter/gnu-outputter.dylan (original)
+++ trunk/fundev/Sources/harp/gnu-outputter/gnu-outputter.dylan Sun Jan 16
19:38:45 2005
@@ -321,6 +321,14 @@
(outputter, item, increment, attr: "@l");
end method;
+define method output-code-label
+ (outputter :: <harp-gnu-outputter>,
+ item :: <labelled-absolute-thread-constant>,
+ increment :: <integer>) => ()
+ output-code-label-internal
+ (outputter, item, increment, attr: "@ntpoff");
+end method;
+
define method output-code-label
(outputter :: <harp-gnu-outputter>,
Modified: trunk/fundev/Sources/harp/pentium-harp/general.dylan
==============================================================================
--- trunk/fundev/Sources/harp/pentium-harp/general.dylan (original)
+++ trunk/fundev/Sources/harp/pentium-harp/general.dylan Sun Jan 16
19:38:45 2005
@@ -414,10 +414,16 @@
const-offset: 0);
end method;
+define method thread-local-runtime-reference
+(name :: <byte-string>) => (c :: <constant-reference>)
+ make(<i-thread-constant-reference>,
+ refers-to: name,
+ const-offset: 0);
+end method;
+
+
define method output-implicit-externals
(backend :: <pentium-linux-back-end>, outputter :: <harp-outputter>)
output-external(backend, outputter, remove-optionals-runtime);
- output-external(backend, outputter,
segment-register-load-instruction-offset);
- output-external(backend, outputter,
segment-register-store-instruction-offset);
output-external(backend, outputter, dylan-integer-overflow-handler);
end method;
Modified: trunk/fundev/Sources/harp/pentium-harp/moves.dylan
==============================================================================
--- trunk/fundev/Sources/harp/pentium-harp/moves.dylan (original)
+++ trunk/fundev/Sources/harp/pentium-harp/moves.dylan Sun Jan 16 19:38:45 2005
@@ -412,8 +412,6 @@
end method;
-// Temporary: the TLB is currently stored in the Windows TIB at offset #x14
-// (reserved for application use as pvArbitrary).
define method op--store-thread-local
@@ -448,151 +446,29 @@
op--load-thread-local(be, dest, /* dummy */ 0);
end method;
-/*
-define method op--store-thread-local
- (be :: <pentium-linux-back-end>, data, offset :: <integer>) => ()
- emit(be, gs.segment-prefix);
- harp-out(be)
- st(be, data, 0, #x3c);
- end harp-out;
-end method;
-
-define method op--load-thread-local
- (be :: <pentium-linux-back-end>, dest :: <real-register>, offset ::
<integer>) => ()
-
-// 57c: 65 8b 0d 3c 00 00 00 mov %gs:0x3c,%ecx
-// 583: 89 ce mov %ecx,%esi
-
- emit(be, gs.segment-prefix);
- harp-out(be)
- ld(be, dest, 0, #x3c);
- end harp-out;
-end method;
-*/
-
-/// Some versions of LinuxThreads have aligned 2MB stacks.
-/// Use a position at a fixed offset from the bottom of stack to
-/// store the TEB while running Dylan code.
-
-define constant $linux-stack-bot-mask = (2 * 1024 * 1024) - 1;
-define constant $linux-teb-stack-bot-offset = 1 - 256; /* hope this is safe */
-
-/*
-define method op--store-thread-local
- (be :: <pentium-linux-back-end>, data, offset :: <integer>) => ()
- let temp = reg--tmp2;
- harp-out(be)
- or(be, temp, reg--stack, $linux-stack-bot-mask);
- st(be, data, temp, $linux-teb-stack-bot-offset);
- end harp-out;
-end method;
-
-define method op--load-thread-local
- (be :: <pentium-linux-back-end>, dest :: <real-register>, offset ::
<integer>) => ()
- harp-out(be)
- or(be, dest, reg--stack, $linux-stack-bot-mask);
- ld(be, dest, dest, $linux-teb-stack-bot-offset);
- end harp-out;
-end method;
-*/
-
-/// Support both versions of LinuxThreads (gs segment register, aligned 2MB
stacks).
-/// Generate code to dispatch at runtime to the appropriate inlined block of
machine code.
-
-define constant segment-register-load-instruction-offset =
- indirect-runtime-reference("Psegment_register_load_instruction_offset");
-
-define constant segment-register-store-instruction-offset =
- indirect-runtime-reference("Psegment_register_store_instruction_offset");
+define constant $teb =
+ thread-local-runtime-reference("teb");
define method op--store-thread-local
(be :: <pentium-linux-back-end>, data, offset :: <integer>) => ()
- unless (data == reg--tmp1)
- harp-out (be)
- move(be, reg--tmp1, data)
- end;
- end;
- let temp = reg--tmp2;
- emit(be, call, 0, 0, 0, 0); // call
$+0
- harp-out(be)
- ld(be, temp, reg--stack, 0); // 3;
mov (%esp,1),%ecx
- add(be, temp, temp, 3 + 3 + 6 + 2); // 3;
add $0x0e,%ecx
- add(be, temp, temp, segment-register-store-instruction-offset); // 6;
add Psegment_register_store_instruction_offset,%ecx
- end harp-out;
-
- jump-to-register(be, temp); // 2;
jmp *%ecx
-
- harp-out(be)
- move(be, temp, reg--stack); // 2;
mov %esp,%ecx
- or(be, temp, temp, $linux-stack-bot-mask); // 6; or
$0x1fffff,%ecx
- st(be, reg--tmp1, temp, $linux-teb-stack-bot-offset); // 6;
mov %esi,0xffffff01(%ecx)
-
- ld(be, temp, reg--stack, 0); // 3;
mov (%esp,1),%ecx
- add(be, temp, temp, 3 + 3 + 6 + 2 + 2 + 6 + 6 + 3 + 3 + 2 + 7); // 3;
add $0x2b,%ecx
- end harp-out;
-
- jump-to-register(be, temp); // 2;
jmp *%ecx
-
emit(be, gs.segment-prefix);
harp-out(be)
- st(be, reg--tmp1, 0, #x3c); // 7;
mov %esi,%gs:0x3c
-
- add(be, reg--stack, reg--stack, 4); // return
+ st(be, data, $teb, 0 /*ignore offset for Linux */);
end harp-out;
end method;
define method op--load-thread-local
(be :: <pentium-linux-back-end>, dest :: <real-register>, offset ::
<integer>) => ()
- unless (dest == reg--tmp1)
- // preserve reg--tmp1; parts of runtime (e.g.
primitive_build_bind_exit_frame) requires it.
- harp-out (be)
- push(be, reg--tmp1)
- end;
- end;
- emit(be, call, 0, 0, 0, 0);
// call $+0
- harp-out(be)
- ld(be, reg--tmp1, reg--stack, 0);
// 3; mov (%esp,1),%esi
- add(be, reg--tmp1, reg--tmp1, 3 + 3 + 6 + 2);
// 3; add $0x0e,%esi
- add(be, reg--tmp1, reg--tmp1, segment-register-load-instruction-offset);
// 6; add Psegment_register_load_instruction_offset,%esi
- end harp-out;
-
- jump-to-register(be, reg--tmp1);
// 2; jmp *%esi
-
- harp-out(be)
- move(be, reg--tmp1, reg--stack);
// 2; mov %esp,%esi
- or(be, reg--tmp1, reg--tmp1, $linux-stack-bot-mask);
// 6; or $0x1fffff,%esi
- ld(be, reg--tmp1, reg--tmp1, $linux-teb-stack-bot-offset);
// 6; mov 0xffffff01(%esi),%esi
- push(be, reg--tmp1);
// 1; push %esi
-
- ld(be, reg--tmp1, reg--stack, 4);
// 4; mov 0x4(%esp,1),%esi
- add(be, reg--tmp1, reg--tmp1, 3 + 3 + 6 + 2 + 2 + 6 + 6 + 1 + 4 + 3 + 2 +
7 + 1); // 3; add $0x2e,%esi
- end harp-out;
-
- jump-to-register(be, reg--tmp1);
// 2; jmp *%esi
-
emit(be, gs.segment-prefix);
harp-out(be)
- ld(be, reg--tmp1, 0, #x3c);
// 7; mov %gs:0x3c,%esi
- push(be, reg--tmp1);
// 1; push %esi
-
- ld(be, dest, reg--stack, 0);
- add(be, reg--stack, reg--stack, 8);
// return
+ ld(be, dest, $teb, 0 /*ignore offset for Linux */);
end harp-out;
- unless (dest == reg--tmp1)
- // preserve reg--tmp1; parts of runtime (e.g.
primitive_build_bind_exit_frame) requires it.
- harp-out (be)
- pop(be, reg--tmp1)
- end;
- end;
-end method;
-
-define method jump-to-register(be :: <pentium-linux-back-end>, dest ::
<real-register>) => ()
- emit(be, grp5);
- emit-reg-direct(be, dest, #b100000);
end method;
/// Now the templates
+// Temporary: the TLB is currently stored in the Windows TIB at offset #x14
+// (reserved for application use as pvArbitrary).
with-ops-in pentium-instructions (get-teb, set-teb) info := #x14 end;
with-ops-in pentium-instructions (get-seh, set-seh) info := 0 end;
Modified: trunk/fundev/Sources/harp/pentium-linux-rtg/ffi-barrier.dylan
==============================================================================
--- trunk/fundev/Sources/harp/pentium-linux-rtg/ffi-barrier.dylan
(original)
+++ trunk/fundev/Sources/harp/pentium-linux-rtg/ffi-barrier.dylan Sun Jan
16 19:38:45 2005
@@ -8,40 +8,4 @@
Warranty: Distributed WITHOUT WARRANTY OF ANY KIND
-
-define sideways method op--initialize-thread-instructions (be ::
<pentium-linux-back-end>) => ()
- when-base
- op--call-c(be, check-runtime-thread-library-uses-segment-register);
- end when-base;
-
- let load-offset = 2 + 6 + 6 + 1 + 4 + 3 + 2;
- let store-offset = 2 + 6 + 6 + 3 + 3 + 2;
- let tmp = make-n-register(be);
- when-base
- ins--muls(be, tmp, thread-library-uses-segment-register0, load-offset);
- ins--move(be, segment-register-load-instruction-offset, tmp);
- ins--muls(be, tmp, thread-library-uses-segment-register0, store-offset);
- ins--move(be, segment-register-store-instruction-offset, tmp);
- end;
- when-client
- ins--muls(be, tmp, thread-library-uses-segment-register, load-offset);
- ins--move(be, segment-register-load-instruction-offset, tmp);
- ins--muls(be, tmp, thread-library-uses-segment-register, store-offset);
- ins--move(be, segment-register-store-instruction-offset, tmp);
- end;
-end method;
-
-define c-fun runtime-external
check-runtime-thread-library-uses-segment-register
- = "check_runtime_thread_library_uses_segment_register";
-
-define c-full-indirect runtime-variable thread-library-uses-segment-register0
= "%thread-library-uses-segment-register?",
- client?: #f, base?: #t;
-
-define c-full-indirect runtime-external thread-library-uses-segment-register =
"%thread-library-uses-segment-register?",
- client?: #t, base?: #f;
-
-define runtime-variable segment-register-load-instruction-offset =
"%segment-register-load-instruction-offset",
- data: 0, client?: #t, base?: #t;
-
-define runtime-variable segment-register-store-instruction-offset =
"%segment-register-store-instruction-offset",
- data: 0, client?: #t, base?: #t;
+//empty
Modified: trunk/fundev/Sources/lib/run-time/collector.c
==============================================================================
--- trunk/fundev/Sources/lib/run-time/collector.c (original)
+++ trunk/fundev/Sources/lib/run-time/collector.c Sun Jan 16 19:38:45 2005
@@ -263,6 +263,12 @@
/* Thread Local Variables, accessed via the GC-TEB*/
+#ifdef X86_LINUX_PLATFORM
+// On Linux, use the thread-local storage provided by the system to
+// hold the TEB pointer
+__thread void* teb;
+#endif
+
typedef struct gc_teb_s { /* GC Thread Environment block descriptor */
mps_bool_t gc_teb_inside_tramp; /* the HARP runtime assumes offset 0 for
this */
mps_ap_t gc_teb_main_ap; /* the HARP runtime assumes offset 1 for
this */
@@ -590,49 +596,13 @@
}
-#ifdef LINUX_PLATFORM
-/* TEMPORARY - while booting the compiler */
-void *Pthread_local_storage_for_gc[10];
-void *Pthread_local_storage[100];
-#endif
-
-#if defined(X86_LINUX_PLATFORM)
-extern BOOL Pthread_library_uses_segment_registerQ;
-#endif
-
__inline
gc_teb_t current_gc_teb()
{
gc_teb_t gc_teb;
#if defined(X86_LINUX_PLATFORM)
- if (Pthread_library_uses_segment_registerQ)
- __asm__
- (
- "movl %%gs:%c1,%%ecx\n\t"
- "movl %%ecx,%0\n\t" /* the TEB */
-
- // output operands
- : "=g" (gc_teb)
- // input operands
- : "i" (4 * 15)
- // clobbered machine registers
- : "cx"
- );
- else
- __asm__
- (
- "movl %%esp, %%ecx\n\t"
- "orl $0x1fffff, %%ecx\n\t" /* the top of stack */
- "movl 0xffffff01(%%ecx), %%ecx\n\t" /* offset -255; intermediate
mov to avoid too many memory references */
- "movl %%ecx,%0\n\t" /* the TEB */
-
- // output operands
- : "=g" (gc_teb)
- : // no input operands
- // clobbered machine registers
- : "cx"
- );
+ gc_teb = teb;
#elif defined(PPC_LINUX_PLATFORM)
__asm__
@@ -2525,43 +2495,7 @@
RUN_TIME_API
void check_runtime_thread_library_uses_segment_register() {
- char *value = getenv("THREAD_LIBRARY_USES_SEGMENT_REGISTER");
- if ((value == NULL) || (strlen(value) == 0))
- {
- void *gs = NULL;
- __asm__
- (
- "movl %%gs,%0\n\t"
-
- // output operands
- : "=g" (gs)
- );
- //fprintf(stderr,"(gs=%d) \n",gs);
- if (gs != NULL)
- {
- void *tid = (void *)pthread_self();
- void *tid2 = NULL;
- __asm__
- (
- "movl %%gs:0x50,%0\n\t"
-
- // output operands
- : "=g" (tid2)
- );
- //fprintf(stderr,"(tid=%d) \n",tid);
- //fprintf(stderr,"(tid2=%d) \n",tid2);
- if (tid == tid2)
- Pthread_library_uses_segment_registerQ = TRUE;
- }
- }
- else
- {
- if (strcmp(value, "TRUE") == 0)
- {
- //fputs("value is TRUE", stderr);
- Pthread_library_uses_segment_registerQ = TRUE;
- }
- }
+ // XXX track down caller and eliminate
return;
}
Modified: trunk/fundev/Sources/lib/run-time/pentium-linux/runtime.harp
==============================================================================
--- trunk/fundev/Sources/lib/run-time/pentium-linux/runtime.harp
(original)
+++ trunk/fundev/Sources/lib/run-time/pentium-linux/runtime.harp Sun Jan
16 19:38:45 2005
@@ -3099,7 +3099,7 @@
+++ Live variable scopes for primitive_type_check_values +++
Start scope at 3 with frame for no variables
-End scope at 388
+End scope at 278
+++ No Source Code Locators for primitive_type_check_values +++
@@ -3223,7 +3223,7 @@
+++ Live variable scopes for primitive_type_check_rest_values +++
Start scope at 3 with frame for no variables
-End scope at 248
+End scope at 139
+++ No Source Code Locators for primitive_type_check_rest_values +++
@@ -4000,8 +4000,8 @@
+++ ending code for primitive_heap_vector_remaining_values +++
+++ Live variable scopes for primitive_heap_vector_remaining_values +++
-Start scope at 183 with frame for no variables
-End scope at 211
+Start scope at 81 with frame for no variables
+End scope at 109
+++ No Source Code Locators for primitive_heap_vector_remaining_values +++
@@ -5060,7 +5060,7 @@
+++ Live variable scopes for call_dylan_function_returning_all_values +++
Start scope at 7 with frame for no variables
-End scope at 131
+End scope at 71
+++ No Source Code Locators for call_dylan_function_returning_all_values +++
@@ -5165,7 +5165,7 @@
+++ Live variable scopes for get_tlv_vector +++
Start scope at 4 with frame for no variables
-End scope at 65
+End scope at 13
+++ No Source Code Locators for get_tlv_vector +++
@@ -5201,7 +5201,7 @@
+++ Live variable scopes for set_tlv_vector +++
Start scope at 4 with frame for no variables
-End scope at 66
+End scope at 16
+++ No Source Code Locators for set_tlv_vector +++
@@ -5236,7 +5236,7 @@
+++ Live variable scopes for get_current_thread +++
Start scope at 4 with frame for no variables
-End scope at 65
+End scope at 13
+++ No Source Code Locators for get_current_thread +++
@@ -5272,7 +5272,7 @@
+++ Live variable scopes for set_current_thread +++
Start scope at 4 with frame for no variables
-End scope at 66
+End scope at 16
+++ No Source Code Locators for set_current_thread +++
@@ -5307,7 +5307,7 @@
+++ Live variable scopes for get_current_thread_handle +++
Start scope at 4 with frame for no variables
-End scope at 65
+End scope at 13
+++ No Source Code Locators for get_current_thread_handle +++
@@ -5343,7 +5343,7 @@
+++ Live variable scopes for set_current_thread_handle +++
Start scope at 4 with frame for no variables
-End scope at 66
+End scope at 16
+++ No Source Code Locators for set_current_thread_handle +++
@@ -5493,7 +5493,7 @@
+++ Live variable scopes for spy_read_thread_variable_at_offset +++
Start scope at 4 with frame for no variables
-End scope at 71
+End scope at 19
+++ No Source Code Locators for spy_read_thread_variable_at_offset +++
Modified: trunk/fundev/Sources/lib/run-time/pentium-linux/runtime.s
==============================================================================
--- trunk/fundev/Sources/lib/run-time/pentium-linux/runtime.s (original)
+++ trunk/fundev/Sources/lib/run-time/pentium-linux/runtime.s Sun Jan 16
19:38:45 2005
@@ -353,8 +353,7 @@
.size Kdenormal_float,. - Kdenormal_float
.global primitive_remove_optionals
- .global Psegment_register_load_instruction_offset
- .global Psegment_register_store_instruction_offset
+ .global dylan_integer_overflow_handler
.section .text
.align 4
@@ -856,13 +855,12 @@
.type primitive_type_check_values,@function
primitive_type_check_values:
.byte 85,137,229,131,236,32,139,85,8,80,156,89,128,229,4,15
- .byte 132,148,0,0,0,106,1,139,52,36,137,117,240,141,116,36
+ .byte 132,140,0,0,0,106,1,139,52,36,137,117,240,141,116,36
.byte 4,137,117,244,141,114,8,137,117,224,139,114,4,137,117,228
.byte 131,109,228,1,199,69,252,0,0,0,0,199,69,236,0,0
- .byte 0,0,139,117,236,59,117,228,15,132,231,0,0,0,139,117
- .byte 236,59,117,240,15,141,219,0,0,0,139,117,244,3,117,252
- .byte 139,54,137,117,248,139,117,224,3,117,236,139,54,137,117,232
- .byte 129,125,232
+ .byte 0,0,139,117,236,59,117,228,116,125,139,117,236,59,117,240
+ .byte 125,117,139,117,244,3,117,252,139,54,137,117,248,139,117,224
+ .byte 3,117,236,139,54,137,117,232,129,125,232
.long KPfalseVKi
.byte 116,38,139,125,232,129,255
.long KLobjectGVKd
@@ -870,18 +868,12 @@
.long KPfalseVKi
.byte 117,11,255,117,232,139,69,248,232
.long Ktype_check_errorVKiI - 4 - .
- .byte 131,69,252,4,131,69,236,4,235,153,86,232,0,0,0,0
- .byte 139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,12,36,131,196,8,94,139,73,32,137,203,193,227
- .byte 2,43,227,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,131,198,36,137,231,252,243,165
- .byte 83,233,226,254,255,255,129,125,12
+ .byte 131,69,252,4,131,69,236,4,235,161,101,139,13
+ .long teb@ntpoff
+ .byte 139,73,32,137,203,193,227,2,43,227,101,139,53
+ .long teb@ntpoff
+ .byte 131,198,36,137,231,252,243,165,83,233,80,255,255,255,129,125
+ .byte 12
.long KPfalseVKi
.byte 116,63,139,117,252,59,117,240,125,55,139,117,244,3,117,252
.byte 139,54,137,117,248,139,125,12,129,255
@@ -891,305 +883,178 @@
.byte 117,11,255,117,12,139,69,248,232
.long Ktype_check_errorVKiI - 4 - .
.byte 131,69,252,4,235,193,91,131,251,1,117,6,253,88,201,194
- .byte 8,0,137,218,193,250,2,232,0,0,0,0,139,52,36,131
- .byte 198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,86,32,86,232,0,0,0
- .byte 0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,60,36,131,196,8,94,131,199,36,137,209,137,230
- .byte 252,243,165,3,227,252,233,109,255,255,255
+ .byte 8,0,137,218,193,250,2,101,139,53
+ .long teb@ntpoff
+ .byte 137,86,32,101,139,61
+ .long teb@ntpoff
+ .byte 131,199,36,137,209,137,230,252,243,165,3,227,252,235,214
.global primitive_type_check_rest_values
.type primitive_type_check_rest_values,@function
primitive_type_check_rest_values:
- .byte 85,137,229,131,236,16,137,194,80,156,89,128,229,4,116,85
+ .byte 85,137,229,131,236,16,137,194,80,156,89,128,229,4,116,81
.byte 106,1,139,52,36,137,117,240,141,116,36,4,137,117,244,137
- .byte 85,252,139,117,252,59,117,240,15,141,195,0,0,0,139,117
- .byte 244,3,117,252,139,54,137,117,248,139,125,8,129,255
+ .byte 85,252,139,117,252,59,117,240,125,90,139,117,244,3,117,252
+ .byte 139,54,137,117,248,139,125,8,129,255
.long KLobjectGVKd
.byte 116,27,139,95,4,87,139,69,248,255,211,61
.long KPfalseVKi
.byte 117,11,255,117,8,139,69,248,232
.long Ktype_check_errorVKiI - 4 - .
- .byte 131,69,252,4,235,189,86,232,0,0,0,0,139,52,36,131
- .byte 198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,12,36,131,196,8,94,139,73,32,137,203,193,227
- .byte 2,43,227,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,131,198,36,137,231,252,243,165
- .byte 83,233,33,255,255,255,91,131,251,1,117,6,253,88,201,194
- .byte 4,0,137,218,193,250,2,232,0,0,0,0,139,52,36,131
- .byte 198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,86,32,86,232,0,0,0
- .byte 0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,60,36,131,196,8,94,131,199,36,137,209,137,230
- .byte 252,243,165,3,227,252,233,109,255,255,255
+ .byte 131,69,252,4,235,193,101,139,13
+ .long teb@ntpoff
+ .byte 139,73,32,137,203,193,227,2,43,227,101,139,53
+ .long teb@ntpoff
+ .byte 131,198,36,137,231,252,243,165,83,235,142,91,131,251,1,117
+ .byte 6,253,88,201,194,4,0,137,218,193,250,2,101,139,53
+ .long teb@ntpoff
+ .byte 137,86,32,101,139,61
+ .long teb@ntpoff
+ .byte 131,199,36,137,209,137,230,252,243,165,3,227,252,235,214
.global primitive_adjust_mv
.type primitive_adjust_mv,@function
primitive_adjust_mv:
- .byte 156,89,128,229,4,15,132,152,0,0,0,131,255,1,15,132
- .byte 142,0,0,0,232,0,0,0,0,139,52,36,131,198,14,3
- .byte 53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,126,32,131,255,0,116,76
- .byte 86,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,28,36,131,196,8,94,131,195,36,137,249,184
+ .byte 156,89,128,229,4,116,46,131,255,1,116,40,101,139,53
+ .long teb@ntpoff
+ .byte 137,126,32,131,255,0,116,24,101,139,29
+ .long teb@ntpoff
+ .byte 131,195,36,137,249,184
.long KPfalseVKi
- .byte 137,223,252,243,171,137,3,253,195,86,232,0,0,0,0,139
- .byte 52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,28,36,131,196,8,94,139,91,32,59,251,116,189
- .byte 131,255,1,116,183,232,0,0,0,0,139,52,36,131,198,14
- .byte 3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,126,32,59,251,124,81,137
- .byte 249,43,203,137,223,86,232,0,0,0,0,139,52,36,131,198
- .byte 14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,28,36,131,196,8,94,131,195,36,193,231,2,3
- .byte 251,184
+ .byte 137,223,252,243,171,137,3,253,195,101,139,29
+ .long teb@ntpoff
+ .byte 139,91,32,59,251,116,241,131,255,1,116,235,101,139,53
+ .long teb@ntpoff
+ .byte 137,126,32,59,251,124,29,137,249,43,203,137,223,101,139,29
+ .long teb@ntpoff
+ .byte 131,195,36,193,231,2,3,251,184
.long KPfalseVKi
- .byte 252,243,171,252,233,33,255,255,255
+ .byte 252,243,171,252,235,190
.global primitive_adjust_mv_rest
.type primitive_adjust_mv_rest,@function
primitive_adjust_mv_rest:
- .byte 156,89,128,229,4,15,132,147,0,0,0,131,255,1,15,142
- .byte 137,0,0,0,232,0,0,0,0,139,52,36,131,198,14,3
- .byte 53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,126,32,86,232,0,0,0
- .byte 0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,20,36,131,196,8,94,131,194,36,137,249,184
+ .byte 156,89,128,229,4,116,41,131,255,1,126,35,101,139,53
+ .long teb@ntpoff
+ .byte 137,126,32,101,139,21
+ .long teb@ntpoff
+ .byte 131,194,36,137,249,184
.long KPfalseVKi
- .byte 137,215,252,243,171,137,2,253,195,86,232,0,0,0,0,139
- .byte 52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,28,36,131,196,8,94,139,91,32,59,251,126,189
- .byte 131,255,1,116,183,137,249,43,203,86,232,0,0,0,0,139
- .byte 52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,20,36,131,196,8,94,131,194,36,193,227,2,3
- .byte 218,184
+ .byte 137,215,252,243,171,137,2,253,195,101,139,29
+ .long teb@ntpoff
+ .byte 139,91,32,59,251,126,241,131,255,1,116,235,137,249,43,203
+ .byte 101,139,21
+ .long teb@ntpoff
+ .byte 131,194,36,193,227,2,3,218,184
.long KPfalseVKi
- .byte 137,223,252,243,171,232,0,0,0,0,139,52,36,131,198,14
- .byte 3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,126,32,252,233,37,255,255
- .byte 255
+ .byte 137,223,252,243,171,101,139,53
+ .long teb@ntpoff
+ .byte 137,126,32,252,235,194
.global primitive_pad_mv
.type primitive_pad_mv,@function
primitive_pad_mv:
- .byte 156,89,128,229,4,116,80,131,255,1,126,74,86,232,0,0
- .byte 0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,28,36,131,196,8,94,131,195,36,137,249,184
+ .byte 156,89,128,229,4,116,28,131,255,1,126,22,101,139,29
+ .long teb@ntpoff
+ .byte 131,195,36,137,249,184
.long KPfalseVKi
- .byte 137,223,252,243,171,195,86,232,0,0,0,0,139,52,36,131
- .byte 198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,28,36,131,196,8,94,139,91,32,131,255,1,116
- .byte 188,59,251,126,184,137,249,43,203,137,223,86,232,0,0,0
- .byte 0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,28,36,131,196,8,94,131,195,36,193,231,2,3
- .byte 251,184
+ .byte 137,223,252,243,171,195,101,139,29
+ .long teb@ntpoff
+ .byte 139,91,32,131,255,1,116,240,59,251,126,236,137,249,43,203
+ .byte 137,223,101,139,29
+ .long teb@ntpoff
+ .byte 131,195,36,193,231,2,3,251,184
.long KPfalseVKi
- .byte 252,243,171,233,98,255,255,255
+ .byte 252,243,171,235,205
.global primitive_set_mv_from_vector
.type primitive_set_mv_from_vector,@function
primitive_set_mv_from_vector:
.byte 139,80,4,193,250,2,131,250,1,117,5,139,64,8,253,195
- .byte 232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,86,32,131,250,0,116,78
- .byte 141,112,8,139,6,86,232,0,0,0,0,139,52,36,131,198
- .byte 14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,60,36,131,196,8,94,131,199,36,137,209,252,243
- .byte 165,252,233,112,255,255,255,184
+ .byte 101,139,53
+ .long teb@ntpoff
+ .byte 137,86,32,131,250,0,116,23,141,112,8,139,6,101,139,61
+ .long teb@ntpoff
+ .byte 131,199,36,137,209,252,243,165,252,235,217,184
.long KPfalseVKi
- .byte 252,233,101,255,255,255
+ .byte 252,235,209
.global primitive_build_bind_exit_frame
.type primitive_build_bind_exit_frame,@function
primitive_build_bind_exit_frame:
- .byte 94,131,236,56,137,68,36,52,86,232,0,0,0,0,139,52
- .byte 36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,4,36,131,196,8,94,139,0,137,108,36,48,137
- .byte 68,36,44,137,224,255,230
+ .byte 94,131,236,56,137,68,36,52,101,139,5
+ .long teb@ntpoff
+ .byte 139,0,137,108,36,48,137,68,36,44,137,224,255,230
.global primitive_build_unwind_protect_frame
.type primitive_build_unwind_protect_frame,@function
primitive_build_unwind_protect_frame:
- .byte 95,131,236,12,137,68,36,8,86,232,0,0,0,0,139,52
- .byte 36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,4,36,131,196,8,94,139,0,137,108,36,4,137
- .byte 4,36,137,224,232,0,0,0,0,139,52,36,131,198,14,3
- .byte 53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,38,255,231
+ .byte 95,131,236,12,137,68,36,8,101,139,5
+ .long teb@ntpoff
+ .byte 139,0,137,108,36,4,137,4,36,137,224,101,139,53
+ .long teb@ntpoff
+ .byte 137,38,255,231
.global primitive_unwind_protect_cleanup
.type primitive_unwind_protect_cleanup,@function
primitive_unwind_protect_cleanup:
- .byte 86,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,28,36,131,196,8,94,139,27,139,59,232,0,0
- .byte 0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,62,80,156,89,128,229,4
- .byte 116,29,106,1,83,139,123,8,255,215,91,90,131,250,1,15
- .byte 133,150,0,0,0,253,88,139,52,36,141,99,12,255,230,86
- .byte 232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,12,36,131,196,8,94,139,73,32,137,202,193,226
- .byte 2,43,226,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,131,198,36,137,231,252,243,165
- .byte 82,233,89,255,255,255,137,208,193,248,2,232,0,0,0,0
- .byte 139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,70,32,86,232,0,0,0
- .byte 0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,60,36,131,196,8,94,131,199,36,137,193,137,230
- .byte 252,243,165,3,226,252,233,221,254,255,255
+ .byte 101,139,29
+ .long teb@ntpoff
+ .byte 139,27,139,59,101,139,53
+ .long teb@ntpoff
+ .byte 137,62,80,156,89,128,229,4,116,25,106,1,83,139,123,8
+ .byte 255,215,91,90,131,250,1,117,45,253,88,139,52,36,141,99
+ .byte 12,255,230,101,139,13
+ .long teb@ntpoff
+ .byte 139,73,32,137,202,193,226,2,43,226,101,139,53
+ .long teb@ntpoff
+ .byte 131,198,36,137,231,252,243,165,82,235,198,137,208,193,248,2
+ .byte 101,139,53
+ .long teb@ntpoff
+ .byte 137,70,32,101,139,61
+ .long teb@ntpoff
+ .byte 131,199,36,137,193,137,230,252,243,165,3,226,252,235,175
.global primitive_nlx
.type primitive_nlx,@function
primitive_nlx:
- .byte 86,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,20,36,131,196,8,94,139,18,139,72,44,137,195
- .byte 139,124,36,4,59,209,117,13,137,248,139,123,52,139,107,48
- .byte 141,99,56,255,231,141,67,4,156,89,128,229,4,15,132,201
- .byte 0,0,0,137,120,8,199,64,4,5,0,0,0,137,3,131
- .byte 250,0,15,132,229,1,0,0,137,212,139,60,36,139,68,36
- .byte 8,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,62,139,108,36,4,83,255
- .byte 208,91,86,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,20,36,131,196,8,94,139,18,139,123,44,59,250
- .byte 15,133,99,255,255,255,139,3,139,80,4,193,250,2,131,250
- .byte 1,15,133,177,0,0,0,139,64,8,253,139,123,52,139,107
- .byte 48,141,99,56,255,231,86,232,0,0,0,0,139,52,36,131
- .byte 198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,12,36,131,196,8,94,139,73,32,131,249,8,126
- .byte 13,81,83,82,137,200,232
+ .byte 101,139,21
+ .long teb@ntpoff
+ .byte 139,18,139,72,44,137,195,139,124,36,4,59,209,117,13,137
+ .byte 248,139,123,52,139,107,48,141,99,56,255,231,141,67,4,156
+ .byte 89,128,229,4,116,91,137,120,8,199,64,4,5,0,0,0
+ .byte 137,3,131,250,0,15,132,168,0,0,0,137,212,139,60,36
+ .byte 139,68,36,8,101,139,53
+ .long teb@ntpoff
+ .byte 137,62,139,108,36,4,83,255,208,91,101,139,21
+ .long teb@ntpoff
+ .byte 139,18,139,123,44,59,250,117,205,139,3,139,80,4,193,250
+ .byte 2,131,250,1,117,75,139,64,8,253,139,123,52,139,107,48
+ .byte 141,99,56,255,231,101,139,13
+ .long teb@ntpoff
+ .byte 139,73,32,131,249,8,126,13,81,83,82,137,200,232
.long primitive_allocate_vector - 4 - .
.byte 90,91,89,137,207,193,231,2,131,199,1,137,120,4,141,120
- .byte 8,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,131,198,36,252,243,165,233,159
- .byte 254,255,255,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,86,32,131,250,0,116,83
- .byte 141,112,8,139,6,86,232,0,0,0,0,139,52,36,131,198
- .byte 14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,60,36,131,196,8,94,131,199,36,137,209,252,243
- .byte 165,252,233,196,254,255,255,233
+ .byte 8,101,139,53
+ .long teb@ntpoff
+ .byte 131,198,36,252,243,165,233,115,255,255,255,101,139,53
+ .long teb@ntpoff
+ .byte 137,86,32,131,250,0,116,28,141,112,8,139,6,101,139,61
+ .long teb@ntpoff
+ .byte 131,199,36,137,209,252,243,165,252,235,147,233
.long primitive_error - 4 - .
.byte 184
.long KPfalseVKi
- .byte 252,233,180,254,255,255
+ .byte 252,235,134
.global primitive_stack_allocate_vector
@@ -1224,48 +1089,36 @@
.global primitive_heap_vector_remaining_values
.type primitive_heap_vector_remaining_values,@function
primitive_heap_vector_remaining_values:
- .byte 232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,131,198,36,156,89,128,229,4
- .byte 116,25,131,255,0,117,104,137,6,184,1,0,0,0,137,247
- .byte 131,248,0,117,94,184
+ .byte 101,139,53
+ .long teb@ntpoff
+ .byte 131,198,36,156,89,128,229,4,116,25,131,255,0,117,52,137
+ .byte 6,184,1,0,0,0,137,247,131,248,0,117,42,184
.long KPempty_vectorVKi
- .byte 195,86,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,28,36,131,196,8,94,139,91,32,59,251,125,18
- .byte 131,255,0,117,2,137,6,43,223,193,231,2,3,247,137,216
- .byte 235,159,51,192,235,155,85,137,229,137,251,137,199,193,231,2
- .byte 131,199,8,83,106,1,80,104
+ .byte 195,101,139,29
+ .long teb@ntpoff
+ .byte 139,91,32,59,251,125,18,131,255,0,117,2,137,6,43,223
+ .byte 193,231,2,3,247,137,216,235,211,51,192,235,207,85,137,229
+ .byte 137,251,137,199,193,231,2,131,199,8,83,106,1,80,104
.long KLsimple_object_vectorGVKdW
.byte 87,252,232
.long primitive_alloc_rt - 4 - .
- .byte 131,196,20,201,235,132
+ .byte 131,196,20,201,235,184
.global primitive_stack_vector_remaining_values
.type primitive_stack_vector_remaining_values,@function
primitive_stack_vector_remaining_values:
- .byte 232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,131,198,36,156,89,128,229,4
- .byte 116,58,131,255,0,15,133,133,0,0,0,137,6,184,1,0
- .byte 0,0,90,137,195,137,223,193,231,2,131,199,8,43,231,137
- .byte 224,137,223,193,231,2,131,199,1,137,120,4,199,0
+ .byte 101,139,53
+ .long teb@ntpoff
+ .byte 131,198,36,156,89,128,229,4,116,54,131,255,0,117,81,137
+ .byte 6,184,1,0,0,0,90,137,195,137,223,193,231,2,131,199
+ .byte 8,43,231,137,224,137,223,193,231,2,131,199,1,137,120,4
+ .byte 199,0
.long KLsimple_object_vectorGVKdW
- .byte 141,120,8,137,217,252,243,165,255,226,86,232,0,0,0,0
- .byte 139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,28,36,131,196,8,94,139,91,32,59,251,125,18
- .byte 131,255,0,117,2,137,6,43,223,193,231,2,3,247,137,216
- .byte 235,130,51,192,233,123,255,255,255
+ .byte 141,120,8,137,217,252,243,165,255,226,101,139,29
+ .long teb@ntpoff
+ .byte 139,91,32,59,251,125,18,131,255,0,117,2,137,6,43,223
+ .byte 193,231,2,3,247,137,216,235,182,51,192,235,178
.global primitive_mep_apply
@@ -1410,30 +1263,23 @@
.type call_dylan_function_returning_all_values,@function
call_dylan_function_returning_all_values:
.byte 85,137,229,156,83,86,87,139,85,12,131,250,0,116,8,141
- .byte 77,16,131,250,0,127,118,139,93,8,137,209,255,83,4,51
- .byte 210,86,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,60,36,131,196,8,94,131,199,36,156,89,128,229
- .byte 4,116,73,131,250,0,15,133,151,0,0,0,137,7,186,1
- .byte 0,0,0,131,250,0,15,133,142,0,0,0,184
+ .byte 77,16,131,250,0,127,58,139,93,8,137,209,255,83,4,51
+ .byte 210,101,139,61
+ .long teb@ntpoff
+ .byte 131,199,36,156,89,128,229,4,116,62,131,250,0,117,89,137
+ .byte 7,186,1,0,0,0,131,250,0,117,81,184
.long KPempty_vectorVKi
.byte 141,101,240,95,94,91,157,93,195,139,1,141,89,4,131,250
- .byte 1,116,128,137,209,131,233,1,137,207,193,231,2,43,231,137
- .byte 231,137,222,252,243,165,233,104,255,255,255,86,232,0,0,0
- .byte 0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,28,36,131,196,8,94,139,91,32,59,211,125,21
- .byte 131,250,0,117,2,137,7,43,218,193,226,2,3,250,137,218
- .byte 233,112,255,255,255,51,210,233,105,255,255,255,137,209,193,225
- .byte 2,131,193,8,87,106,1,82,104
+ .byte 1,116,188,137,209,131,233,1,137,207,193,231,2,43,231,137
+ .byte 231,137,222,252,243,165,235,167,101,139,29
+ .long teb@ntpoff
+ .byte 139,91,32,59,211,125,18,131,250,0,117,2,137,7,43,218
+ .byte 193,226,2,3,250,137,218,235,174,51,210,235,170,137,209,193
+ .byte 225,2,131,193,8,87,106,1,82,104
.long KLsimple_object_vectorGVKdW
.byte 81,252,232
.long primitive_alloc_rt - 4 - .
- .byte 131,196,20,233,87,255,255,255
+ .byte 131,196,20,235,151
.global make_dylan_vector
@@ -1451,83 +1297,57 @@
.global get_current_teb
.type get_current_teb,@function
get_current_teb:
- .byte 86,232,0,0,0,0,139,52,36,131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,4,36,131,196,8,94,195
+ .byte 101,139,5
+ .long teb@ntpoff
+ .byte 195
.global get_tlv_vector
.type get_tlv_vector,@function
get_tlv_vector:
- .byte 85,137,229,86,86,232,0,0,0,0,139,52,36,131,198,14
- .byte 3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,4,36,131,196,8,94,139,64,4,141,101,252,94
- .byte 93,195
+ .byte 85,137,229,86,101,139,5
+ .long teb@ntpoff
+ .byte 139,64,4,141,101,252,94,93,195
.global set_tlv_vector
.type set_tlv_vector,@function
set_tlv_vector:
- .byte 85,137,229,86,139,85,8,232,0,0,0,0,139,52,36,131
- .byte 198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,86,4,141,101,252,94,93
- .byte 195
+ .byte 85,137,229,86,139,85,8,101,139,53
+ .long teb@ntpoff
+ .byte 137,86,4,141,101,252,94,93,195
.global get_current_thread
.type get_current_thread,@function
get_current_thread:
- .byte 85,137,229,86,86,232,0,0,0,0,139,52,36,131,198,14
- .byte 3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,4,36,131,196,8,94,139,64,8,141,101,252,94
- .byte 93,195
+ .byte 85,137,229,86,101,139,5
+ .long teb@ntpoff
+ .byte 139,64,8,141,101,252,94,93,195
.global set_current_thread
.type set_current_thread,@function
set_current_thread:
- .byte 85,137,229,86,139,85,8,232,0,0,0,0,139,52,36,131
- .byte 198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,86,8,141,101,252,94,93
- .byte 195
+ .byte 85,137,229,86,139,85,8,101,139,53
+ .long teb@ntpoff
+ .byte 137,86,8,141,101,252,94,93,195
.global get_current_thread_handle
.type get_current_thread_handle,@function
get_current_thread_handle:
- .byte 85,137,229,86,86,232,0,0,0,0,139,52,36,131,198,14
- .byte 3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,4,36,131,196,8,94,139,64,12,141,101,252,94
- .byte 93,195
+ .byte 85,137,229,86,101,139,5
+ .long teb@ntpoff
+ .byte 139,64,12,141,101,252,94,93,195
.global set_current_thread_handle
.type set_current_thread_handle,@function
set_current_thread_handle:
- .byte 85,137,229,86,139,85,8,232,0,0,0,0,139,52,36,131
- .byte 198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,52,36,131,196,8,137,86,12,141,101,252,94,93
- .byte 195
+ .byte 85,137,229,86,139,85,8,101,139,53
+ .long teb@ntpoff
+ .byte 137,86,12,141,101,252,94,93,195
.global spy_call_interactive_function
@@ -1559,13 +1379,9 @@
.global spy_read_thread_variable_at_offset
.type spy_read_thread_variable_at_offset,@function
spy_read_thread_variable_at_offset:
- .byte 85,137,229,86,139,85,8,86,232,0,0,0,0,139,52,36
- .byte 131,198,14,3,53
- .long Psegment_register_load_instruction_offset
- .byte 255,230,137,230,129,206,255,255,31,0,139,182,1,255,255,255
- .byte 86,139,116,36,4,131,198,46,255,230,101,139,53,60,0,0
- .byte 0,86,139,4,36,131,196,8,94,139,64,4,139,4,144,141
- .byte 101,252,94,93,195
+ .byte 85,137,229,86,139,85,8,101,139,5
+ .long teb@ntpoff
+ .byte 139,64,4,139,4,144,141,101,252,94,93,195
.global spy_start_debugger_transaction
--
Gd-chatter mailing list
Gd-chatter@xxxxxxxxxxxxxxxx
https://gauss.gwydiondylan.org/mailman/listinfo/gd-chatter
|