WebKit today does not compile with RVCT. Various patches has been landed in the past to make steps toward a successful RVCT (ARM C) compilation. This is proposal for another step to the right direction. RVCT has a compiler option (called --gnu) which turns on "GNU compatibility". The --gnu option makes RVCT behave more like (but not exactly as) GCC, and it compiles most (but not all) of the WebKit code without changes. However the RVCT --gnu option also defines __GNUC__, which makes COMPILER(GCC) defined as well (in addition to COMPILER(RVCT). This makes two compiler defined at the same time, which is confusing and also makes it harder to flag those few code blocks in WebKit that does not compile with GNU mode RVCT. The proposal is not to define COMPILER(GCC) if WebKit is compiled with RVCT --gnu option. In addition, we should use COMPILER(GCC) consistently across WebKit to mark GCC specific code (instead of using defined __GNUC__). Patch will follow.. Laszlo.
Created attachment 27093 [details] Patch to support GNU mode RVCT compilation Patch to support GNU mode RVCT compilation
Checking both COMPILER(GCC) and defined(__GNUC__) seem redundant.
Created attachment 27103 [details] Revised patch based on feedback
Created attachment 27179 [details] Revised patch to make it more future proof and readable Moved the COMPILER(RVCT) rules in from of the COMPILER(GCC) definition, so that when COMPILER(GCC) is defined, we can just check for !COMPILER(RVCT). Extra comment added to make the code more readable !
Comment on attachment 27179 [details] Revised patch to make it more future proof and readable Looks good to me. When landing I'll add a note to the ChangeLog, but otherwise it's ready to go.
Landed in r40404