> On Jan 4, 2016, at 9:17 AM, Todd Fiala <tfi...@apple.com> wrote:
> 
> I added some more comments to the pull request that I Think is related to 
> this thread here:
> https://github.com/apple/swift-lldb/pull/3 
> <https://github.com/apple/swift-lldb/pull/3>
> 
> The archspec changes really need to happen in llvm.org <http://llvm.org/> 
> lldb svn trunk and need to be put up for patch review there (along with any 
> discussion particular to that).  The rest of the change (for 32-bit support 
> specific to Swift LLDB) looked fine. If we get that separated out again, I’ll 
> be happy to get that in.
> 

That sounds good.

To summarize how changes in these three projects link together:

there is some code in swift that tries to canonicalize armv6l and armv7l into 
just ‘armv6’ and ‘armv7’ respectively.  This was suggested by Dmitri and Tim.  
However, armv6l isn’t represented in llvm, and I’m working on bringing my patch 
there up to standards.  However, this canonicalization only applies to 
compilation, not the REPL.  Joe Bell figured out that LLDB was being passed 
armv6l and armv7l and it didn’t know what to do with them.  He fixed that by 
adding them to lldb.  The correct approach seems to be performing the same 
transformation for the REPL as for compilation, and therefore the other 
proposed changes to LLDB are inappropriate.  I’ll back those out as Todd 
suggested.

I want to do these operations in such a way that Joe always has a set of repos 
that will build functioning binaries for ARM because he’s been great at 
releasing updates as other parts of swift for linux mature.  To that end, I’ll 
figure out the changes necessary to swift’s invocation of LLDB and submit a PR 
for that.  Then, I’ll back-out the changes to LLDB.  The changes to LLVM can 
happen any time.

Apologies for any incoherencies, I’ve got a cold at the moment. :)

- Will

>> On Jan 4, 2016, at 9:00 AM, Dmitri Gribenko via swift-lldb-dev 
>> <swift-lldb-...@swift.org <mailto:swift-lldb-...@swift.org>> wrote:
>> 
>> On Mon, Jan 4, 2016 at 6:50 PM, Todd Fiala via swift-lldb-dev 
>> <swift-lldb-...@swift.org <mailto:swift-lldb-...@swift.org>> wrote:
>> 
>>> On Dec 28, 2015, at 10:39 AM, William Dillon via swift-lldb-dev 
>>> <swift-lldb-...@swift.org <mailto:swift-lldb-...@swift.org>> wrote:
>>> 
>>> Hi Todd,
>>> 
>>> Yes, I think that LLDB is more or less working with Swift on ARM.  We can 
>>> start the REPL and do some tasks with it, though it isn’t all that reliable 
>>> yet.
>> 
>> I’d love to hear about the reliability piece if you have more details there!
>> 
>>>  There are two files in the swift-lldb PR that I merged in from Joe Bell 
>>> that fixed the REPL.  I think, however, than they would need to go to the 
>>> lldb.llvm.org <http://lldb.llvm.org/> repo, rather than the swift one.
>> 
>> I think I’ve seen the llvm.org <http://llvm.org/> side of that patch.  
>> Somebody else and I had a question about some static casts in there, but 
>> we’ll catch up on that side if it is the same patch I’m thinking about.
>> 
>>>  There is a question about that, though.  Joe added armv7l into the 
>>> ArchSpec table, but I don’t think that armv7l is a real subtype.  I’ve been 
>>> very confused by the ARM nomenclature on linux (I don’t think I’m alone 
>>> here), and I think that armv7l means armv7 little endian.  So, should these 
>>> get converted to armv7 somewhere else and revert the changes to the 
>>> ArchSpec table?
>> 
>> This is a great question that I am not the right resource to answer.  Greg 
>> or Jason, any thoughts here on question of arm subtypes?  (My first take is 
>> that I’d expect each subtype to represent a different set of features and 
>> instructions available, and not be used solely for an endianness 
>> designation, but that’s not an area I do much work in).
>>  
>> We have discussed this before with Tim Northover, and he suggested that we 
>> canonicalize armv7l to armv7 when parsing the triple from the command line.
>> 
>> 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 <griboz...@gmail.com 
>> <mailto:griboz...@gmail.com>>*/
>>  _______________________________________________
>> swift-lldb-dev mailing list
>> swift-lldb-...@swift.org <mailto:swift-lldb-...@swift.org>
>> https://lists.swift.org/mailman/listinfo/swift-lldb-dev 
>> <https://lists.swift.org/mailman/listinfo/swift-lldb-dev>

_______________________________________________
swift-dev mailing list
swift-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-dev

Reply via email to