aboutsummaryrefslogtreecommitdiffstats
path: root/src/bytecode.c
diff options
context:
space:
mode:
authorThien-Thi Nguyen2002-06-03 01:34:11 +0000
committerThien-Thi Nguyen2002-06-03 01:34:11 +0000
commit8e11578b9a2622db1c8012669b1df29871fdca71 (patch)
tree54c168133c29f70f2af7084aa796d57e4a34083a /src/bytecode.c
parent12829a07d6bd4f1f24b98adf852e153a103bb184 (diff)
downloademacs-8e11578b9a2622db1c8012669b1df29871fdca71.tar.gz
emacs-8e11578b9a2622db1c8012669b1df29871fdca71.zip
(Fbyte_code): Cast `current_column' return value to int.
Diffstat (limited to 'src/bytecode.c')
-rw-r--r--src/bytecode.c30
1 files changed, 15 insertions, 15 deletions
diff --git a/src/bytecode.c b/src/bytecode.c
index f24132dae25..442729e477a 100644
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -22,7 +22,7 @@ Boston, MA 02111-1307, USA.
22hacked on by jwz@lucid.com 17-jun-91 22hacked on by jwz@lucid.com 17-jun-91
23 o added a compile-time switch to turn on simple sanity checking; 23 o added a compile-time switch to turn on simple sanity checking;
24 o put back the obsolete byte-codes for error-detection; 24 o put back the obsolete byte-codes for error-detection;
25 o added a new instruction, unbind_all, which I will use for 25 o added a new instruction, unbind_all, which I will use for
26 tail-recursion elimination; 26 tail-recursion elimination;
27 o made temp_output_buffer_show be called with the right number 27 o made temp_output_buffer_show be called with the right number
28 of args; 28 of args;
@@ -46,10 +46,10 @@ by Hallvard:
46#endif 46#endif
47 47
48/* 48/*
49 * define BYTE_CODE_SAFE to enable some minor sanity checking (useful for 49 * define BYTE_CODE_SAFE to enable some minor sanity checking (useful for
50 * debugging the byte compiler...) 50 * debugging the byte compiler...)
51 * 51 *
52 * define BYTE_CODE_METER to enable generation of a byte-op usage histogram. 52 * define BYTE_CODE_METER to enable generation of a byte-op usage histogram.
53 */ 53 */
54/* #define BYTE_CODE_SAFE */ 54/* #define BYTE_CODE_SAFE */
55/* #define BYTE_CODE_METER */ 55/* #define BYTE_CODE_METER */
@@ -287,7 +287,7 @@ mark_byte_stack ()
287 recorded value of `stack' here. */ 287 recorded value of `stack' here. */
288 if (!stack->top) 288 if (!stack->top)
289 abort (); 289 abort ();
290 290
291 for (obj = stack->bottom; obj <= stack->top; ++obj) 291 for (obj = stack->bottom; obj <= stack->top; ++obj)
292 if (!XMARKBIT (*obj)) 292 if (!XMARKBIT (*obj))
293 { 293 {
@@ -313,7 +313,7 @@ mark_byte_stack ()
313/* Unmark objects in the stacks on byte_stack_list. Relocate program 313/* Unmark objects in the stacks on byte_stack_list. Relocate program
314 counters. Called when GC has completed. */ 314 counters. Called when GC has completed. */
315 315
316void 316void
317unmark_byte_stack () 317unmark_byte_stack ()
318{ 318{
319 struct byte_stack *stack; 319 struct byte_stack *stack;
@@ -466,7 +466,7 @@ If the third argument is incorrect, Emacs may crash. */)
466 stack.byte_string = bytestr; 466 stack.byte_string = bytestr;
467 stack.pc = stack.byte_string_start = XSTRING (bytestr)->data; 467 stack.pc = stack.byte_string_start = XSTRING (bytestr)->data;
468 stack.constants = vector; 468 stack.constants = vector;
469 stack.bottom = (Lisp_Object *) alloca (XFASTINT (maxdepth) 469 stack.bottom = (Lisp_Object *) alloca (XFASTINT (maxdepth)
470 * sizeof (Lisp_Object)); 470 * sizeof (Lisp_Object));
471 top = stack.bottom - 1; 471 top = stack.bottom - 1;
472 stack.top = NULL; 472 stack.top = NULL;
@@ -476,7 +476,7 @@ If the third argument is incorrect, Emacs may crash. */)
476#ifdef BYTE_CODE_SAFE 476#ifdef BYTE_CODE_SAFE
477 stacke = stack.bottom - 1 + XFASTINT (maxdepth); 477 stacke = stack.bottom - 1 + XFASTINT (maxdepth);
478#endif 478#endif
479 479
480 while (1) 480 while (1)
481 { 481 {
482#ifdef BYTE_CODE_SAFE 482#ifdef BYTE_CODE_SAFE
@@ -500,11 +500,11 @@ If the third argument is incorrect, Emacs may crash. */)
500 op = FETCH2; 500 op = FETCH2;
501 goto varref; 501 goto varref;
502 502
503 case Bvarref: 503 case Bvarref:
504 case Bvarref + 1: 504 case Bvarref + 1:
505 case Bvarref + 2: 505 case Bvarref + 2:
506 case Bvarref + 3: 506 case Bvarref + 3:
507 case Bvarref + 4: 507 case Bvarref + 4:
508 case Bvarref + 5: 508 case Bvarref + 5:
509 op = op - Bvarref; 509 op = op - Bvarref;
510 goto varref; 510 goto varref;
@@ -619,7 +619,7 @@ If the third argument is incorrect, Emacs may crash. */)
619 varset: 619 varset:
620 { 620 {
621 Lisp_Object sym, val; 621 Lisp_Object sym, val;
622 622
623 sym = vectorp[op]; 623 sym = vectorp[op];
624 val = TOP; 624 val = TOP;
625 625
@@ -1352,7 +1352,7 @@ If the third argument is incorrect, Emacs may crash. */)
1352 { 1352 {
1353 Lisp_Object v1; 1353 Lisp_Object v1;
1354 BEFORE_POTENTIAL_GC (); 1354 BEFORE_POTENTIAL_GC ();
1355 XSETFASTINT (v1, current_column ()); 1355 XSETFASTINT (v1, (int) current_column ()); /* iftc */
1356 AFTER_POTENTIAL_GC (); 1356 AFTER_POTENTIAL_GC ();
1357 PUSH (v1); 1357 PUSH (v1);
1358 break; 1358 break;
@@ -1731,7 +1731,7 @@ If the third argument is incorrect, Emacs may crash. */)
1731#else 1731#else
1732 abort (); 1732 abort ();
1733#endif 1733#endif
1734 1734
1735 return result; 1735 return result;
1736} 1736}
1737 1737
@@ -1752,7 +1752,7 @@ opcode CODE has been executed.
1752\(aref (aref byte-code-meter CODE1) CODE2), where CODE1 is not 0, 1752\(aref (aref byte-code-meter CODE1) CODE2), where CODE1 is not 0,
1753indicates how many times the byte opcodes CODE1 and CODE2 have been 1753indicates how many times the byte opcodes CODE1 and CODE2 have been
1754executed in succession. */); 1754executed in succession. */);
1755 1755
1756 DEFVAR_BOOL ("byte-metering-on", &byte_metering_on, 1756 DEFVAR_BOOL ("byte-metering-on", &byte_metering_on,
1757 doc: /* If non-nil, keep profiling information on byte code usage. 1757 doc: /* If non-nil, keep profiling information on byte code usage.
1758The variable byte-code-meter indicates how often each byte opcode is used. 1758The variable byte-code-meter indicates how often each byte opcode is used.