[dylan-lang/opendylan] 0803ba: Bug 7458: Emit references to engine node entry poi...

GitHub <[email protected]>
Newsgroups gmane.comp.lang.dylan.gwydion.cvs
Message-ID <54bdd7e8c51b7_4e173fe799fe52c01115b6@hookshot-fe1-cp1-prd.iad.github.net.mail>
  Branch: refs/heads/master
  Home:   https://github.com/dylan-lang/opendylan
  Commit: 0803ba90cece84abb0d0c30ba9bfa2f206d371f3
      https://github.com/dylan-lang/opendylan/commit/0803ba90cece84abb0d0c30ba9bfa2f206d371f3
  Author: Peter S. Housel <[email protected]>
  Date:   2015-01-19 (Mon, 19 Jan 2015)

  Changed paths:
    M sources/dfmc/llvm-back-end/llvm-entry-points.dylan

  Log Message:
  -----------
  Bug 7458: Emit references to engine node entry points

* sources/dfmc/llvm-back-end/llvm-entry-points.dylan
  (llvm-engine-node-ep-info): New auxiliary method for relating
   <&engine-node-ep> objects to the corresponding
   <llvm-entry-point-descriptor>.
  (emit-reference on <&engine-node-ep>): New method to emit references
   to engine node entry point code.


  Commit: 870bae0460e8a2f7475f3565611834761e69157e
      https://github.com/dylan-lang/opendylan/commit/870bae0460e8a2f7475f3565611834761e69157e
  Author: Peter S. Housel <[email protected]>
  Date:   2015-01-19 (Mon, 19 Jan 2015)

  Changed paths:
    M sources/app/llvm-runtime-generator/llvm-runtime-c-header.dylan
    M sources/app/llvm-runtime-generator/llvm-runtime-generator.dylan

  Log Message:
  -----------
  Bug 7458: Emit C struct definitions for runtime-referenced classes

* sources/app/llvm-runtime-generator/llvm-runtime-generator.dylan
  ($runtime-referenced-classes): New constant listing Dylan classes
   referenced within the C runtime
  (generate-runtime-header): Generate struct definitions for each
   of the referenced classes.

* sources/app/llvm-runtime-generator/llvm-runtime-c-header.dylan
  (print-class-c-struct-declaration): New method for generating a C struct
   definition for a <&class>.


  Commit: bc4045f98ae10e666141e75fe36bbe9d117d2865
      https://github.com/dylan-lang/opendylan/commit/bc4045f98ae10e666141e75fe36bbe9d117d2865
  Author: Peter S. Housel <[email protected]>
  Date:   2015-01-19 (Mon, 19 Jan 2015)

  Changed paths:
    M sources/dfmc/modeling/objects.dylan

  Log Message:
  -----------
  dfmc-modeling: Assign a subtype bit for <keyword-method>

* sources/dfmc/modeling/objects.dylan
  ($dylan-system-subtype-bit-type-names): Add an entry assigning a subtype
   mask bit for <keyword-method> and its subclasses.


  Commit: a92bfdbc80d4d124faccfad65dd9eb900117b233
      https://github.com/dylan-lang/opendylan/commit/a92bfdbc80d4d124faccfad65dd9eb900117b233
  Author: Peter S. Housel <[email protected]>
  Date:   2015-01-19 (Mon, 19 Jan 2015)

  Changed paths:
    M sources/dfmc/llvm-back-end/llvm-primitives.dylan

  Log Message:
  -----------
  Bug 7458: Allow referencing runtime-variables by name

* sources/dfmc/llvm-back-end/llvm-primitives.dylan
  (llvm-runtime-variable): New method for referencing runtime-variable
   definitions by their <symbol> name.


  Commit: b33979edd877f5f5e24f754e06bd53a518eadece
      https://github.com/dylan-lang/opendylan/commit/b33979edd877f5f5e24f754e06bd53a518eadece
  Author: Peter S. Housel <[email protected]>
  Date:   2015-01-19 (Mon, 19 Jan 2015)

  Changed paths:
    M sources/app/llvm-runtime-generator/llvm-runtime-c-header.dylan
    M sources/app/llvm-runtime-generator/llvm-runtime-generator.dylan
    M sources/dfmc/llvm-back-end/llvm-back-end-library.dylan

  Log Message:
  -----------
  Bug 7458: Emit C declarations for runtime variables

* sources/dfmc/llvm-back-end/llvm-back-end-library.dylan
  (module dfmc-llvm-back-end): Export runtime-variable-type-name
   and runtime-variable-attributes.

* sources/app/llvm-runtime-generator/llvm-runtime-c-header.dylan
  (print-runtime-variable-declaration): New function for emitting C
   extern declarations for runtime-variables.

* sources/app/llvm-runtime-generator/llvm-runtime-generator.dylan
  (generate-runtime-header): Call print-runtime-variable-declaration
   for each runtime variable.


  Commit: 525c7cf412f26c55cad03ff5362899f91c2de6b8
      https://github.com/dylan-lang/opendylan/commit/525c7cf412f26c55cad03ff5362899f91c2de6b8
  Author: Peter S. Housel <[email protected]>
  Date:   2015-01-19 (Mon, 19 Jan 2015)

  Changed paths:
    M sources/dfmc/llvm-back-end/llvm-primitives-os.dylan

  Log Message:
  -----------
  Bug 7458: Add command-line argument runtime variables

* sources/dfmc/llvm-back-end/llvm-primitives-os.dylan
  (runtime-variable *argc*, runtime-variable *argv*): New runtime variables.


  Commit: 7a225390967880e9d7c00e5e2a6fb705aa75a7e3
      https://github.com/dylan-lang/opendylan/commit/7a225390967880e9d7c00e5e2a6fb705aa75a7e3
  Author: Peter S. Housel <[email protected]>
  Date:   2015-01-19 (Mon, 19 Jan 2015)

  Changed paths:
    M sources/dfmc/llvm-linker/llvm-gluefile.dylan
    M sources/dfmc/llvm-linker/llvm-linker.dylan

  Log Message:
  -----------
  Bug 7458: Emit library and program initialization code

* sources/dfmc/llvm-linker/llvm-linker.dylan
  ($init-code-function-type): New constant representing the function
   type of init funcitons.
  ($init-code-function-ptr-type): New constant.
  ($ctor-struct-type): New constant representing the LLVM type of
   @llvm.global_ctors entries.
  (emit-ctor-entry): New method for adding an entry to the set of
   global constructors.
  (emit-init-code-definition): Utilize emit-ctor-entry() and the new
   type definitions. Only add a system-init function to the
   constructor if it is non-empty.

* sources/dfmc/llvm-linker/llvm-gluefile.dylan
  (emit-mainfile): Complete implementation of a generated main() function
   for exe-target libraries. The generated main() stores argc and argv
   and calls the library glue function.
  (emit-gluefile): Complete implementation of the function to generate a
   library initialization glue function. When compiling the Dylan library,
   also call the runtime initialization code.


  Commit: d751959fb778804c2476d151805b2cb3ba8141fb
      https://github.com/dylan-lang/opendylan/commit/d751959fb778804c2476d151805b2cb3ba8141fb
  Author: Peter S. Housel <[email protected]>
  Date:   2015-01-19 (Mon, 19 Jan 2015)

  Changed paths:
    M sources/app/llvm-runtime-generator/llvm-runtime-generator.dylan
    M sources/dfmc/llvm-back-end/llvm-back-end-library.dylan
    M sources/dfmc/llvm-back-end/llvm-back-end-types.dylan
    M sources/dfmc/llvm-back-end/llvm-back-end.dylan
    M sources/dfmc/llvm-back-end/llvm-primitives-symbol.dylan
    M sources/dfmc/llvm-linker/llvm-linker.dylan

  Log Message:
  -----------
  Bug 7458: Implement symbol resolution heap fixup

* sources/dfmc/llvm-back-end/llvm-back-end.dylan
  (llvm-heap-fixup-entry-llvm-type): New slot containing the LLVM type
   used for entries in the heap fixup table

* sources/dfmc/llvm-back-end/llvm-back-end-library.dylan
  (module dfmc-llvm-back-end): Export llvm-heap-fixup-entry-llvm-type.

* sources/dfmc/llvm-back-end/llvm-back-end-types.dylan
  (initialize-type-table): Initialize the llvm-heap-fixup-entry-llvm-type
   slot with the necessary struct type.

* sources/dfmc/llvm-back-end/llvm-primitives-symbol.dylan
  (primitive primitive-symbol-fixup): Add a new auxiliary primitive
   for performing symbol fixups based on the heap fixup table.

* sources/app/llvm-runtime-generator/llvm-runtime-generator.dylan
  ($runtime-referenced-functions): Add %resolve-symbol to the set of
   referenced functions.

* sources/dfmc/llvm-linker/llvm-linker.dylan
  ($system-init-fixups-tag): New constant.
  (emit-fixups-elements): New function for computing fixup table entries
   for load-bound references.
  (emit-fixup): New methods for computing fixup addresses for
   <load-bound-reference> entries.
  (emit-init-code-definition): Generate the fixups table and a call to
   the fixups primitive.


Compare: https://github.com/dylan-lang/opendylan/compare/d73d730b502e...d751959fb778

_______________________________________________
chatter mailing list
[email protected]
https://lists.opendylan.org/mailman/listinfo/chatter
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.