What do c2 Phases do?

On the Forums, someone asked the good question of “What do the C2 phases actually do?”  Andy got some info from our documentation team about the phases, so I thought I’d also add them here.  Expect this info in future version of the SDK:   Phase Phase Action CxxIL Reader Converts CxxIL to Phoenix IR….

0

Finding the Base Class of a Function with Phoenix

This came up on an internal alias today, so I thought I would post the solution.  The issue is when there is some code like the following:     class BaseClass     {     }       class InheritedClass : BaseClass     {         void SomeFunction() { }     } And you have a pointer to…

3

volatile, acquire/release, memory fences, and VC2005

One of the more common questions I get about VC2005 code generation relates to the code generation of volatile on x86/x64.  If we take a look at MSDN we see that it defines the semantics for volatile in VC2005 as :   o    A write to a volatile object (volatile write) has Release semantics; a…

8

PLDI Phoenix Tutorial Sold Out!

For those of you who were interested in attending the PLDI tutorial on Phoenix, I hope you have signed up already.  We actually sold out during the pre-registration timeframe!  We think it will be a fun tutorial, with a strong focus on writing code.  If you didn’t sign-up, hopefully we’ll have some more events in…

0

Native code raise to MIR?

I’ve heard several questions lately about Phoenix’s ability to raise native code to MIR (Phx.FunctionUnit.SymbolicFunctionUnitState).  Today Phoenix does not support raising native code to MIR.  We do plan to support raising beyond LIR in the future for native code, but at this moment in time it is just LIR.  Note that we can raise managed…

0

Phoenix Tutorial Updates…

OK, first of all I’d like to start out by saying that it sounds like the CGO tutorial was a success.  I wasn’t there, but I’ve heard second hand that people really liked it.  We have some of the material from the tutorial available for download now at: https://connect.microsoft.com/Phoenix/Downloads/DownloadDetails.aspx?DownloadID=5742 (you’ll need a Live ID). The next…

1

Phoenix News!

There’s been quite a bit going on with Phoenix lately.  Probably the biggest thing is that a new RDK has been released.  Go to the Phoenix Connect site and you can download it; https://connect.microsoft.com/site/sitehome.aspx?SiteID=214 From the description on the webpage: “Phoenix RDK March 2007 features improved API naming, more optimizations, volatile supports for acquire/release semantics,…

5

A couple of new things in the Phoenix RDK

We are getting ready to have a new Phoenix RDK in time for CGO 2007 and expect to see quite a few new things in it.  Probably the two most visible things is that we are enabling a lot more optimizations in c2 and the API will look very different.  For the optimizations, the Phoenix…

0

Run VS2005 as Administrator on Vista when debugging

I recently was doing some ASP.NET 2.0 work (sometimes it’s good to mix up what you work on, ya know) and I had a problem where I could not debug my ASP.NET application on Vista.  It was weird because the debugger would start, but then would exit immediately.  The webpage would come up just fine,…

8

Phoenix at CGO 2007

The Phoenix team will be doing a hands-on tutorial at CGO 2007, led by Andy Ayers, one of the architects on the team.  I think the tutorial should be quite interesting.  Not your typical tutorial.  For more info, go to this link:  http://www.cgo.org/cgo2007/html/tutorials.html#Practical:Phoenix  BTW, if you have specific topics you’d like covered in a tutorial on…

3