Indexes and tables#

Index

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.)