-;;;--------------------------------------------------------------------------
-;;; Instruction types.
-
-;; Compound statements.
-
-(definst if (stream :export t) (condition consequent alternative)
- (format-compound-statement (stream consequent alternative)
- (format stream "if (~A)" condition))
- (when alternative
- (format-compound-statement (stream alternative)
- (write-string "else" stream))))
-
-(definst while (stream :export t) (condition body)
- (format-compound-statement (stream body)
- (format stream "while (~A)" condition)))
-
-(definst do-while (stream :export t) (body condition)
- (format-compound-statement (stream body :space)
- (write-string "do" stream))
- (format stream "while (~A);" condition))
-
-;; Special varargs hacks.
-
-(definst va-start (stream :export t) (ap arg)
- (format stream "va_start(~@<~A, ~_~A~:>);" ap arg))
-
-(definst va-copy (stream :export t) (to from)
- (format stream "va_copy(~@<~A, ~_~A~:>);" to from))
-
-(definst va-end (stream :export t) (ap)
- (format stream "va_end(~A);" ap))
-
-;; Expressions.
-
-(definst call (stream :export t) (func args)
- (format stream "~A(~@<~{~A~^, ~_~}~:>)" func args))
-