aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenModule.cpp
diff options
context:
space:
mode:
authorRui Ueyama <ruiu@google.com>2014-08-04 23:48:57 +0000
committerRui Ueyama <ruiu@google.com>2014-08-04 23:48:57 +0000
commit145ef0186c3e53365127f4e72af2e617c4d8ef90 (patch)
tree68a557ee0a326c277f9595782596e3c558b873ac /clang/lib/CodeGen/CodeGenModule.cpp
parentf490bec4a1356a0d3f8269eae5cb2c7cbcd3174e (diff)
downloadllvm-145ef0186c3e53365127f4e72af2e617c4d8ef90.zip
llvm-145ef0186c3e53365127f4e72af2e617c4d8ef90.tar.gz
llvm-145ef0186c3e53365127f4e72af2e617c4d8ef90.tar.bz2
[PECOFF] Fix /include option in .drectve section.
/INCLUDE arguments passed as command line options are handled in the same way as Unix -u. All option values are converted to an undefined symbol and added to a dummy input file, so that the specified symbols are resolved. One tricky thing on Windows is that the option is also allowed to appear in the object file's directive section. At the time when it's being read, all (regular) command line options have already been processed. We cannot add undefined atoms to the dummy file anymore. Previously, we added such /INCLUDE to a set that has already been processed. As a result the options were ignored. This patch fixes the issue. Now, /INCLUDE symbols in the directive section are handled as real undefined symbol in the COFF file. We create an undefined symbol for each /INCLUDE argument and add it to the file being parsed. llvm-svn: 214824
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions