[llvm-commits] patch for printing machine instrs after a specified pass
Bin Zeng
bzeng at apple.com
Tue May 29 11:29:16 PDT 2012
Thank you all very much for the helpful comments and suggestions!
This is a new version with all of your comments incorporated.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.print-machineinstrs-0.9
Type: application/octet-stream
Size: 7947 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120529/e467eff0/attachment.obj>
-------------- next part --------------
On May 29, 2012, at 10:46 AM, Bin Zeng wrote:
>
> On May 29, 2012, at 9:32 AM, Chad Rosier wrote:
>
>> Bin,
>> For this test case:
>> +; RUN: llc < %s -O3 -print-machineinstrs=branch-folder -o /dev/null |& FileCheck %s
>>
>> What is the associated CHECK for this test? I think you could add a more complex check to ensure the machine instrs is being printed directly after the branch folder pass. It probably involves using the -debug-pass=Structure option.
>>
>
> That is much better. I added a couple more checks to make sure that machine instrs are printed after the specified pass such as branch-folder. For the case when machine instrs are printed after all the passes, it seems not easy to check that.
>
>> +static cl::opt<std::string>
>> +PrintMachineInstrs("print-machineinstrs",
>> + cl::ValueOptional,
>> + cl::desc("Print machine instrs"),
>> + cl::value_desc("pass-name"),
>> + cl::init("option-unspecified"));
>>
>> Please maximize the horizontal space by only starting a new line when necessary (i.e., to prevent an 80-column violation).
>>
>
> Thanks. The indentation has been changed.
>
>> + else if (!StringRef(PrintMachineInstrs.getValue()).equals("option-unspecified")){
>>
>> 80-column violation. There should also be a space between the right most parentheses and the left brace.
>>
>> Chad
>>
>
> Thanks! Good eyes! A space has been added between ) and { and added a line to the .emacs file so that it highlights the lines with
> 80-column violation in case I missed them.
>
>>
>> On May 25, 2012, at 5:51 PM, Bin Zeng wrote:
>>
>>> Hi all,
>>>
>>> My name is Bin Zeng and an intern working on a project to serialize MachineInstrs
>>> in the backend. This patch adds a insertPass API to insert a pass before each instance
>>> of another pass and enhances the existing -print-machineinstrs so that the MachineInstrs
>>> after a specific pass can be printed. For instance, to print the MachineInstrs after branch-folder
>>> pass, you can do: $llc -O3 -print-machineinstrs=branch-folder filename.bc -o filename.s
>>> Also, the command line option is back compatible. You can dump MachineInstrs after all
>>> the passes.
>>>
>>> <patch-0.8>
>>>
>>> Thanks for reading.
>>> -Bin
>>
>
More information about the llvm-commits
mailing list