Skip to content

Instantly share code, notes, and snippets.

@kalineh
Created October 31, 2012 02:14
Show Gist options
  • Save kalineh/3984408 to your computer and use it in GitHub Desktop.
Save kalineh/3984408 to your computer and use it in GitHub Desktop.
VS2010 X64 compiler bug repro
//
// Visual Studio 2010
// X64 Compiler Bug
//
struct IntProxy
{
static IntProxy MakeIntProxy(int rhs)
{
IntProxy result;
result.m_value = rhs;
return result;
}
// doesn't crash with const int param
//IntProxy inc(const int)
IntProxy inc(int)
{
// 000000013FAA1040 inc dword ptr [rcx]
// 000000013FAA1042 mov eax,dword ptr [rcx]
m_value++;
// 000000013F8D1044 dec eax
// CRASH HERE: rdx is never given a valid address
// 000000013F8D1046 mov dword ptr [rdx],eax
IntProxy result = MakeIntProxy(m_value - 1);
// 000000013FAA104B ret
return result;
}
int m_value;
};
// 000000013F761050 sub rsp,28h
int main(int argc, char** argv)
{
// 000000013F761054 lea rcx,[proxy]
IntProxy proxy;
// 000000013F761059 mov edx,0Ah
// 000000013F76105E call IntProxy::inc (13F76100Fh)
proxy.inc(10);
return 0;
}
/*
Microsoft Visual Studio 2010
Version 10.0.40219.1 SP1Rel
Microsoft .NET Framework
Version 4.0.30319 SP1Rel
Installed Version: Professional
DPack 3.0.15
DPack for Visual Studio
Copyright © 2004-2011 USysWare, Inc.
For more information, visit http://www.usysware.com/dpack/ or contact us at support@usysware.com
Hotfix for Microsoft Visual Studio 2010 Professional - 日本語 (KB2542054) KB2542054
This hotfix is for Microsoft Visual Studio 2010 Professional - 日本語.
If you later install a more recent service pack, this hotfix will be uninstalled automatically.
For more information, visit http://support.microsoft.com/kb/2542054.
MetalMargin 1.0
Scrollbar replacement with code thumbnail, change tracking, cursor position, and word match highlighting
Microsoft Visual Studio 2010 Professional - 日本語 (KB2522890) 用の修正プログラム KB2522890
この修正プログラムは Microsoft Visual Studio 2010 Professional - 日本語 用です。
より新しいサービス パックを後でインストールすると、この修正プログラムは自動的にアンインストールされます。
詳細については、http://support.microsoft.com/kb/2522890 を参照してください。
Microsoft Visual Studio 2010 Professional - 日本語 (KB2529927) 用の修正プログラム KB2529927
この修正プログラムは Microsoft Visual Studio 2010 Professional - 日本語 用です。
より新しいサービス パックを後でインストールすると、この修正プログラムは自動的にアンインストールされます。
詳細については、http://support.microsoft.com/kb/2529927 を参照してください。
Microsoft Visual Studio 2010 Professional - 日本語 (KB2548139) 用の修正プログラム KB2548139
この修正プログラムは Microsoft Visual Studio 2010 Professional - 日本語 用です。
より新しいサービス パックを後でインストールすると、この修正プログラムは自動的にアンインストールされます。
詳細については、http://support.microsoft.com/kb/2548139 を参照してください。
Microsoft Visual Studio 2010 Professional - 日本語 (KB2549864) 用の修正プログラム KB2549864
この修正プログラムは Microsoft Visual Studio 2010 Professional - 日本語 用です。
より新しいサービス パックを後でインストールすると、この修正プログラムは自動的にアンインストールされます。
詳細については、http://support.microsoft.com/kb/2549864 を参照してください。
Microsoft Visual Studio 2010 Professional - 日本語 (KB2635973) 用の修正プログラム KB2635973
この修正プログラムは Microsoft Visual Studio 2010 Professional - 日本語 用です。
より新しいサービス パックを後でインストールすると、この修正プログラムは自動的にアンインストールされます。
詳細については、http://support.microsoft.com/kb/2635973 を参照してください。
Microsoft Visual Studio 2010 Professional - 日本語 (KB2645410) 用のセキュリティ更新プログラム KB2645410
このセキュリティ更新プログラムは Microsoft Visual Studio 2010 Professional - 日本語 用です。
より新しいサービス パックを後でインストールすると、このセキュリティ更新プログラムは自動的にアンインストールされます。
詳細については、http://support.microsoft.com/kb/2645410 を参照してください。
Microsoft Visual Studio 2010 Professional - 日本語 Service Pack 1 (KB983509) KB983509
このサービス パックは Microsoft Visual Studio 2010 Professional - 日本語 用です。
より新しいサービス パックを後でインストールすると、このサービス パックは自動的にアンインストールされます。
詳細については、http://support.microsoft.com/kb/983509 を参照してください。
Microsoft Visual Studio 2010 SharePoint Developer Tools 10.0.40219
Microsoft Visual Studio 2010 SharePoint Developer Tools
ViEmu (Symnum Systems S.L.U.) 3.0.8
ViEmu: Vi/vim emulation for Microsoft Visual Studio. (c) 2005-2012 Symnum Systems S.L.U. Please visit http://www.viemu.com for details.
VSStreamliner 1.0
Visual Studio Streamliner aims to streamline your usage of Visual Studio, removing unnecessary burdens that limit your productivity.
ClangVSx
Compiler bridge for Clang in Visual Studio
By Harry Denholm, 2012
http://www.ishani.org/
http://clang.llvm.org/
*/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment