[llvm-commits] [hlvm] r37975 - in /hlvm/trunk/docs: Doxyfile.in Makefile doxygen.footer doxygen.header doxygen.intro
Reid Spencer
reid at x10sys.com
Sat Jul 7 16:58:33 PDT 2007
Author: reid
Date: Sat Jul 7 18:58:33 2007
New Revision: 37975
URL: http://llvm.org/viewvc/llvm-project?rev=37975&view=rev
Log:
Fix the doxygen stuff to work correctly.
Modified:
hlvm/trunk/docs/Doxyfile.in
hlvm/trunk/docs/Makefile
hlvm/trunk/docs/doxygen.footer
hlvm/trunk/docs/doxygen.header
hlvm/trunk/docs/doxygen.intro
Modified: hlvm/trunk/docs/Doxyfile.in
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/docs/Doxyfile.in?rev=37975&r1=37974&r2=37975&view=diff
==============================================================================
--- hlvm/trunk/docs/Doxyfile.in (original)
+++ hlvm/trunk/docs/Doxyfile.in Sat Jul 7 18:58:33 2007
@@ -17,20 +17,20 @@
# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
# by quotes) that should identify the project.
-PROJECT_NAME = "XPS API"
+PROJECT_NAME = "HLVM API"
# The PROJECT_NUMBER tag can be used to enter a project or revision number.
# This could be handy for archiving the generated documentation or
# if some version control system is used.
-PROJECT_NUMBER = @XPS_VERSION@
+PROJECT_NUMBER = @HLVM_VERSION@
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
# base path where the generated documentation will be put.
# If a relative path is entered, it will be relative to the location
# where doxygen was started. If left blank the current directory will be used.
-OUTPUT_DIRECTORY = ./www/apis
+OUTPUT_DIRECTORY = ./apis
# The OUTPUT_LANGUAGE tag is used to specify the language in which all
# documentation generated by doxygen is written. Doxygen will use this
@@ -48,7 +48,7 @@
# Private class members and static file members will be hidden unless
# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
-EXTRACT_ALL = NO
+EXTRACT_ALL = YES
# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
# will be included in the documentation.
@@ -58,7 +58,7 @@
# If the EXTRACT_STATIC tag is set to YES all static members of a file
# will be included in the documentation.
-EXTRACT_STATIC = YES
+EXTRACT_STATIC = NO
# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
# defined locally in source files will be included in the documentation.
@@ -72,7 +72,7 @@
# various overviews, but no documentation section is generated.
# This option has no effect if EXTRACT_ALL is enabled.
-HIDE_UNDOC_MEMBERS = YES
+HIDE_UNDOC_MEMBERS = NO
# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
# undocumented classes that are normally visible in the class hierarchy.
@@ -86,7 +86,7 @@
# If set to NO (the default) these declarations will be included in the
# documentation.
-HIDE_FRIEND_COMPOUNDS = YES
+HIDE_FRIEND_COMPOUNDS = NO
# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
# documentation blocks found inside the body of a function.
@@ -115,10 +115,10 @@
ALWAYS_DETAILED_SEC = NO
-# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
-# members of a class in the documentation of that class as if those members were
-# ordinary class members. Constructors, destructors and assignment operators of
-# the base classes will not be shown.
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if
+# those members were ordinary class members. Constructors, destructors and
+# assignment operators of the base classes will not be shown.
INLINE_INHERITED_MEMB = NO
@@ -160,7 +160,7 @@
# will show members with their full class and namespace scopes in the
# documentation. If set to YES the scope will be hidden.
-HIDE_SCOPE_NAMES = YES
+HIDE_SCOPE_NAMES = NO
# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
# will generate a verbatim copy of the header file for each class for
@@ -345,7 +345,7 @@
# directories like "/usr/src/myproject". Separate the files or directories
# with spaces.
-INPUT = @abs_top_srcdir@/xps @abs_srcdir@/doxygen.intro
+INPUT = @abs_top_srcdir@/hlvm @abs_srcdir@/doxygen.intro
# If the value of the INPUT tag contains directories, you can use the
# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
@@ -354,7 +354,7 @@
# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
# *.h++ *.idl *.odl
-FILE_PATTERNS = *.C *.h *.i *.t *.p *.doxy *.msgs
+FILE_PATTERNS = *.cpp *.C *.h *.i *.t *.p *.doxy *.msgs
# The RECURSIVE tag can be used to turn specify whether or not subdirectories
# should be searched for input files as well. Possible values are YES and NO.
@@ -377,7 +377,7 @@
# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
# certain files from those directories.
-EXCLUDE_PATTERNS = */tests/* */doc/* */task/* */xvmapi/* */xplec/* */new/* */save/* */os/solaris/* */os/win32/*
+EXCLUDE_PATTERNS =
# The EXAMPLE_PATH tag can be used to specify one or more files or
# directories that contain example code fragments that are included (see
@@ -842,7 +842,7 @@
# or name=definition (no spaces). If the definition and the = are
# omitted =1 is assumed.
-PREDEFINED = XPS_VERSION="@XPS_VESION@" _GNU_SOURCE _REENTRANT _POSIX_THREADS
+PREDEFINED = HLVM_VERSION="@HLVM_VERSION@" _GNU_SOURCE _REENTRANT _POSIX_THREADS
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
# this tag can be used to specify a list of macro names that should be expanded.
Modified: hlvm/trunk/docs/Makefile
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/docs/Makefile?rev=37975&r1=37974&r2=37975&view=diff
==============================================================================
--- hlvm/trunk/docs/Makefile (original)
+++ hlvm/trunk/docs/Makefile Sat Jul 7 18:58:33 2007
@@ -10,12 +10,12 @@
LEVEL := ..
EXTRA_DIST := Doxyfile.in doxygen.css doxygen.footer doxygen.header \
- doxygen.intro www
+ doxygen.intro apis
-include $(LEVEL)/Makefile.xps
+include $(LEVEL)/Makefile.hlvm
-DOCS_TAR_FILE := $(PROJ_OBJ_DIR)/xps.www.tar
-DOCS_TGZ_FILE := $(PROJ_OBJ_DIR)/xps.www.tar.gz
+DOCS_TAR_FILE := $(PROJ_OBJ_DIR)/hlvm.www.tar
+DOCS_TGZ_FILE := $(PROJ_OBJ_DIR)/hlvm.www.tar.gz
.PHONY: doxygen
@@ -23,31 +23,27 @@
DOXYGEN_DEPS = \
Doxyfile \
- www/apis/html/.dir \
+ apis/html/.dir \
$(PROJ_SRC_DIR)/doxygen.css \
$(PROJ_SRC_DIR)/doxygen.header \
$(PROJ_SRC_DIR)/doxygen.footer \
$(PROJ_SRC_DIR)/doxygen.intro \
- $(PROJ_SRC_ROOT)/xps/base/Base.h \
- $(PROJ_SRC_ROOT)/xps/xml/Handler.h \
- $(PROJ_SRC_ROOT)/xps/xpl/Handler.h \
- $(PROJ_SRC_ROOT)/xps/xplbe/XPLTargetMachine.h
+ $(PROJ_SRC_ROOT)/hlvm/Base/Config.h.in \
-www/apis/html/index.html : $(DOXYGEN_DEPS)
- $(Echo) Running Doxygen (be patient)
+apis/html/index.html : $(DOXYGEN_DEPS)
+ $(Echo) "Running Doxygen (be patient)"
$(Verb) cp $(PROJ_SRC_DIR)/doxygen.css doxygen.css
$(Verb) doxygen Doxyfile >doxygen.out 2>&1
- $(Verb) cp $(PROJ_SRC_DIR)/doxygen.css www/apis/html
+ $(Verb) cp $(PROJ_SRC_DIR)/doxygen.css apis/html
DOCS_TAR_DEPS = \
- www/apis/html/index.html \
- $(wildcard $(PROJ_SRC_DIR)/www/%.incl) \
- $(wildcard $(PROJ_SRC_DIR)/www/%.shtml)
+ apis/html/index.html \
+ $(wildcard $(PROJ_SRC_DIR)/%.incl) \
+ $(wildcard $(PROJ_SRC_DIR)/%.shtml)
-$(DOCS_TGZ_FILE): www/apis/html/.dir $(DOCS_TAR_DEPS)
+$(DOCS_TGZ_FILE): apis/html/.dir $(DOCS_TAR_DEPS)
$(Echo) Creating gzipped tar file for documentation
- $(Verb) find $(PROJ_SRC_DIR)/www -type d -exec chmod 755 {} \;
- $(Verb) find $(PROJ_SRC_DIR)/www -type f -exec chmod 644 {} \;
- $(Verb) tar --directory $(PROJ_SRC_DIR) -lcf $(DOCS_TAR_FILE) www
- $(Verb) tar --directory $(PROJ_OBJ_DIR) -lrf $(DOCS_TAR_FILE) www
+ $(Verb) find $(PROJ_SRC_DIR) -type d -exec chmod 755 {} \;
+ $(Verb) find $(PROJ_SRC_DIR) -type f -exec chmod 644 {} \;
+ $(Verb) tar --directory $(PROJ_OBJ_DIR) -lrf $(DOCS_TAR_FILE) apis
$(Verb) gzip -f9 $(DOCS_TAR_FILE)
Modified: hlvm/trunk/docs/doxygen.footer
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/docs/doxygen.footer?rev=37975&r1=37974&r2=37975&view=diff
==============================================================================
--- hlvm/trunk/docs/doxygen.footer (original)
+++ hlvm/trunk/docs/doxygen.footer Sat Jul 7 18:58:33 2007
@@ -2,15 +2,6 @@
<p class="footer">
Generated on $datetime for $projectname version $projectnumber by
<a href="http://www.doxygen.org/index.html">doxygen $doxygenversion</a><br/>
-Copyright © 2003-2005, eXtensible Systems, Inc. All Rights Reserved.<br/>
-<a href="/index.php" onmouseover="window.status='Go To XPS Home Page';return true;" title="XPS Home Page">
-<img src="/images/logo_xps_small.jpeg" style="border:none" alt="XPS Logo"/></a>
-<a href="http://sourceforge.net/" onmouseover="window.status='Go To Source Forge Home Page';return true;" title="Source Forge Home Page">
-<img src="http://sourceforge.net/sflogo.php?group_id=51164&type=1" style="border:none" alt="SourceForge.net Logo"/>
-</a>
-<a href="http://www.opensource.org/docs/definition.php" onmouseover="window.status='Go To OSI Definition Page';return true;"
-title="Open Source Definition">
-<img src="/theme/osi-certified-60x50.gif" alt="OSI Certification Logo" style="border:none"/></a>
-<a href="http://www.doxygen.org/index.html" onmouseover="window.status='Go To Doxygen Home Page';return true;" title="Doxygen Home Page">
-<img src="doxygen.png" alt="Doxygen Logo" style="border:none;"/></a>
+Copyright © 2006, HLVM Group. All Rights Reserved.<br/>
+<a href="http://hlvm.org/" onmouseover="window.status='Go To HLVM Home Page';return true;" title="HLVM Home Page">HLVM Home Page</a>
</p></body></html>
Modified: hlvm/trunk/docs/doxygen.header
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/docs/doxygen.header?rev=37975&r1=37974&r2=37975&view=diff
==============================================================================
--- hlvm/trunk/docs/doxygen.header (original)
+++ hlvm/trunk/docs/doxygen.header Sat Jul 7 18:58:33 2007
@@ -1,9 +1,11 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html><head>
-<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
-<meta name="keywords" content="C++,XPS,doxygen,eXtensible Programming System,API,documentation"/>
-<meta name="description" content="C++ source code API documentation for the eXtensible Programming System (XPS)."/>
-<title>XPS $projectnumber : $title </title>
-<link href="doxygen.css" rel="stylesheet" type="text/css"/>
-</head><body>
-<p class="title">XPS API Documentation</p>
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
+ <meta name="keywords" content="C++,HLVM,doxygen,High Level Virtual Machine,API,documentation"/>
+ <meta name="description" content="C++ source code API documentation for the High Level Virtual Machine (HLVM)."/>
+ <title>HLVM $projectnumber : $title </title>
+ <link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<p class="title">HLVM API Documentation</p>
Modified: hlvm/trunk/docs/doxygen.intro
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/docs/doxygen.intro?rev=37975&r1=37974&r2=37975&view=diff
==============================================================================
--- hlvm/trunk/docs/doxygen.intro (original)
+++ hlvm/trunk/docs/doxygen.intro Sat Jul 7 18:58:33 2007
@@ -15,193 +15,38 @@
//
////////////////////////////////////////////////////////////////////////////////
/// @file doxygen.intro
-/// @author Reid Spencer <raspencer at users.sourceforge.net> (original author)
-/// @date 2003/04/17
+/// @author Reid Spencer <rspencer at hlvm.org> (original author)
+/// @date 2006/05/04
/// @brief XPS documentation introduction.
////////////////////////////////////////////////////////////////////////////////
-/// @mainpage XPS:eXtensible Programming System
+/// @mainpage HLVM:High Level Virtual Machine
///
/// @section main_intro Introduction
-/// Welcome to the eXtensible Programming System (XPS).
+/// Welcome to the High Level Virtual Machine (HLVM).
///
/// This documentation describes the @b internal software that makes
-/// up XPS, not the @b external use of XPS. There are no instructions
-/// here on how to use XPS, only how to develop it. For usage instructions
-/// please obtain the programmer's guide or user's guide for XPL and XPS
-/// respectively.
+/// up HLVM, not the @b external use of HLVM. There are no instructions
+/// here on how to use HLVM, only how to develop it. For usage instructions
+/// please obtain the programmer's guide or user's guide for HLVM.
///
-/// @section main_caveat Caveat
+/// @section main_caveat Caveat
/// This documentation is generated directly from the source code with doxygen.
-/// Since XPS is constantly under active development, what you're about to
+/// Since HLVM is constantly under active development, what you're about to
/// read is out of date! However, it may still be useful since certain
-/// portions of XPS are relatively stable (base, os, mem ). When XPS reaches
+/// portions of HLVM are relatively stable. When HLVM reaches
/// full stability (around release 0.9), this caveat will be removed and the
/// documentation will pertain to a specific release of the software. Until
/// then, refer back often to this page as it is updated between releases as
/// significant changes are made.
///
/// @section main_overview Overview
-/// XPS is a comprehensive programming platform that hides all the "hard stuff"
-/// and makes programming much easier. By "hard stuff" we mean at least the
-/// following:
-/// - platform independence
-/// - flexible and efficient transient and persistent memory management
-/// - efficient network protocols implementations
-/// - internationalization (i18n) and localization (l10n)
-/// - security (authentication, authorization, encryption, non-repudiation)
-/// - asynchronous event management
-/// - correct pattern implementations for network programming
-/// - dynamic compilation, linking, and execution of programs
-/// - software version management
-/// - software configuration management
-/// - software deployment management
-/// - transaction coordination and management
-/// - multi-user distributed software development
-/// - multi-user distributed application architecture
-/// - development of robust, high-availability, fault-tolerant applications
-/// - dynamic application monitoring and tuning
-/// - extensibility
-///
-/// Individually, none of the "hard stuff" is new.
-/// There are many software packages and tools that provide these functions
-/// competently. What is new is the ability to package all the "hard stuff"
-/// into a single well-integrated product that then hides the details from the
-/// programmer. By providing a comprehensive platform upon which robust
-/// Internet applications are developed, XPS makes that development easier.
-///
-/// But that's just the beginning. It isn't enough to produce just a
-/// best-of-class development environment. Programming is also hampered by its
-/// low level of abstraction. After 50+ years of software development, we're
-/// still only a few levels removed from the physical machine. This low level
-/// of abstraction still requires highly-skilled programmers to produce
-/// extremely technical code. While that fosters job security, it doesn't do
-/// much to advance the state of the art. One of XPS's stated goals is to
-/// bring programming to layperson and expert alike. We envision a day when
-/// programming is just plain easy.
-///
-/// XPS uses a variety of techniques to address this situation:
-/// - use of an efficient virtual machine (XVM)
-/// - a high-level programming language (XPL)
-/// - horizontal and vertical extensibility
-///
-/// Each of these is described in the following subsections.
-///
-/// @subsection xvm eXtensible Virtual Machine (XVM)
-/// The XVM is the basic building block of XPS. It is responsible for the
-/// correct execution of XPL programs. Virtual machines are nothing new,
-/// they've been around for decades. However, the XVM differs from previous
-/// virtual machine implementations in the following ways:
-/// - there is no byte code interpretation, everything executes at machine
-/// speeds (JITing as necessary).
-/// - the machine semantics are not limited by hardware constraints
-/// - operations range from the mundane low-level bit manipulations familiar in most virtual machines to very high-order operations such as transaction commit.
-/// - the machine only manages state, not execution. Consequently, there are no branching instructions!
-/// - special attention is paid to security, robustness, fault tolerance, and provable semantics.
-/// - the machine provides efficient monitoring, tracing, and debugging facilities.
-///
-/// @subsection xpl eXtensible Programming Language (XPL)
-/// XPL is a high-level programming language. It supports the usual definition of
-/// types, functions, object classes and methods, and etc. However, it also
-/// provides numerous complicated features by simply declaring them. That is, you
-/// don't do any procedural programming for these features, you just declare that
-/// you want them. Some of the features that can be applied declaratively are:
-/// - reference counting
-/// - memory usage optimization
-/// - memory allocation strategies
-/// - persistent memory
-/// - multi-thread synchronization
-/// - asynchronous function/method invocation
-/// - atomic operations
-/// - parallelism
-/// - transactions
-/// - security
-/// - complex collection types
-/// - active objects
-/// - configurable program behavior
-/// - network protocols
-/// - software engineering features (assertions, invariants, etc.)
-///
-/// By handling these kinds of things as simple selectable options, the programmer
-/// needn't be bogged down in trying to correctly implement them in every program.
-/// Furthermore, XPS handles any combination of these features efficiently. It
-/// carefully analyzes which features a given program construct is requesting and
-/// generates the best code for that combination.
-///
-/// XPL is also very flexible. Because it is based on XML, all the power of XML
-/// processing tools can be utilized. Two are worthy of mentioning here:
-/// @par XML Substitution Groups (Horizontal Extension)
-/// XPL uses XML substitution groups in its schema definition to allow \em additional syntax
-/// and semantics to be added to the base XPL language. Unlike more static languages, this
-/// means it is possible for the XPL compiler recognize language constructs not originally
-/// envisioned.
-/// @par XSL Transformations (Vertical Extension)
-/// The XPL compiler can compile higher order languages if there is an XSL Transformation
-/// available from the high order language to XPL. The transformations is automatically and
-/// transparently applied by the compiler. This allows programmers to rapidly invent their
-/// own languages to meet the needs of their particular application domain.
-///
-/// Together these two features comprise the extensibility features for XPL.
-///
-/// @subsection extension Horizontal and Vertical eXtensibility
-/// As just noted, XPL supports horizontal and vertical extensiblity. First, lets define what we mean by this. If you think of
-/// XPS as a black box sitting on the floor, you can put other boxes around (horizontally on the floor) or on top of it (building a
-/// stack vertically). When we speak of horizontal extensibility, we mean adding things to the fundamental nature of XPS. For example,
-/// a web server's plugin is a kind of horizontal extensibility. You add some code that gets invoked through a well defined interface
-/// to make the web server do something it didn't do before .. little boxes laid out on the floor. When we speak of vertical
-/// extensibility we mean using the core features of XPS (and, possibily, its horizontal extensions) in new and interesting ways
-/// without changing XPS itself. For example, the C pre-processor is an example of vertical extensibility. You can make regular old
-/// C and C++ programs much more concise by breaking it into multiple #included files and using macros to eliminate repetitive or
-/// complex constructs.
-///
-/// To support horizontal extensibility, XPS provides the following:
-/// - XPL can be extended by including new programming constructs into the base language.
-/// - The XPL compiler can be extended to generate code in a variety of new ways, especially for XPL extensions.
-/// - The XVM can be extended by creating new fundamental opcodes that can be used in XPL programs.
-/// - The XPS daemon can be extended to provide new services to users of XPS.
-/// - The XPS shell can be extended to process new commands from users.
-///
-/// To support vertical extensibility, XPS provides the following:
-/// - The XPL compiler can recursively and automatically apply XSL Transformations to non-XPL XML input. That is, you can write your program in whatever language you like as long as a series of transformations to XPL (or some extension of XPL) is provided.
-/// - Similarly, the XPS shell can recursively translate and execute command definitions written in higher-order command languages.
-/// - The XVM can interpret opcode sets built strictly from other, existing opcodes.
-/// - The XPS daemon supports loadable services that can be re-used in XPL programs.
-///
-/// @section main_other Other Features
-/// Although the overview above describes the main features of XPS, there are some additional
-/// features worthy of at least making a note here:
-/// - XPS supports a complete build management service so that all programming related chores in XPS can be done remotely and safely. Programmer's have workspaces in which they can create, check-in, check-out, merge, compile, link, and execute their programs.
-/// - XPS supports a complete deployment management service so that applications can be rigorously and safely deployed into a production environment. Services for testing, configuring, updating, and activating a running application are provided in such a way that downtime is minimized.
-/// - Logic programming will be added as an extension to the core. It will look familiar to Prolog programmers.
-/// - Fuzzy logic programming will be added as an extension to the core. Fuzzy variables will be available to all programs.
-/// - A high-order multimedia 4D user interface extension will be added.
-/// - A 4D software development environment will be added once the user interface extensions is complete.
-///
-/// @section main_summary Summary
-/// XPS provides a wealth of tools to the programmer. And, those tools are aimed at making
-/// programming easier, not more complicated. The "hard stuff" is encoded into the internals
-/// of XPS so that programmer's can simply select the features they need in their programs.
-/// Extensibility further enhances simplicity by allowing programming to be done at higher
-/// and higher levels of abstraction without loss of performance. Planned extensions will
-/// directly support the rapid creation of high-quality software.
-///
-/// @section main_plug Shameless Plug
-/// If you've been programming for at least a couple of years, you're probably salivating
-/// by now. XPS, as described above, is aimed at being programming heaven. But, before you
-/// get your hopes up too high, take to heart that XPS is currently a work in progress.
-/// Much of what is described above is just jotted down notes, ruminations from past
-/// experience, and the desire to be really, really lazy when it comes to programming high
-/// quality applications. Unfortunately, it takes a lot of hard work to be that lazy.
-/// Although we believe XPS to be doable in the short term, it is definitely a challenge -- a challenge worth taking.
-///
-/// So, here's where you come in. If you've gotten over laughing at the audaciousness
-/// of the project, and think it is a worthy ambition, why not lend a hand? We need help
-/// in just about every area. Why not utilize your best talents and add your name to the
-/// roster of contributors to what will eventually become @em the way to program Internet
-/// applications?
+/// HLVM is a comprehensive compiler development toolkit that targets dynamic
+/// languages and uses LLVM (Low Level Virtual Machine) for code generation. Its
+/// primary goal is to make it easier to develop a dynamic language by providing
+/// compilation tools, code generation, and the runtime environment.
///
/// We look forward to your future contributions.
///
/// @section main_changelog Change Log
-/// - Original Introduction written 4/23/2003 by Reid Spencer
-/// - Overview, Other Features & Summary written 4/26/2003 by Reid Spencer
+/// - Original Introduction written 4/05/2006 by Reid Spencer
More information about the llvm-commits
mailing list