• Home
    • View
    • Login
    This page
    • Normal
    • Export PDF
    • Page Information

    Loading...
  1. Dashboard
  2. Undefined Space
  3. Port: BSD
  4. BSDPort, Description of jdk7 changes

BSDPort, Description of jdk7 changes

  • Created by rhoover rhoover, last modified on Jul 27, 2011

In order to understand the BSDPort prior to its inclusion into jdk8, this page analyzes the BSDPort changes. A jdk8 patch of all changes can be found at the link below:
BSDPort, Proposed jdk8 hotspot patch

We consider the bsd changes in groups of files:

  1. agent files
  2. make files
  3. cpu dependent files
  4. os dependent files
  5. os_cpu dependent files
  6. shared files

While the first five file groups introduce a significant number of new files to hotspot, and while the contents of these files make up a large percentage of the bsd changes under submission, most of the contents of these files are identical to the linux files from which they were derived. Thus, these changes are best understood by examining a diff between the original linux file and the derivitive bsd file in the jdk7 builds. We present these diffs below.

In addition, there are also a few places where the bsd port has made changes to the shared files and a few changes to files of other os ports. We call attention to these changes below.

  1. agent files
    BSDPort hotspot shared changes, agent
    BSDPort jdk7 hotspot changes from linux, agent
  2. make files
    Shared makefile changes are mostly the addition of $LIBRARY_SUFFIX:
    BSDPort hotspot shared changes, make
    BSD specific changes from the linux make implementation:
    BSDPort jdk7 hotspot changes from linux, make
  3. cpu dependent files
    Note that there are no os-dependent files here:
    Cpu dependent changes are mostly makefile inclusions and some type casting cleanup:
    BSDPort hotspot shared changes, cpu
  4. os dependent files
    Shared changes include a move of #define __STDC_FORMAT_MACROS from src/os/linux/vm/os_linux.cpp to src/share/vm/utilities/globalDefinitions.hpp. This might need some big-picture adjustment:
    BSDPort hotspot shared changes, os
    BSDPort hotspot jdk7 changes from linux, os
  5. os_cpu dependent files
    Note that there are no shared files here:
    BSDPort jdk7 hotspot changes from linux, os_cpu
  6. shared files
    BSDPort hotspot shared changes, shared
    The shared file changes fall into three categories:
    1. The addition of os and os_cpu includes for bsd.
    2. Modification of print format strings or types. Note that apple's compilers require a long int to be printed with "%ld" regardless of whether this long int is 32 or 64-bits wide. The assumption made by the hotspot code that "%lld" will print all 64-bit integers is not valid.
    3. Miscellaneous changes
      • a mac dynamic linking issue in src/share/vm/prims/forte.cpp
      • open bsd dynamic loading issue in src/share/vm/runtime/os.cpp
      • os naming in src/share/vm/runtime/vm_version.cpp
      • inclusion of src/share/vm/utilities/elf.hpp (with lglp licensing)
      • additions to src/share/vm/utilities/elfFile.hpp
      • dynamic library additions to src/share/vm/utilities/vmError.cpp
Overview
Content Tools
ThemeBuilder
  • No labels

Terms of Use
• License: GPLv2
• Privacy • Trademarks • Contact Us

Powered by a free Atlassian Confluence Open Source Project License granted to https://www.atlassian.com/software/views/opensource-community-additional-license-offer. Evaluate Confluence today.

  • Kolekti ThemeBuilder Powered by Atlassian Confluence 8.5.21
  • Kolekti ThemeBuilder printed.by.atlassian.confluence
  • Report a bug
  • Atlassian News
Atlassian
Kolekti ThemeBuilder EngineAtlassian Confluence
{"serverDuration": 221, "requestCorrelationId": "c1b0ff409b7d3878"}