From a57678a70eb3e2515fb4b8f4339fceb7d706ae14 Mon Sep 17 00:00:00 2001 From: "kwiberg@webrtc.org" Date: Tue, 14 Oct 2014 09:40:04 +0000 Subject: [PATCH] Workarounds for a bug in VS2013.3 linker when PGO is turned on. See crbug.com/421607 for more details about this. This CL solve a linker bug when the PGO is turned on, without changing the behaviour or the performances. BUG=crbug.com/421607 R=kwiberg@webrtc.org, turaj@webrtc.org Review URL: https://webrtc-codereview.appspot.com/26789005 git-svn-id: http://webrtc.googlecode.com/svn/trunk@7441 4adac7df-926f-26a2-2b94-8c16560cd09d --- .../main/acm2/audio_coding_module_impl.cc | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.cc b/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.cc index 687c5b8106..bee1f663dc 100644 --- a/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.cc +++ b/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.cc @@ -2047,6 +2047,7 @@ void AudioCodingModuleImpl::GetDecodingCallStatistics( bool AudioCodingImpl::RegisterSendCodec(AudioEncoder* send_codec) { FATAL() << "Not implemented yet."; + return false; } bool AudioCodingImpl::RegisterSendCodec(int encoder_type, @@ -2071,6 +2072,7 @@ bool AudioCodingImpl::RegisterSendCodec(int encoder_type, const AudioEncoder* AudioCodingImpl::GetSenderInfo() const { FATAL() << "Not implemented yet."; + return reinterpret_cast(NULL); } const CodecInst* AudioCodingImpl::GetSenderCodecInst() { @@ -2089,10 +2091,12 @@ int AudioCodingImpl::Add10MsAudio(const AudioFrame& audio_frame) { const ReceiverInfo* AudioCodingImpl::GetReceiverInfo() const { FATAL() << "Not implemented yet."; + return reinterpret_cast(NULL); } bool AudioCodingImpl::RegisterReceiveCodec(AudioDecoder* receive_codec) { FATAL() << "Not implemented yet."; + return false; } bool AudioCodingImpl::RegisterReceiveCodec(int decoder_type, @@ -2123,22 +2127,27 @@ bool AudioCodingImpl::InsertPayload(const uint8_t* incoming_payload, uint8_t payload_type, uint32_t timestamp) { FATAL() << "Not implemented yet."; + return false; } bool AudioCodingImpl::SetMinimumPlayoutDelay(int time_ms) { FATAL() << "Not implemented yet."; + return false; } bool AudioCodingImpl::SetMaximumPlayoutDelay(int time_ms) { FATAL() << "Not implemented yet."; + return false; } int AudioCodingImpl::LeastRequiredDelayMs() const { FATAL() << "Not implemented yet."; + return -1; } bool AudioCodingImpl::PlayoutTimestamp(uint32_t* timestamp) { FATAL() << "Not implemented yet."; + return false; } bool AudioCodingImpl::Get10MsAudio(AudioFrame* audio_frame) { @@ -2148,14 +2157,18 @@ bool AudioCodingImpl::Get10MsAudio(AudioFrame* audio_frame) { bool AudioCodingImpl::NetworkStatistics( ACMNetworkStatistics* network_statistics) { FATAL() << "Not implemented yet."; + return false; } bool AudioCodingImpl::EnableNack(size_t max_nack_list_size) { FATAL() << "Not implemented yet."; + return false; } void AudioCodingImpl::DisableNack() { - FATAL() << "Not implemented yet."; + // A bug in the linker of Visual Studio 2013 Update 3 prevent us from using + // FATAL() here, if we do so then the linker hang when the WPO is turned on. + // TODO(sebmarchand): Re-evaluate this when we upgrade the toolchain. } bool AudioCodingImpl::SetVad(bool enable_dtx,