FailedChanges

Summary

  1. Fix Windows bots broken by r301492 http://lab.llvm.org:8011/builders/lldb-x86-windows-msvc2015/builds/8644/
  2. Turn DISubprogram into a variable-length node. DISubprogram currently has 10 pointer operands, several of which are often nullptr. This patch reduces the amount of memory allocated by DISubprogram by rearranging the operands such that containing type, template params, and thrown types come last, and are only allocated when they are non-null (or followed by non-null operands). This patch also eliminates the entirely unused DisplayName operand. This saves up to 4 pointer operands per DISubprogram. (I tried measuring the effect on peak memory usage on an LTO link of an X86 llc, but the results were very noisy). This reapplies r301498 with an attempted workaround for g++. Differential Revision: https://reviews.llvm.org/D32560
  3. Remove unnecessary and somewhat inaccurate "C89" flag from language standards.
  4. Revert "Turn DISubprogram into a variable-length node." This reverts commit r301498 while investigating bot breakage.
  5. Turn DISubprogram into a variable-length node. DISubprogram currently has 10 pointer operands, several of which are often nullptr. This patch reduces the amount of memory allocated by DISubprogram by rearranging the operands such that containing type, template params, and thrown types come last, and are only allocated when they are non-null (or followed by non-null operands). This patch also eliminates the entirely unused DisplayName operand. This saves up to 4 pointer operands per DISubprogram. (I tried measuring the effect on peak memory usage on an LTO link of an X86 llc, but the results were very noisy).
  6. Don't accept -std= values that would switch us to a different source language. We already prohibited this in most cases (in r130710), but had some bugs in our enforcement of this rule. Specifically, this prevents the following combinations: * -x c -std=clN.M, which would previously effectively act as if -x cl were used, despite the input being a C source file. (-x cl -std=cNN continues to be disallowed.) * -x c++ -std=cuda, which would previously select C++98 + CUDA, despite that not being a C++ standard. (-x cuda -std=c++NN is still permitted, and selects CUDA with the given C++ standard as its base language. -x cuda -std=cuda is still supported with the meaning of CUDA + C++98.) * -x renderscript -std=c++NN, which would previously form a hybrid "C++ with RenderScript extensions" language. We could support such a thing, but shouldn't do so by accident.
  7. MachineFrameInfo.h: Remove unnecessary forward declarations; NFC
  8. Lanai: Remove unnecessary canRealignStack() override; NFC It was doing the same as the base implementation and was irritating me when I was searching for backends that have custom behavior for canRealignStack.
  9. MachineFrameInfo: Move implementation to an own file; NFC Move implementation of the MachineFrameInfo class into MachineFrameInfo.cpp
Revision 301502 by cbieneman:
Fix Windows bots broken by r301492

http://lab.llvm.org:8011/builders/lldb-x86-windows-msvc2015/builds/8644/
Change TypePath in RepositoryPath in Workspace
The file was modified/lldb/trunk/source/Host/common/TCPSocket.cpp (diff)llvm-revision.src/lldb/trunk/source/Host/common/TCPSocket.cpp
Revision 301501 by Adrian Prantl:
Turn DISubprogram into a variable-length node.

DISubprogram currently has 10 pointer operands, several of which are
often nullptr. This patch reduces the amount of memory allocated by
DISubprogram by rearranging the operands such that containing type,
template params, and thrown types come last, and are only allocated
when they are non-null (or followed by non-null operands).

This patch also eliminates the entirely unused DisplayName operand.

This saves up to 4 pointer operands per DISubprogram. (I tried
measuring the effect on peak memory usage on an LTO link of an X86
llc, but the results were very noisy).

This reapplies r301498 with an attempted workaround for g++.

Differential Revision: https://reviews.llvm.org/D32560
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/IR/DebugInfoMetadata.h (diff)llvm-revision.src/llvm/trunk/include/llvm/IR/DebugInfoMetadata.h
The file was modified/llvm/trunk/lib/Bitcode/Reader/MetadataLoader.cpp (diff)llvm-revision.src/llvm/trunk/lib/Bitcode/Reader/MetadataLoader.cpp
The file was modified/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp (diff)llvm-revision.src/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modified/llvm/trunk/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp (diff)llvm-revision.src/llvm/trunk/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
The file was modified/llvm/trunk/lib/IR/DebugInfoMetadata.cpp (diff)llvm-revision.src/llvm/trunk/lib/IR/DebugInfoMetadata.cpp
The file was modified/llvm/trunk/tools/opt/BreakpointPrinter.cpp (diff)llvm-revision.src/llvm/trunk/tools/opt/BreakpointPrinter.cpp
Revision 301500 by rsmith:
Remove unnecessary and somewhat inaccurate "C89" flag from language standards.
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/Frontend/LangStandard.h (diff)llvm-revision.src/cfe/trunk/include/clang/Frontend/LangStandard.h
The file was modified/cfe/trunk/include/clang/Frontend/LangStandards.def (diff)llvm-revision.src/cfe/trunk/include/clang/Frontend/LangStandards.def
The file was modified/cfe/trunk/lib/Frontend/CompilerInvocation.cpp (diff)llvm-revision.src/cfe/trunk/lib/Frontend/CompilerInvocation.cpp
Revision 301499 by Adrian Prantl:
Revert "Turn DISubprogram into a variable-length node."

This reverts commit r301498 while investigating bot breakage.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/IR/DebugInfoMetadata.h (diff)llvm-revision.src/llvm/trunk/include/llvm/IR/DebugInfoMetadata.h
The file was modified/llvm/trunk/lib/Bitcode/Reader/MetadataLoader.cpp (diff)llvm-revision.src/llvm/trunk/lib/Bitcode/Reader/MetadataLoader.cpp
The file was modified/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp (diff)llvm-revision.src/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modified/llvm/trunk/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp (diff)llvm-revision.src/llvm/trunk/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
The file was modified/llvm/trunk/lib/IR/DebugInfoMetadata.cpp (diff)llvm-revision.src/llvm/trunk/lib/IR/DebugInfoMetadata.cpp
The file was modified/llvm/trunk/tools/opt/BreakpointPrinter.cpp (diff)llvm-revision.src/llvm/trunk/tools/opt/BreakpointPrinter.cpp
Revision 301498 by Adrian Prantl:
Turn DISubprogram into a variable-length node.

DISubprogram currently has 10 pointer operands, several of which are
often nullptr. This patch reduces the amount of memory allocated by
DISubprogram by rearranging the operands such that containing type,
template params, and thrown types come last, and are only allocated
when they are non-null (or followed by non-null operands).

This patch also eliminates the entirely unused DisplayName operand.

This saves up to 4 pointer operands per DISubprogram. (I tried
measuring the effect on peak memory usage on an LTO link of an X86
llc, but the results were very noisy).
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/IR/DebugInfoMetadata.h (diff)llvm-revision.src/llvm/trunk/include/llvm/IR/DebugInfoMetadata.h
The file was modified/llvm/trunk/lib/Bitcode/Reader/MetadataLoader.cpp (diff)llvm-revision.src/llvm/trunk/lib/Bitcode/Reader/MetadataLoader.cpp
The file was modified/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp (diff)llvm-revision.src/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modified/llvm/trunk/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp (diff)llvm-revision.src/llvm/trunk/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
The file was modified/llvm/trunk/lib/IR/DebugInfoMetadata.cpp (diff)llvm-revision.src/llvm/trunk/lib/IR/DebugInfoMetadata.cpp
The file was modified/llvm/trunk/tools/opt/BreakpointPrinter.cpp (diff)llvm-revision.src/llvm/trunk/tools/opt/BreakpointPrinter.cpp
Revision 301497 by rsmith:
Don't accept -std= values that would switch us to a different source language.

We already prohibited this in most cases (in r130710), but had some bugs in our
enforcement of this rule. Specifically, this prevents the following
combinations:

* -x c -std=clN.M, which would previously effectively act as if -x cl were
   used, despite the input being a C source file. (-x cl -std=cNN continues
   to be disallowed.)

* -x c++ -std=cuda, which would previously select C++98 + CUDA, despite that
   not being a C++ standard. (-x cuda -std=c++NN is still permitted, and
   selects CUDA with the given C++ standard as its base language.
   -x cuda -std=cuda is still supported with the meaning of CUDA + C++98.)

* -x renderscript -std=c++NN, which would previously form a hybrid "C++ with
   RenderScript extensions" language. We could support such a thing, but
   shouldn't do so by accident.
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/Frontend/LangStandard.h (diff)llvm-revision.src/cfe/trunk/include/clang/Frontend/LangStandard.h
The file was modified/cfe/trunk/include/clang/Frontend/LangStandards.def (diff)llvm-revision.src/cfe/trunk/include/clang/Frontend/LangStandards.def
The file was modified/cfe/trunk/lib/Frontend/CompilerInvocation.cpp (diff)llvm-revision.src/cfe/trunk/lib/Frontend/CompilerInvocation.cpp
The file was modified/cfe/trunk/lib/Frontend/LangStandards.cpp (diff)llvm-revision.src/cfe/trunk/lib/Frontend/LangStandards.cpp
The file was modified/cfe/trunk/test/Driver/unknown-std.c (diff)llvm-revision.src/cfe/trunk/test/Driver/unknown-std.c
The file was modified/cfe/trunk/test/Driver/unknown-std.cpp (diff)llvm-revision.src/cfe/trunk/test/Driver/unknown-std.cpp
The file was modified/cfe/trunk/test/Frontend/gnu-inline.c (diff)llvm-revision.src/cfe/trunk/test/Frontend/gnu-inline.c
Revision 301496 by matze:
MachineFrameInfo.h: Remove unnecessary forward declarations; NFC
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/CodeGen/MachineFrameInfo.h (diff)llvm-revision.src/llvm/trunk/include/llvm/CodeGen/MachineFrameInfo.h
Revision 301495 by matze:
Lanai: Remove unnecessary canRealignStack() override; NFC

It was doing the same as the base implementation and was irritating me
when I was searching for backends that have custom behavior for
canRealignStack.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/Lanai/LanaiRegisterInfo.cpp (diff)llvm-revision.src/llvm/trunk/lib/Target/Lanai/LanaiRegisterInfo.cpp
The file was modified/llvm/trunk/lib/Target/Lanai/LanaiRegisterInfo.h (diff)llvm-revision.src/llvm/trunk/lib/Target/Lanai/LanaiRegisterInfo.h
Revision 301494 by matze:
MachineFrameInfo: Move implementation to an own file; NFC

Move implementation of the MachineFrameInfo class into
MachineFrameInfo.cpp
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/CodeGen/CMakeLists.txt (diff)llvm-revision.src/llvm/trunk/lib/CodeGen/CMakeLists.txt
The file was added/llvm/trunk/lib/CodeGen/MachineFrameInfo.cppllvm-revision.src/llvm/trunk/lib/CodeGen/MachineFrameInfo.cpp
The file was modified/llvm/trunk/lib/CodeGen/MachineFunction.cpp (diff)llvm-revision.src/llvm/trunk/lib/CodeGen/MachineFunction.cpp