mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-17 04:24:00 +00:00
uselistorder: Pull the bit through WriteToBitcodFile()
Change the callers of `WriteToBitcodeFile()` to pass `true` or `shouldPreserveBitcodeUseListOrder()` explicitly. I left the callers that want to send `false` alone. I'll keep pushing the bit higher until hopefully I can delete the global `cl::opt` entirely. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@234957 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -2312,7 +2312,8 @@ static void WriteBlockInfo(const ValueEnumerator &VE, BitstreamWriter &Stream) {
|
||||
}
|
||||
|
||||
/// WriteModule - Emit the specified module to the bitstream.
|
||||
static void WriteModule(const Module *M, BitstreamWriter &Stream) {
|
||||
static void WriteModule(const Module *M, BitstreamWriter &Stream,
|
||||
bool ShouldPreserveUseListOrder) {
|
||||
Stream.EnterSubblock(bitc::MODULE_BLOCK_ID, 3);
|
||||
|
||||
SmallVector<unsigned, 1> Vals;
|
||||
@ -2321,7 +2322,7 @@ static void WriteModule(const Module *M, BitstreamWriter &Stream) {
|
||||
Stream.EmitRecord(bitc::MODULE_CODE_VERSION, Vals);
|
||||
|
||||
// Analyze the module, enumerating globals, functions, etc.
|
||||
ValueEnumerator VE(*M, shouldPreserveBitcodeUseListOrder());
|
||||
ValueEnumerator VE(*M, ShouldPreserveUseListOrder);
|
||||
|
||||
// Emit blockinfo, which defines the standard abbreviations etc.
|
||||
WriteBlockInfo(VE, Stream);
|
||||
@ -2440,7 +2441,8 @@ static void EmitDarwinBCHeaderAndTrailer(SmallVectorImpl<char> &Buffer,
|
||||
|
||||
/// WriteBitcodeToFile - Write the specified module to the specified output
|
||||
/// stream.
|
||||
void llvm::WriteBitcodeToFile(const Module *M, raw_ostream &Out) {
|
||||
void llvm::WriteBitcodeToFile(const Module *M, raw_ostream &Out,
|
||||
bool ShouldPreserveUseListOrder) {
|
||||
SmallVector<char, 0> Buffer;
|
||||
Buffer.reserve(256*1024);
|
||||
|
||||
@ -2463,7 +2465,7 @@ void llvm::WriteBitcodeToFile(const Module *M, raw_ostream &Out) {
|
||||
Stream.Emit(0xD, 4);
|
||||
|
||||
// Emit the module.
|
||||
WriteModule(M, Stream);
|
||||
WriteModule(M, Stream, ShouldPreserveUseListOrder);
|
||||
}
|
||||
|
||||
if (TT.isOSDarwin())
|
||||
|
Reference in New Issue
Block a user