Visual Studio 2008 released, TR1 support coming
Anyone following Visual Studio 2008 will know that although it offers a plethora of new features for the managed world, there was little focus on the unmanaged side of things. Now that it is finally out the door, I guess it’s a good time to look at what few new features are there for us unmanaged C++ coders.
- Improved standards conformance with support for friend templates, an uncommon but powerful C++ feature.
- Intrinsic support for SSSE3, SSE4.x, and SSE4a. These are modern vector instructions (SSE4a literally just came out with AMD’s Phenom processors!) that anyone interested in writing high‐performance code will want to be familiar with.
- Intrinsic support for the CMPXCHG16B instruction. This instruction is essential when writing many lock-free algorithms for the x64 platform. I’ve been lobbying to have it added for a long time, so I’m especially happy to finally see it. Unfortunately, the generated code in Beta 2 was very sub‐optimal (considering the instruction is typically used in very tight loops) so I may end up using assembly anyway! I’m anxious to see if it is improved in RTM.
- Improved optimizer, with support for inlining transcendental functions and scheduling for the latest CPUs.
- Linker options updated for Vista – ability to specify UAC and address space randomization properties. For some reason, still no support for DPI independence so we’ll end up writing manifests anyway.
- We can finally use those quad‐core CPUs that are coming out to reduce our compile times with Multi‐threaded compiling.
Not much, huh? That’s because Microsoft was running under the assumption that people would flock to C# and only use unmanaged C++ to maintain "legacy" code. Perhaps the best news so far, they’ve finally realized their mistake. Although they didn’t have time to put things into VC++ 2008, they have re‐committed to unmanaged code for the next version and in the meantime made a small separate announcement that they will be bringing VC++ 2008 users a mostly complete TR1 implementation update in early January.
Related Posts
- Visual C++ 2008 Feature Pack is now available on April 07, 2008 in C++, Coding, MFC, Microsoft, TR1, Visual Studio, Visual Studio 2008
- Digging into TR1 on March 01, 2008 in C++, Coding, Microsoft, TR1
- Visual Studio 2010 CTP now available on October 28, 2008 in C++, Coding, Microsoft, Visual Studio
- Visual C++ 2008 Feature Pack beta on January 08, 2008 in C++, Coding, MFC, TR1, Visual Studio, Visual Studio 2008
- Visual Studio incompatibilities on September 10, 2008 in Coding, Microsoft, Visual Studio