search for: fsr0h

Displaying 13 results from an estimated 13 matches for "fsr0h".

Did you mean: fsr0l
2008 Oct 15
3
[LLVMdev] INSERT_SUBREG node.
...parts using INSERT_SUBREG. The workaround is to declare the same SubRegClass twice while declaring the SuperRegisterClass. i.e. def FSR16: RegisterClass <"PIC16", [i16], 8, [FSR0, FSR1]> { let SubRegClassList = [FSR8, FSR8]; // HERE. } SubRegSet : <1, [FSR0, FSR1], [FSR0L, FSR0H]>; SubRegSet : <2, [FSR0, FSR1], [FSR0H, FSR0L]>; I think the fundamental problem we have there is that we are using SubIdx for both purposes: 1. to enumerate over subregister classses, 2. To enumerate subregs of the same type of a super reg. - Sanjiv. > > > > > > &...
2008 Oct 13
2
[LLVMdev] INSERT_SUBREG node.
...air of i8 v1, v2 to create a i16 v3. The > way to do it is: > > > v4 = insert_subreg implicit_def, v1, 0 > v3 = insert_subreg v4, v2, 1 > > > Evan > This is how my register classes look like: def FSR0L : Register<"FSR0L">; def FSR0H : Register<"FSR0H">; def FSR1L : Register<"FSR1L">; def FSR1H : Register<"FSR1H">; def FSR0 : RegisterWithSubRegs<"FSR0", [FSR0H, FSR0L]>; def FSR1 : RegisterWithSubRegs<"FSR1", [FSR1H, FSR1L]>; def FSR8RC...
2008 Oct 15
2
[LLVMdev] INSERT_SUBREG node.
...insert_subreg implicit_def, v1, 0 > >> v3 = insert_subreg v4, v2, 1 > >> > >> > >> Evan > >> > > > > This is how my register classes look like: > > > > def FSR0L : Register<"FSR0L">; > > def FSR0H : Register<"FSR0H">; > > def FSR1L : Register<"FSR1L">; > > def FSR1H : Register<"FSR1H">; > > > > def FSR0 : RegisterWithSubRegs<"FSR0", [FSR0H, FSR0L]>; > > def FSR1 : RegisterWithSubRegs<"FS...
2008 Oct 15
0
[LLVMdev] INSERT_SUBREG node.
...v1, 0 >>>> v3 = insert_subreg v4, v2, 1 >>>> >>>> >>>> Evan >>>> >>> >>> This is how my register classes look like: >>> >>> def FSR0L : Register<"FSR0L">; >>> def FSR0H : Register<"FSR0H">; >>> def FSR1L : Register<"FSR1L">; >>> def FSR1H : Register<"FSR1H">; >>> >>> def FSR0 : RegisterWithSubRegs<"FSR0", [FSR0H, FSR0L]>; >>> def FSR1 : RegisterWithSubRegs&...
2008 Oct 14
0
[LLVMdev] INSERT_SUBREG node.
...way to do it is: >> >> >> v4 = insert_subreg implicit_def, v1, 0 >> v3 = insert_subreg v4, v2, 1 >> >> >> Evan >> > > This is how my register classes look like: > > def FSR0L : Register<"FSR0L">; > def FSR0H : Register<"FSR0H">; > def FSR1L : Register<"FSR1L">; > def FSR1H : Register<"FSR1H">; > > def FSR0 : RegisterWithSubRegs<"FSR0", [FSR0H, FSR0L]>; > def FSR1 : RegisterWithSubRegs<"FSR1", [FSR1H, FSR1L]&...
2008 Oct 16
0
[LLVMdev] INSERT_SUBREG node.
...t; { > let SubRegClassList = [FSR8, FSR8]; // HERE. > } This is a bug, probably in tablegen. Unfortunately I don't have the time to fix it. But please file a bug about this. Hopefully someone will fix it soon. Thanks, Evan > > > SubRegSet : <1, [FSR0, FSR1], [FSR0L, FSR0H]>; > SubRegSet : <2, [FSR0, FSR1], [FSR0H, FSR0L]>; > > > I think the fundamental problem we have there is that we are using > SubIdx for both purposes: 1. to enumerate over subregister > classses, 2. > To enumerate subregs of the same type of a super reg. > >...
2008 Oct 02
0
[LLVMdev] INSERT_SUBREG node.
On Oct 2, 2008, at 11:02 AM, Sanjiv.Gupta at microchip.com wrote: > What’s the value produced by an INSERT_SUBREG node? Is it a chain? No, insert_subreg returns a value: v1 = insert_subreg v2, v3, idx v1 and v2 will have the same type, e.g. i16, and v3 must have a sub- register type, e.g. i8. > Can I use to set a superreg of i16 type with two i8 values, and use > the supperreg as
2008 Oct 02
2
[LLVMdev] INSERT_SUBREG node.
What's the value produced by an INSERT_SUBREG node? Is it a chain? Can I use to set a superreg of i16 type with two i8 values, and use the supperreg as an operand somewhere else? - Sanjiv -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20081002/f07bc88c/attachment.html>
2008 Oct 20
2
[LLVMdev] INSERT_SUBREG node.
...t; > > Thanks, > > > > > > Evan > > > > > > > PR2916 filed. > > Though I did not quite understand why this could be a tablegen bug? > > > Based on your comments. :-) It should be possible to specify two FSR0 > sub-registers (FSR0L, FSR0H of the same register class FSR8) with the > workaround you described: > > > def FSR16: RegisterClass <"PIC16", [i16], 8, [FSR0, FSR1]> { > let SubRegClassList = [FSR8, FSR8]; // HERE. > } > It is currently possible. - Sanjiv > > Evan > > &g...
2008 Oct 20
0
[LLVMdev] INSERT_SUBREG node.
On Oct 20, 2008, at 7:10 AM, sanjiv gupta wrote: >>> >>> PR2916 filed. >>> Though I did not quite understand why this could be a tablegen bug? >> >> >> Based on your comments. :-) It should be possible to specify two FSR0 >> sub-registers (FSR0L, FSR0H of the same register class FSR8) with the >> workaround you described: >> >> >> def FSR16: RegisterClass <"PIC16", [i16], 8, [FSR0, FSR1]> { >> let SubRegClassList = [FSR8, FSR8]; // HERE. >> } >> > It is currently possible. I am confu...
2008 Oct 20
1
[LLVMdev] INSERT_SUBREG node.
...ta wrote: > > >>> > >>> PR2916 filed. > >>> Though I did not quite understand why this could be a tablegen bug? > >> > >> > >> Based on your comments. :-) It should be possible to specify two FSR0 > >> sub-registers (FSR0L, FSR0H of the same register class FSR8) with the > >> workaround you described: > >> > >> > >> def FSR16: RegisterClass <"PIC16", [i16], 8, [FSR0, FSR1]> { > >> let SubRegClassList = [FSR8, FSR8]; // HERE. > >> } > >> > &g...
2008 Oct 20
0
[LLVMdev] INSERT_SUBREG node.
...his. Hopefully someone >> will fix it soon. >> >> Thanks, >> >> Evan >> > > PR2916 filed. > Though I did not quite understand why this could be a tablegen bug? Based on your comments. :-) It should be possible to specify two FSR0 sub-registers (FSR0L, FSR0H of the same register class FSR8) with the workaround you described: def FSR16: RegisterClass <"PIC16", [i16], 8, [FSR0, FSR1]> { let SubRegClassList = [FSR8, FSR8]; // HERE. } Evan > > > - Sanjiv > > > _______________________________________________ > L...
2008 Oct 18
2
[LLVMdev] INSERT_SUBREG node.
On Thu, 2008-10-16 at 08:55 -0700, Evan Cheng wrote: > On Oct 15, 2008, at 11:21 AM, sanjiv gupta wrote: > > >>> > >> > >> Ok. The AX / AH super-reg and sub-reg relationship is not defined. In > >> general x86 is not making good use of the high 8-bit sub-registers. > >> We > >> are leaving some performance on the table. We'll