I wish they would dedicate more time to improving cl.exe and link.exe in terms of performance and language support and less time with these hokey team visualization gimics. Every release since 2008 has been getting slower and slower for C++, the C compiler is awful, PGO instrumentation in Win8 is less capable, and there's no equivalents in the Windows ecosystem to gcc's likely/unlikely, oprofile, or valgrind. It's at…
My assessment: Gimmicks: - Popout explorer windows (So you can get the old style Pending Changes window, if you like) - Make comments and discussions on code through web UI - New release management plugin - “Team rooms” allow your team to collaborate on code "I'm OK with this" improvements: - “Indicators” in code that give you info about blocks of code - Cloud load testing - More agile portfolio management options -…
Visual Studio 2013
141–150 of 201 posts
Re: Visual Studio 2013
#142Earlier quoted context omitted.
Mozilla has been fighting the MSVC linker's 3GB virtual address space limit for years. Mozilla has asked Microsoft for a 64-bit linker that can produce 32-bit code, but Microsoft apparently has no plans for such a configuration. https://groups.google.com/forum/?fromgroups#!topic/mozilla.d...
I am a bit confused. That thread seems to claim that Microsoft isn't producing a 64 bit linker, my install seems to disagree with them (vc\bin\amd64). Then you claim that the linker won't produce 32 bit code, but /machine:x86 seems to disagree with that. I tested this by building as 32 bit, then just repeating the link using the 64 bit linker and /machine:x86, worked fine. So what are their problems exactly? That the…
[0] http://msdn.microsoft.com/en-us/library/0zza0de8%28v=vs.100%...
(Mozilla is building with 2010 now.)
Re: Visual Studio 2013
#143Earlier quoted context omitted.
>But you're right, that clearly the "devs" have preferences. The problem with your mechanism is that they don't express them to you in customer service requests. They just job-hop to another environment, doing Javascript work, or Linux, or Ruby. And you never hear from them. >Basically, the way feedback works in this world is with feet, not bug reports. If you build it they will come. If you don't they will leave. Is…
Well, just to address the first point there is undeniably an "exodus" from Visual Studio. Just look at all the code shipped to run in browsers, or iOS, or Android, or on node or rails. A decade and a half ago a far (far!) greater fraction of that was spend in a Microsoft IDE. But that's really not the point. The upstream discussion was much narrower, and focused specifically on C/C++ support, which frankly sucks in t…
Re: Visual Studio 2013
#144Earlier quoted context omitted.
I am a bit confused. That thread seems to claim that Microsoft isn't producing a 64 bit linker, my install seems to disagree with them (vc\bin\amd64). Then you claim that the linker won't produce 32 bit code, but /machine:x86 seems to disagree with that. I tested this by building as 32 bit, then just repeating the link using the 64 bit linker and /machine:x86, worked fine. So what are their problems exactly? That the…
The problem is link time code generation. With link time optimization[0], which is a prerequisite for profile guided optimization, cl just compiles the source into some intermediate representation. Actual code generation is all done in link.exe at the final link. And /machine:x86 doesn't work with link.exe when using -GL. The x64 link.exe is not capable of generating x86 binaries with LTO. [0] http://msdn.microsoft.c…
Also note that the problem still exists in VS2012, and in fact is even worse because the linker memory usage has gotten higher in general. Fortunately we now have a fairly good workaround (developed with help from Microsoft -- maybe some of the people in this thread?) that limits which files participate in PGO:
Re: Visual Studio 2013
#145I wish they would dedicate more time to improving cl.exe and link.exe in terms of performance and language support and less time with these hokey team visualization gimics. Every release since 2008 has been getting slower and slower for C++, the C compiler is awful, PGO instrumentation in Win8 is less capable, and there's no equivalents in the Windows ecosystem to gcc's likely/unlikely, oprofile, or valgrind. It's at…
C is officially deprecated. Personally I would like to see proper C++11 support instead of playing around with C++/CX and while they are at it, either provide a native compiler for .NET or improve NGEN's optimizer for C++ performance level. Given that Microsoft had .NET native compilers for Singularity and Windows Phone 8 .NET apps are compiled to native code, it isn't as if they don't have the tooling already availa…
https://twitter.com/fearthecowboy/status/288721251374071808
Notice I also ranted about VS2012, Win8 SDK, Metro Firefox, and XP.
Re: Visual Studio 2013
#146Earlier quoted context omitted.
What I want to know is how someone can see that their software project has become unlinkable on a 32-bit OS and somehow think that this is purely a compiler problem.
Keep in mind that this is the group that thinks de-prioritizing 64-bit windows builds is a-okay while at the same time they need 64-bit windows machines running 32-bit linkers to build their 32-bit windows binaries. ...phew, what a mouthfull. Mozilla has never struck me as the most... forward looking.
* Edit: oops, I corrected a typo where I wrote "32-bit build".
Re: Visual Studio 2013
#147Earlier quoted context omitted.
Keep in mind that this is the group that thinks de-prioritizing 64-bit windows builds is a-okay while at the same time they need 64-bit windows machines running 32-bit linkers to build their 32-bit windows binaries. ...phew, what a mouthfull. Mozilla has never struck me as the most... forward looking.
btw, Google Chrome doesn't have a 64-bit version* for Windows. The Chrome team also disabled PGO on Windows because of the same MSVC linker limitations that Mozilla hit. * Edit: oops, I corrected a typo where I wrote "32-bit build".
Re: Visual Studio 2013
#148Earlier quoted context omitted.
What I want to know is how someone can see that their software project has become unlinkable on a 32-bit OS and somehow think that this is purely a compiler problem.
I'm actually about to sit down and write a blog post about VS compiler memory issues, and I had a long talk with the Firefox guys a few weeks ago about this issue. It's not all their fault.
Re: Visual Studio 2013
#149Earlier quoted context omitted.
You mean it only produces 32 bit code? This disagrees ( http://msdn.microsoft.com/en-US/library/x4d2c09s(v=vs.80).as... ) going back to at least 2005. The following list describes the various versions of cl.exe (the Visual C++ compiler): ... x64 on x86 (x64 cross-compiler) Allows you to create output files for x64. This version of cl.exe runs as a 32-bit process, native on an x86 machine and under WOW64 on a 64-bit W…
I am talking about the cl.exe executable that output x86-32 code itself, not the code it produces. You can use a 32-bit cl.exe to cross compile 64-bit code, but not the other way round.
Re: Visual Studio 2013
#150Earlier quoted context omitted.
I am a bit confused. That thread seems to claim that Microsoft isn't producing a 64 bit linker, my install seems to disagree with them (vc\bin\amd64). Then you claim that the linker won't produce 32 bit code, but /machine:x86 seems to disagree with that. I tested this by building as 32 bit, then just repeating the link using the 64 bit linker and /machine:x86, worked fine. So what are their problems exactly? That the…
The problem is link time code generation. With link time optimization[0], which is a prerequisite for profile guided optimization, cl just compiles the source into some intermediate representation. Actual code generation is all done in link.exe at the final link. And /machine:x86 doesn't work with link.exe when using -GL. The x64 link.exe is not capable of generating x86 binaries with LTO. [0] http://msdn.microsoft.c…