robert muth
2009-Jun-07 13:59 UTC
[LLVMdev] patch for llc/ARM: added mechanism to move switch tables from .text -> .data; also cleanup and documentation
On Sat, Jun 6, 2009 at 4:51 PM, Evan Cheng<evan.cheng at apple.com> wrote:> +cl::opt<std::string> FlagJumpTableSection("jumptable-section", > + cl::init(".data.jtab")); > +I thought it would be nice to group all the jumptables together. But as long as it stays configurable, I am fine to change the default to ".data".> Is this necessary? Why not just put it in the normal data section? > Also "outline" jumptable seems like a strange term. Can you think of > something else?Yes, that is a tough one. How about "NonInline" instead. Robert> Thanks, > Evan > > Sent from my iPhone > On Jun 2, 2009, at 6:26 PM, robert muth <robert at muth.org> wrote: > > Hi: > > This is my first patch submission. Hopefully, this is the proper the > protocol. > Attached is a patch for the llc ARM backend: > > Added mechanism to generate switch table in a data section > rather than having it interleaved with the code. > This is controlled by command line flags and off by default. > Also, tried to document and improve the code where I modified it. > > Robert > > <llc.patch.txt> > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >
Evan Cheng
2009-Jun-08 03:53 UTC
[LLVMdev] patch for llc/ARM: added mechanism to move switch tables from .text -> .data; also cleanup and documentation
On Jun 7, 2009, at 6:59 AM, robert muth wrote:> On Sat, Jun 6, 2009 at 4:51 PM, Evan Cheng<evan.cheng at apple.com> > wrote: >> +cl::opt<std::string> FlagJumpTableSection("jumptable-section", >> + cl::init(".data.jtab")); >> + > > I thought it would be nice to group all the jumptables together. > But as long as it stays configurable, I am fine to change the default > to ".data".There is already a TargetAsmInfo::JumpTableDataSection. Why not just use that?> >> Is this necessary? Why not just put it in the normal data section? >> Also "outline" jumptable seems like a strange term. Can you think of >> something else? > > > Yes, that is a tough one. How about "NonInline" instead.Or "OutOfLine"? Please add a test case as well. Thanks, Evan> > Robert > >> Thanks, >> Evan >> >> Sent from my iPhone >> On Jun 2, 2009, at 6:26 PM, robert muth <robert at muth.org> wrote: >> >> Hi: >> >> This is my first patch submission. Hopefully, this is the proper the >> protocol. >> Attached is a patch for the llc ARM backend: >> >> Added mechanism to generate switch table in a data section >> rather than having it interleaved with the code. >> This is controlled by command line flags and off by default. >> Also, tried to document and improve the code where I modified it. >> >> Robert >> >> <llc.patch.txt> >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> >> > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
robert muth
2009-Jun-08 21:42 UTC
[LLVMdev] patch for llc/ARM: added mechanism to move switch tables from .text -> .data; also cleanup and documentation
On Sun, Jun 7, 2009 at 11:53 PM, Evan Cheng <evan.cheng at apple.com> wrote:> > On Jun 7, 2009, at 6:59 AM, robert muth wrote: > >> On Sat, Jun 6, 2009 at 4:51 PM, Evan Cheng<evan.cheng at apple.com> >> wrote: >>> +cl::opt<std::string> FlagJumpTableSection("jumptable-section", >>> + cl::init(".data.jtab")); >>> + >> >> I thought it would be nice to group all the jumptables together. >> But as long as it stays configurable, I am fine to change the default >> to ".data". > > There is already a TargetAsmInfo::JumpTableDataSection. Why not just > use that?Nice find. I will use that and possible change the current setting, ".const", if it does not work,>> >>> Is this necessary? Why not just put it in the normal data section? >>> Also "outline" jumptable seems like a strange term. Can you think of >>> something else? >> >> >> Yes, that is a tough one. How about "NonInline" instead. > > Or "OutOfLine"?That works for me.> Please add a test case as well. Thanks,I am not sure how to go about testing. I have a script that compiles a bunch of test programs (gnu c torture test, etc.) and then runs the executables on qemu. I run this script with and without my flags and make sure that I do not introduce any new problems -- there are currently plenty of vararg issues. I was thinking of sending this script to the list or maybe checking it into the llvm tree. The key is that whatever tests there are they should just be run with and without the new flag. How do you run backend tests? Robert> Evan > >> >> Robert >> >>> Thanks, >>> Evan >>> >>> Sent from my iPhone >>> On Jun 2, 2009, at 6:26 PM, robert muth <robert at muth.org> wrote: >>> >>> Hi: >>> >>> This is my first patch submission. Hopefully, this is the proper the >>> protocol. >>> Attached is a patch for the llc ARM backend: >>> >>> Added mechanism to generate switch table in a data section >>> rather than having it interleaved with the code. >>> This is controlled by command line flags and off by default. >>> Also, tried to document and improve the code where I modified it. >>> >>> Robert >>> >>> <llc.patch.txt> >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >>> >>> >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >
Maybe Matching Threads
- [LLVMdev] patch for llc/ARM: added mechanism to move switch tables from .text -> .data; also cleanup and documentation
- [LLVMdev] patch for llc/ARM: added mechanism to move switch tables from .text -> .data; also cleanup and documentation
- [LLVMdev] patch for llc/ARM: added mechanism to move switch tables from .text -> .data; also cleanup and documentation
- [LLVMdev] ARM backend playing with alternative jump table implementations
- [LLVMdev] patch for llc/ARM: added mechanism to move switch tables from .text -> .data; also cleanup and documentation