Indexes and tables#
TODO#
Todo
document the contents of these files, and what variables should be set to control build, host and target configuration.
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/configuration-in-the-gcc-directory.rst, line 66.)
Todo
this should be part of this manual rather than a separate file
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/building-documentation.rst, line 217.)
Todo
the information in this file should be part of general documentation of the front-end interface in this manual.
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/building-documentation.rst, line 234.)
Todo
why isn’t this part of this manual or of the GCC Coding Conventions?
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/building-documentation.rst, line 244.)
Todo
document such files in subdirectories, at least config
,
c
, cp
, objc
, testsuite
.
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/building-documentation.rst, line 246.)
Todo
reference docs for this
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-target-back-end.rst, line 68.)
Todo
document somewhere how to write testsuite harnesses
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-language-front-end.rst, line 47.)
Todo
document this further
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-language-front-end.rst, line 52.)
Todo
exactly what goes in each of these targets?
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-language-front-end.rst, line 214.)
Todo
document them somewhere
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/headers-installed-by-gcc.rst, line 18.)
Todo
describe the build system, including what is built in what stages. Also list the various source files that are used in the build process but aren’t source files of GCC itself and so aren’t documented below (see Passes and Files of the Compiler).
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/build-system-in-the-gcc-directory.rst, line 11.)
Todo
list here, with explanation, all the C source files and headers
under the gcc
directory that aren’t built into the GCC
executable but rather are part of runtime libraries and object files,
such as crtstuff.c
and unwind-dw2.c
. See Headers Installed by GCC, for more information about the
ginclude
directory.
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/library-source-files-and-headers-under-the-gcc-directory.rst, line 11.)
Todo
write part
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/guidelines-for-options.rst, line 13.)
Todo
more examples?
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/guidelines-for-diagnostics.rst, line 145.)
Todo
Talk about how to obtain representations of this constant, do comparisons, and so forth.
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/generic/expressions.rst, line 84.)
Todo
The formats of string constants are not well-defined when the target system bytes are not the same width as host system bytes.
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/generic/expressions.rst, line 194.)
Todo
How is the operand supposed to be rounded? Is this dependent on
-mieee
?
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/generic/expressions.rst, line 368.)
Todo
This macro is not yet implemented.
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/generic/c-and-c++-trees.rst, line 491.)
Todo
Cgraph should control nested function lowering. It would only be invoked when it is certain that the outer-most function is used.
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/passes-and-files-of-the-compiler/parsing-pass.rst, line 39.)
Todo
Cgraph needs a gimplify_function callback. It should be invoked when (1) it is certain that the function is used, (2) warning flags specified by the user require some amount of compilation in order to honor, (3) the language indicates that semantic analysis is not complete until gimplification occurs. Hum… this sounds overly complicated. Perhaps we should just have the front end gimplify always; in most cases it’s only one function call.
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/passes-and-files-of-the-compiler/parsing-pass.rst, line 43.)
Todo
I know rest_of_compilation currently has all sorts of RTL generation semantics. I plan to move all code generation bits (both Tree and RTL) to compile_function. Should we hide cgraph from the front ends and move back to rest_of_compilation as the official interface? Possibly we should rename all three interfaces such that the names match in some meaningful way and that is more descriptive than “rest_of”.
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/passes-and-files-of-the-compiler/parsing-pass.rst, line 71.)
Todo
describe the global variables set up by the pass manager, and a brief description of how a new pass should use it. I need to look at what info RTL passes use first…
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/passes-and-files-of-the-compiler/pass-manager.rst, line 40.)
Todo
document the others
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/testsuites.rst, line 16.)
Todo
describe this
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/testsuites/c-language-testsuites.rst, line 50.)
Todo
describe this
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/testsuites/c-language-testsuites.rst, line 61.)
Todo
discuss how defines such as STACK_SIZE
are used
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/testsuites/c-language-testsuites.rst, line 75.)
Todo
describe this
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/testsuites/c-language-testsuites.rst, line 85.)
Todo
merge in testsuite/README.gcc
and discuss the format of
test cases and magic comments more.
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/testsuites/c-language-testsuites.rst, line 112.)
Todo
The default should be PREFERRED_STACK_BOUNDARY
.
But the fix for PR 32893 indicates that we can only guarantee
maximum stack alignment on stack up to STACK_BOUNDARY
, not
PREFERRED_STACK_BOUNDARY
, if stack alignment isn’t supported.
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/target-macros/storage-layout.rst, line 220.)
Todo
discuss non-C testsuites here
(The original entry is located in /home/marxin/BIG/buildbot/buildworker/marxinbox-sphinx/build/gcc/doc/gccint/testsuites/idioms-used-in-testsuite-code.rst, line 84.)