[LLVMdev] RFC: TileGX, a new backend for Tilera's many core processor
Dmitri Gribenko
gribozavr at gmail.com
Fri Mar 1 12:50:30 PST 2013
On Fri, Mar 1, 2013 at 4:52 PM, Jiong Wang <jiwang at tilera.com> wrote:
> On 03/01/2013 10:42 PM, Hal Finkel wrote:
>>
>>
>> As some of the llvm modules are in active development, for example MC
>> Layer, we want to return code to community repository first, so that
>> it will be easy to keep pace with llvm main tree.
>> I think this makes sense; but my impression is that the community will
>> want a clear idea that this will be maintained and improved for the
>> foreseeable future.
>
> Hi Hal,
>
> sure, tilegx will be actively maintained & improved.
>
>>>
>>>
>>> 2. There are no regression tests -- using the test-suite is obviously
>>> useful, but targeted regression tests are essential. yes, regression
>>> tests will be added later.
>>
>> I don't speak for everybody, but I'm pretty sure that you won't get an
>> okay to commit this upstream without regression tests. We need a good degree
>> of coverage in test/CodeGen/Tile (you can probably look at one of the other
>> more-recent targets, like AArch64, to get an idea of what is required).
>
> thanks for pointting this out, I will add regression tests, then
> re-send the patch.
> before this, please feel free to give comments and suggestions on the
> existed patches.
You also need tests for Clang bits, too.
Mechanical issues:
+/// getTileRegisterNumbering - Given the enum value for some register,
+/// return the number that it corresponds to.
Please don't duplicate function and class name in comments. Existing
code does this, but current style guidelines advise not to.
http://llvm.org/docs/CodingStandards.html#doxygen-use-in-documentation-comments
+ BuildMI(MBB, I, I->getDebugLoc(), TII->get(Tile::ADD)
+ ,I->getOperand(0).getReg())
+ .addReg(Tile::ZERO)
+ .addReg(src_sp);
+unsigned TileInstrInfo::
+isLoadFromStackSlot(const MachineInstr *MI, int &FrameIndex) const
You have some weird formatting here and there. You could try
clang-format to pretty-print your code automatically.
The patch is also missing documentation bits. At the very least, a
paragraph for ReleaseNotes.
+ // save lr to caller's stack reserve slot 0
Comments should start with a capital letter and end with a full stop.
Dmitri
--
main(i,j){for(i=2;;i++){for(j=2;j<i;j++){if(!(i%j)){j=0;break;}}if
(j){printf("%d\n",i);}}} /*Dmitri Gribenko <gribozavr at gmail.com>*/
More information about the llvm-dev
mailing list