Complex rebasing

Doug Simon doug.simon at oracle.com
Fri Dec 9 16:19:10 UTC 2016


I’ve done the merge and created a (temporary) PR for it:

https://github.com/graalvm/graal-core/pull/240

You can follow the linked command line instructions in that PR to pull it into your aarch64_graal_misc_fixes branch. I think this should do it:

git pull https://github.com/dougxc/graal-core.git theRealAph-aarch64_graal_misc_fixes

To get to this state, here’s what I did. First was so set renameLimit in my ~/.gitconfig:

[merge]
       renameLimit = 3000

Then:

dsimon at kurz-3 ~/h/graal-core> git checkout -b theRealAph-aarch64_graal_misc_fixes master
Switched to a new branch 'theRealAph-aarch64_graal_misc_fixes'
dsimon at kurz-3 ~/h/graal-core> git pull https://github.com/theRealAph/graal-core.git aarch64_graal_misc_fixes
remote: Counting objects: 411, done.
remote: Compressing objects: 100% (106/106), done.
remote: Total 411 (delta 106), reused 41 (delta 41), pack-reused 101
Receiving objects: 100% (411/411), 104.30 KiB | 0 bytes/s, done.
Resolving deltas: 100% (118/118), completed with 25 local objects.
From https://github.com/theRealAph/graal-core
 * branch            aarch64_graal_misc_fixes -> FETCH_HEAD
Performing inexact rename detection: 100% (6884935/6884935), done.
Auto-merging graal/org.graalvm.compiler.truffle.hotspot.test/src/org/graalvm/compiler/truffle/hotspot/test/NativeFunctionInterfaceUnsatisfiedLinkTest.java
Auto-merging graal/org.graalvm.compiler.replacements.aarch64/src/org/graalvm/compiler/replacements/aarch64/AArch64GraphBuilderPlugins.java
CONFLICT (content): Merge conflict in graal/org.graalvm.compiler.replacements.aarch64/src/org/graalvm/compiler/replacements/aarch64/AArch64GraphBuilderPlugins.java
Auto-merging graal/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64SignExtendOp.java
...
Auto-merging graal/org.graalvm.compiler.asm.aarch64.test/src/org/graalvm/compiler/asm/aarch64/test/TestProtectedAssembler.java
Automatic merge failed; fix conflicts and then commit the result.

I then had to move some files:

dsimon at kurz-3 ~/h/graal-core> git mv graal/com.oracle.graal.lir.aarch64//src/com/oracle/graal/lir/aarch64/AArch64ArrayEqualsOp.java graal/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/
dsimon at kurz-3 ~/h/graal-core> git mv graal/com.oracle.graal.lir.aarch64//src/com/oracle/graal/lir/aarch64/AArch64ByteSwapOp.java graal/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/
dsimon at kurz-3 ~/h/graal-core>
git mv graal/com.oracle.graal.lir.aarch64//src/com/oracle/graal/lir/aarch64/AArch64Unary.java graal/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/
dsimon at kurz-3 ~/h/graal-core> git mv graal/com.oracle.graal.replacements.aarch64/src/com/oracle/graal/replacements/aarch64/AArch64CountTrailingZerosNode.java graal/org.graalvm.compiler.replacements.aarch64/src/org/graalvm/compiler/replacements/aarch64/

After that, I used Eclipse to find and resolve all the conflicts, using the "Organize Imports” mechanism a bit to fix up imports. I then marked all conflicts as resolved using SourceTree[1] - not sure how to do that on the command line but it shouldn’t be hard. Then I committed the merge and pushed to my fork:

dsimon at kurz-3 ~/h/graal-core> git push github HEAD

I can say the code builds but can’t guarantee nothing broke.

-Doug

[1] https://www.sourcetreeapp.com

> On 9 Dec 2016, at 16:51, Andrew Haley <aph at redhat.com> wrote:
> 
> On 09/12/16 15:50, Doug Simon wrote:
>> I will do the merge for you and push to my github fork which you can then pull from.
> 
> Umm, alright.  Please let me know exactly what you did: I need to learn.
> 
> Thanks,
> 
> Andrew.
> 



More information about the graal-dev mailing list