nbody.Body.move


void move()
Vars: float dx, float ay, boolean sticky, float TEMP$3, int TEMP$1, float TEMP$8, float radius, Semaphore TEMP$9, float dy, float TEMP$7, float tempx, float TEMP$5, float y, int jj, float force, float TEMP$6, float ax, float x, float TEMP$4, int TEMP$0, float mass, int size, float g, Body body, array[Body] TEMP$2, float tempy, float rad.
QueueObject
q0ARG
q1TEMP
q2TEMP2
q3TEMP3
q4TEMP4
q5LOADADDR
q6LOADDATA
q7STOREADDR
q8STOREDATA
q9THIS
q10size
q11ax
q12ay
q13x
q14y
q15radius
q16mass
q17sticky
q18TEMP$0
q19jj
q20TEMP$1
q21TEMP$2
q22body
q23TEMP$3
q24dx
q25TEMP$4
q26dy
q27TEMP$5
q28rad
q29TEMP$6
q30TEMP$7
q31TEMP$8
q32tempy
q33tempx
q34force
q35g
q36TEMP$9
move_top49
(ASSIGN (ENQUEUE NO size) (IVARREF (THIS) NUMPLANETS))
(ASSIGN (ENQUEUE NO ax) (IVARREF (THIS) ax))
(ASSIGN (ENQUEUE NO ay) (IVARREF (THIS) ay))
(ASSIGN (ENQUEUE NO x) (IVARREF (THIS) x))
(ASSIGN (ENQUEUE NO y) (IVARREF (THIS) y))
(ASSIGN (ENQUEUE NO radius) (IVARREF (THIS) radius))
(ASSIGN (ENQUEUE NO mass) (IVARREF (THIS) mass))
(ASSIGN (ENQUEUE NO sticky) (IVARREF (THIS) sticky))
(ASSIGN (ENQUEUE NO TEMP$0) (IVARREF (THIS) myIndex))
(TEST (NEQ (DEQUEUE NO TEMP$0) 20))
true_branch50
(CALL (METHODACCESS (LIBRARY) null) (COPY NO x) (COPY NO y))
after_if51
(ASSIGN (ENQUEUE NO x) (PLUS (DEQUEUE NO x) (COPY NO ax)))
(ASSIGN (ENQUEUE NO y) (PLUS (DEQUEUE NO y) (COPY NO ay)))
(ASSIGN (ENQUEUE NO jj) 0)
false_branch52
(CALL (METHODACCESS (LIBRARY) null) (COPY NO x) (COPY NO y))
while_test53
(TEST (LT (COPY NO jj) (COPY NO size)))
while_body54
(ASSIGN (ENQUEUE NO TEMP$1) (IVARREF (THIS) myIndex))
(TEST (NEQ (DEQUEUE NO TEMP$1) (COPY NO jj)))
true_branch55
(ASSIGN (ENQUEUE NO TEMP$2) (IVARREF (THIS) planets))
(ASSIGN (ENQUEUE NO body) (ARRAYREF (DEQUEUE NO TEMP$2) (COPY NO jj)))
(ASSIGN (ENQUEUE NO TEMP$3) (IVARREF (COPY NO body) x))
(ASSIGN (ENQUEUE NO dx) (MINUS (COPY NO x) (DEQUEUE NO TEMP$3)))
(ASSIGN (ENQUEUE NO TEMP$4) (IVARREF (COPY NO body) y))
(ASSIGN (ENQUEUE NO dy) (MINUS (COPY NO y) (DEQUEUE NO TEMP$4)))
(ASSIGN (ENQUEUE NO TEMP$3) (TIMES (COPY NO dx) (COPY NO dx)))
(ASSIGN (ENQUEUE NO TEMP$5) (TIMES (COPY NO dy) (COPY NO dy)))
(ASSIGN (ENQUEUE NO rad) (PLUS (DEQUEUE NO TEMP$3) (DEQUEUE NO TEMP$5)))
(ASSIGN (ENQUEUE NO TEMP$3) (TIMES (COPY NO radius) (COPY NO radius)))
(ASSIGN (ENQUEUE NO TEMP$4) (IVARREF (COPY NO body) radius))
(ASSIGN (ENQUEUE NO TEMP$6) (IVARREF (COPY NO body) radius))
(ASSIGN (ENQUEUE NO TEMP$7) (TIMES (DEQUEUE NO TEMP$4) (DEQUEUE NO TEMP$6)))
(ASSIGN (ENQUEUE NO TEMP$8) (PLUS (DEQUEUE NO TEMP$3) (DEQUEUE NO TEMP$7)))
(TEST (LE (COPY NO rad) (DEQUEUE NO TEMP$8)))
true_branch56
(TEST (COPY NO sticky))
true_branch57
(ASSIGN (ENQUEUE NO tempy) (IVARREF (COPY NO body) ay))
(ASSIGN (ENQUEUE NO tempx) (IVARREF (COPY NO body) ax))
(ASSIGN (ENQUEUE NO TEMP$3) (IVARREF (COPY NO body) mass))
(ASSIGN (ENQUEUE NO TEMP$4) (IVARREF (COPY NO body) ax))
(ASSIGN (ENQUEUE NO force) (TIMES (DEQUEUE NO TEMP$3) (DEQUEUE NO TEMP$4)))
(ASSIGN (ENQUEUE NO TEMP$3) (IVARREF (COPY NO body) ax))
(ASSIGN (ENQUEUE NO TEMP$4) (DIVIDE (DEQUEUE NO force) (COPY NO mass)))
(ASSIGN (ENQUEUE NO TEMP$5) (MINUS (DEQUEUE NO TEMP$3) (DEQUEUE NO TEMP$4)))
(ASSIGN (IVARSET (COPY NO body) ax) (DEQUEUE NO TEMP$5))
(ASSIGN (ENQUEUE NO TEMP$3) (IVARREF (COPY NO body) mass))
(ASSIGN (ENQUEUE NO TEMP$4) (IVARREF (COPY NO body) ay))
(ASSIGN (ENQUEUE NO force) (TIMES (DEQUEUE NO TEMP$3) (DEQUEUE NO TEMP$4)))
(ASSIGN (ENQUEUE NO TEMP$3) (IVARREF (COPY NO body) ay))
(ASSIGN (ENQUEUE NO TEMP$4) (DIVIDE (DEQUEUE NO force) (COPY NO mass)))
(ASSIGN (ENQUEUE NO TEMP$5) (MINUS (DEQUEUE NO TEMP$3) (DEQUEUE NO TEMP$4)))
(ASSIGN (IVARSET (COPY NO body) ay) (DEQUEUE NO TEMP$5))
(ASSIGN (ENQUEUE NO force) (TIMES (COPY NO mass) (DEQUEUE NO tempx)))
(ASSIGN (ENQUEUE NO TEMP$3) (IVARREF (COPY NO body) mass))
(ASSIGN (ENQUEUE NO TEMP$4) (DIVIDE (DEQUEUE NO force) (DEQUEUE NO TEMP$3)))
(ASSIGN (ENQUEUE NO ax) (MINUS (DEQUEUE NO ax) (DEQUEUE NO TEMP$4)))
(ASSIGN (ENQUEUE NO force) (TIMES (COPY NO mass) (DEQUEUE NO tempy)))
(ASSIGN (ENQUEUE NO TEMP$3) (IVARREF (COPY NO body) mass))
(ASSIGN (ENQUEUE NO TEMP$4) (DIVIDE (DEQUEUE NO force) (DEQUEUE NO TEMP$3)))
(ASSIGN (ENQUEUE NO ay) (MINUS (DEQUEUE NO ay) (DEQUEUE NO TEMP$4)))
after_if58
false_branch59
(ASSIGN (ENQUEUE null tempy) (COPY NO ay))
(ASSIGN (ENQUEUE null tempx) (COPY NO ax))
(ASSIGN (ENQUEUE NO TEMP$3) (IVARREF (COPY NO body) mass))
(ASSIGN (ENQUEUE NO TEMP$4) (IVARREF (COPY NO body) ax))
(ASSIGN (ENQUEUE NO force) (TIMES (DEQUEUE NO TEMP$3) (DEQUEUE NO TEMP$4)))
(ASSIGN (ENQUEUE NO TEMP$3) (DIVIDE (DEQUEUE NO force) (COPY NO mass)))
(ASSIGN (ENQUEUE NO ax) (PLUS (DEQUEUE NO ax) (DEQUEUE NO TEMP$3)))
(ASSIGN (ENQUEUE NO TEMP$3) (IVARREF (COPY NO body) mass))
(ASSIGN (ENQUEUE NO TEMP$4) (IVARREF (COPY NO body) ay))
(ASSIGN (ENQUEUE NO force) (TIMES (DEQUEUE NO TEMP$3) (DEQUEUE NO TEMP$4)))
(ASSIGN (ENQUEUE NO TEMP$3) (DIVIDE (DEQUEUE NO force) (COPY NO mass)))
(ASSIGN (ENQUEUE NO ay) (PLUS (DEQUEUE NO ay) (DEQUEUE NO TEMP$3)))
(ASSIGN (ENQUEUE NO force) (TIMES (COPY NO mass) (DEQUEUE NO tempx)))
(ASSIGN (ENQUEUE NO TEMP$3) (IVARREF (COPY NO body) ax))
(ASSIGN (ENQUEUE NO TEMP$4) (IVARREF (COPY NO body) mass))
(ASSIGN (ENQUEUE NO TEMP$5) (DIVIDE (DEQUEUE NO force) (DEQUEUE NO TEMP$4)))
(ASSIGN (ENQUEUE NO TEMP$6) (PLUS (DEQUEUE NO TEMP$3) (DEQUEUE NO TEMP$5)))
(ASSIGN (IVARSET (COPY NO body) ax) (DEQUEUE NO TEMP$6))
(ASSIGN (ENQUEUE NO force) (TIMES (COPY NO mass) (DEQUEUE NO tempy)))
(ASSIGN (ENQUEUE NO TEMP$3) (IVARREF (COPY NO body) ay))
(ASSIGN (ENQUEUE NO TEMP$4) (IVARREF (COPY NO body) mass))
(ASSIGN (ENQUEUE NO TEMP$5) (DIVIDE (DEQUEUE NO force) (DEQUEUE NO TEMP$4)))
(ASSIGN (ENQUEUE NO TEMP$6) (PLUS (DEQUEUE NO TEMP$3) (DEQUEUE NO TEMP$5)))
(ASSIGN (IVARSET (COPY NO body) ay) (DEQUEUE NO TEMP$6))
after_if60
(ASSIGN (ENQUEUE NO TEMP$3) (IVARREF (THIS) G))
(ASSIGN (ENQUEUE NO TEMP$4) (IVARREF (DEQUEUE NO body) mass))
(ASSIGN (ENQUEUE NO TEMP$5) (TIMES (DEQUEUE NO TEMP$3) (DEQUEUE NO TEMP$4)))
(ASSIGN (ENQUEUE NO g) (DIVIDE (DEQUEUE NO TEMP$5) (COPY NO rad)))
(ASSIGN (ENQUEUE NO rad) (CALL (METHODACCESS (LIBRARY) null) (DEQUEUE NO rad)))
(ASSIGN (ENQUEUE NO TEMP$3) (DIVIDE (DEQUEUE NO dx) (COPY NO rad)))
(ASSIGN (ENQUEUE NO TEMP$4) (TIMES (COPY NO g) (DEQUEUE NO TEMP$3)))
(ASSIGN (ENQUEUE NO ax) (PLUS (DEQUEUE NO ax) (DEQUEUE NO TEMP$4)))
(ASSIGN (ENQUEUE NO TEMP$3) (DIVIDE (DEQUEUE NO dy) (DEQUEUE NO rad)))
(ASSIGN (ENQUEUE NO TEMP$4) (TIMES (DEQUEUE NO g) (DEQUEUE NO TEMP$3)))
(ASSIGN (ENQUEUE NO ay) (PLUS (DEQUEUE NO ay) (DEQUEUE NO TEMP$4)))
after_if61
(ASSIGN (ENQUEUE NO jj) (PLUS (DEQUEUE NO jj) 1))
after_while62
(ASSIGN (IVARSET (THIS) x) (DEQUEUE NO x))
(ASSIGN (IVARSET (THIS) y) (DEQUEUE NO y))
(ASSIGN (IVARSET (THIS) ax) (DEQUEUE NO ax))
(ASSIGN (IVARSET (THIS) ay) (DEQUEUE NO ay))
(ASSIGN (ENQUEUE NO TEMP$9) (IVARREF (THIS) mySem))
(CALL (METHODACCESS (DEQUEUE NO TEMP$9) People.Method:signal))