美文网首页
iOS的编译器优化

iOS的编译器优化

作者: 我要当个程序员 | 来源:发表于2020-09-05 15:05 被阅读0次

1. 用到的软硬件

  • Macbook Air
  • macOS Mojave 10.14.6
  • Xcode 11.3.1
  • iPhone8手机一枚
  • Object-C(编程语言)

2. 创建我们的项目工程

1.png

在我们的ViewController.m中键入如下代码


2.png

插入我们的苹果手机进行调试(我在虚拟机上也做过测试,发现虚拟机没有寄存器,所以难以调试),在我们的int a = 10处,打上一个断点,然后进行汇编调试设置


3.png

随后点击运行

3.png

回到看我们的汇编会根据代码一行行的进行相应操作。

这个时候我们把调试debug的方式改为fastest,smallest(fastest,smallesta 这个方式一般为rerelease的编译方式)


4.png

如图,就是将这里的Debug改为和下方Rlease一样的方式,然后在运行(这里修改之后需要将原来的手机里面的app删掉在重新运行)


5.png
会发现这里的汇编少了一大长串,并且没有了之前的步骤,直接给除了30的答案。

3. 总结

看来需要对汇编进行一些研究方可更加清晰理解这个编译过程。我也产生了一个疑问,这个Release的fastest模式真的就比Debug来的快吗?

相关文章

  • LLVM

    一、编译器 性能优化:启动优化、界面优化、架构优化 编译型语言:OC(编译器是clang)、C(编译器可以直接执行...

  • iOS的编译器优化

    1. 用到的软硬件 Macbook Air macOS Mojave 10.14.6 Xcode 11.3.1 i...

  • Linux 下如何绕过编译器优化

    本文首次发表在 Linux 下如何绕过编译器优化 有同学在群里聊到编译器优化的事情,很多时候期望编译器默认做优化,...

  • iOS 性能优化

    ios性能优化(一)ios性能优化(二)ios性能优化(三)

  • iOS逆向之OC反汇编(上)

    本文主要讲解编译器的优化以及指针的汇编 编译器优化 设置 可在项目的BuildSetting->Optimizat...

  • JMM造成指令重排的原因

    1、编译器优化 2、Processor 优化(流水线) 3、MESI缓存优化

  • iOS 性能优化内存优化学习

    iOS APP渲染性能优化iOS性能优化之内存(memory)优化iOS内存和性能优化

  • IOS的性能优化包括哪几点

    iOS性能优化总结 iOS性能优化总结。关于 iOS 性能优化梳理: 基本工具、业务优化、内存优化、卡顿优化、布局...

  • iOS必读 - 收藏集 - 掘金

    iOS 性能优化总结 - iOS - 掘金关于iOS 性能优化梳理: 基本工具、业务优化、内存优化、卡顿优化、布局...

  • 编译器优化部分代码

    我们简单写一些代码看编译器优化前后的对比。编译器没有优化时 在Build Setting 搜索optimizati...

网友评论

      本文标题:iOS的编译器优化

      本文链接:https://www.haomeiwen.com/subject/wutfektx.html