~rdoering/ubuntu/karmic/erlang/fix-535090

« back to all changes in this revision

Viewing changes to erts/emulator/hipe/hipe_arm_abi.txt

  • Committer: Bazaar Package Importer
  • Author(s): Sergei Golovan
  • Date: 2009-02-15 16:42:52 UTC
  • mfrom: (3.1.2 squeeze)
  • Revision ID: james.westby@ubuntu.com-20090215164252-q5x4rcf8a5pbesb1
Tags: 1:12.b.5-dfsg-2
Upload to unstable after lenny is released.

Show diffs side-by-side

added added

removed removed

Lines of Context:
22
22
The runtime system uses temporaries in specific contexts:
23
23
r8 (TEMP_LR) is used to preserve lr around BIF calls,
24
24
and to pass the callee address in native-to-BEAM traps.
25
 
r7 (TEMP_ARG0) is used to preserve ARG0 in BIFs that may
26
 
fail with RESCHEDULE, the return value in nbif_stack_trap_ra,
 
25
r7 (TEMP_ARG0) is used to preserve the return value in nbif_stack_trap_ra,
27
26
and lr in hipe_arm_inc_stack (the caller saved its lr in TEMP_LR).
28
 
r6 (TEMP_ARG1) is used to preserve ARG1 in BIFs that may
29
 
fail with RESCHEDULE.
30
 
r5 (TEMP_ARG2) is used to preserve ARG2 in BIFs that may
31
 
fail with RESCHEDULE.
32
 
r2 (ARG1) is used to pass the NBIF address when a BIF that may
33
 
fail with RESCHEDULE throws an exception.
34
27
r1 (ARG0) is used for MBUF-after-BIF checks, for storing the
35
28
arity if a BIF that throws an exception or does GC due to MBUF,
36
29
and for checking P->flags for pending timeout.