hi guys... icc can compile dolphin perfectly with some patches. i just had r7454 compiled with x86 ssse3. i also patched to some cpp so icc can compile the videodx11 project.
here are the stuffs you need to change:
compile the dolphin with icc extra switches: [color=#FF0000]/Qstd=c++0x /D "nullptr=0"[/color] (with all projects run with these 2 switches.)
=> [color=#DAA520]wiimote is fixed.[/color]
=> [color=#DAA520]dx11 is also fixed.[/color]
have fun.
here you are
the [color=#FF1493]7454 x86 ssse3 build[/color] => http://www.mediafire.com/?18aiv5kbaq86bm9 (not included the texcache-rewrite at r7452-r7454)
okay, lectrode. i leave the rest for you. i am going to hibernate again. pm me, if you have trouble in codes and compilation. thanks
enjoy, guys
please don beg me for compilation
thank you. i already quited to compile long long time ago
lectrode will do the rest of the works.
i also attach the patch incase you guys lazy
in some games i tested, let say [wii] harvest moon - tree of tranquility. text couldn't show a full sentence in the chatbox until a button is pressed (only in normal/fast mode, this also happened before the entire dolphin solution upgraded to vs2010). the behaviour was affected by [color=#0000CD]nullptr[/color]. there is no [color=#0000CD]nullptr_t[/color] understood by icc (c++0x standard). therefore, it must declares nullptr as 0. there're a lot developers simulated the nullptr in gcc, icc... however they never succeeded :/ these simulations [color=#C71585]may not[/color] intimate nullptr_t exactly as in vc++ until icc recognizes nullptr_t. we shall wait for the next version of icc if they really want to implement nullptr_t. this implementation will still depend to the demands from intel c++ developers.
like i just tested on:
well... if you intent to optimize intel cpu instruction sets by intel c++ compiler, you may give up certain features implemented in visual studio c++ compiler. but i don't think it has any big issue currently except the one i mentioned above... [color=#9400D3]nullptr = 0[/color] is quite perfect temporary solution in the moment.
here are the stuffs you need to change:
Quote:videodx11 project - d3dtexture.cpp - line 69 until 71 =>
[color=#0000CD] PanicAlert("Failed to create texture at %s, line %d\n", __FILE__, __LINE__);
std::unique_ptr<D3DTexture2D>::reset;
return;[/color]
Quote:videodx11 project - framebuffermanager.cpp - line 151 until 152 =>
[color=#0000CD] m_efb.resolved_color_tex.reset(NULL);
m_efb.resolved_depth_tex.reset(NULL);[/color]
Quote:videodx11 project - d3dutil.cpp - line 55 until 56 =>
[color=#0000CD] for (auto obs=observers.begin(); obs != observers.end(); ++obs)
**obs = true;[/color]
compile the dolphin with icc extra switches: [color=#FF0000]/Qstd=c++0x /D "nullptr=0"[/color] (with all projects run with these 2 switches.)
=> [color=#DAA520]wiimote is fixed.[/color]
=> [color=#DAA520]dx11 is also fixed.[/color]
have fun.
here you are

okay, lectrode. i leave the rest for you. i am going to hibernate again. pm me, if you have trouble in codes and compilation. thanks
enjoy, guys

please don beg me for compilation


i also attach the patch incase you guys lazy

in some games i tested, let say [wii] harvest moon - tree of tranquility. text couldn't show a full sentence in the chatbox until a button is pressed (only in normal/fast mode, this also happened before the entire dolphin solution upgraded to vs2010). the behaviour was affected by [color=#0000CD]nullptr[/color]. there is no [color=#0000CD]nullptr_t[/color] understood by icc (c++0x standard). therefore, it must declares nullptr as 0. there're a lot developers simulated the nullptr in gcc, icc... however they never succeeded :/ these simulations [color=#C71585]may not[/color] intimate nullptr_t exactly as in vc++ until icc recognizes nullptr_t. we shall wait for the next version of icc if they really want to implement nullptr_t. this implementation will still depend to the demands from intel c++ developers.
like i just tested on:
Quote:const class nullptr_t {
public:
template<class T>
operator T*() const { return 0; }
template<class T, class U>
operator T U::*() const { return 0; }
private:
void* p;
void operator&() {}
} nullptr = nullptr_t();
well... if you intent to optimize intel cpu instruction sets by intel c++ compiler, you may give up certain features implemented in visual studio c++ compiler. but i don't think it has any big issue currently except the one i mentioned above... [color=#9400D3]nullptr = 0[/color] is quite perfect temporary solution in the moment.