Bug 7458: Improve commentary

* sources/dfmc/llvm-back-end/llvm-primitives-machine-word.dylan: Improve
  commentary.
Bug 7440: Add an ins--if convenience macro to emit conditionals

* sources/lib/llvm/llvm-builder.dylan
  (ins--if): New convenience macro for emitting conditional blocks
   as LLVM IR.
  (do-ins--if): Auxiliary emitter function implementing ins--if.

* sources/lib/llvm/llvm-library.dylan
  (module llvm-builder): Export ins--if.

* sources/lib/llvm/tests/specification.dylan
  (module-spec llvm-builder): Add macro-test ins--if-test.

* sources/lib/llvm/tests/llvm-builder-test.dylan
  (macro-test ins--if-test): New test units for ins--if.
Bug 7458: Fix instance comparisons against <boolean>

* sources/dfmc/llvm-back-end/llvm-emit-type-check.dylan
  (do-emit-instance-cmp): Fix instance? comparison result for #f, and
   simplify code using ins--if.
Bug 7440: Add an ins--iterate convenience macro to emit loops

* sources/lib/llvm/llvm-builder.dylan
  (ins--iterate): New convenience macro for emitting looping constructs
   as LLVM IR.
  (ins--iterate-aux): New auxiliary macro definition.
  (do-add-iterate-phi-operand): New auxiliary function for adding
   operands to loop head phi nodes.

* sources/lib/llvm/llvm-library.dylan
  (module llvm-builder): Export ins--iterate.

* sources/lib/llvm/tests/specification.dylan
  (module-spec llvm-builder): Add macro-test ins--iterate-test.

* sources/lib/llvm/tests/llvm-builder-test.dylan
  (macro-test ins--iterate-test): New tests for ins--iterate.
Bug 7458: Fix return value of setter primitives

* sources/dfmc/llvm-back-end/llvm-primitives-basic.dylan
  (primitive primitive-vector-element-setter): Return new-value.
  (primitive primitive-slot-value-setter): Return value.
  (primitive primitive-repeated-slot-value-setter): Return value.
Bug 7440: Fix ins--if case with no successors

* sources/lib/llvm/llvm-builder.dylan
  (do-ins--if): Don't insert a continuation block if control does not reach
   the end of either branch.

* sources/lib/llvm/tests/llvm-builder-test.dylan
  (macro-test ins--if-test): Test the case where control does not reach
   the end of either branch.
Revert "[variable-search] Remove unused imports."

This reverts commit 79a81b14fea3b15003958bf1ad644f459052916a.

Definitions from common-dylan are needed on Win32.
Bug 7458: Fix primitive-copy-vector

* sources/dfmc/llvm-back-end/llvm-primitives-basic.dylan
  (primitive primitive-copy-vector): Fix an error which caused the
   original vector to be returned rather than the newly allocated
   copy.
Bug 7458: Fix op--byte-element-ptr

* sources/dfmc/llvm-back-end/llvm-primitives-basic.dylan
  (op--byte-element-ptr): Fix an incorrect variable reference.
jamfiles: Don't run dsymutil if linking fails on Darwin

* sources/jamfiles/shared-darwin-build.jam
  (actions LinkDLL, actions LinkEXE): Join commands with &&