You can look for the "superdevmode" property value out of the LinkerContext.
The tricks you mention are for client-side code, at runtime; not at
compile-time.
As for GWT.create(), have a look at ServerGWTBridge to see how that could be
used outside of GWT client code. Though I'd discourage that
Inside the linker code, I can only use com.google.gwt.core.shared.GWT, so I
can't call APIs such as GWT.getModuleBaseForStaticFiles() or
GWT.getModuleBaseURL() (which people have used to detect SDM) and while
GWT.create() is doc'd in com.google.gwt.core.shared.GWT, it doesn't work
and throws a