Home | History | Annotate | Download | only in arm

Lines Matching refs:We

35 The method we are calling has the form:
41 We receive a collection of 32-bit values which correspond to arguments from
67 Happily we don't have to do anything special here -- the args from the
88 @ Standard gcc stack frame setup. We don't need to push the original
90 @ rest of the code. If we don't plan to use a debugger we can speed
96 @ We need to push a variable number of arguments onto the stack.
97 @ Rather than keep a count and pop them off after, we just hold on to
100 @ In theory we don't need to keep sp -- we can do an ldmdb instead of
101 @ an ldmia -- but we're doing the gcc frame trick where we push the
107 @ argv can't go into r0-r3 because we need to use it to load those.
118 @ While we still have the use of r2/r3, copy excess args from argv
119 @ to the stack. We need to push the last item in argv first, and we
124 @ If there are N args, we want to skip 0 and 1, and push (N-1)..2. We
125 @ have N-2 in r3. If we set argv=argv+1, we can count from N-2 to 1
139 @ safe to load two items out of argv even if we're at the end.
155 @ We're back, result is in r0 or (for long/double) r0-r1.
157 @ In theory, we need to use the "return type" arg to figure out what
158 @ we have and how to return it. However, unless we have an FPU,
159 @ all we need to do is copy r0-r1 into the JValue union.
164 @ Restore the registers we saved and return. Note this remaps stuff,
166 @ we pushed on evaporates when we restore "sp".