Skip to content

Commit c25d7a8

Browse files
[llvm] Proofread FAQ.rst (#160006)
1 parent 3e6ee89 commit c25d7a8

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

llvm/docs/FAQ.rst

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ test LLVM have been ported to a plethora of platforms.
5050
What API do I use to store a value to one of the virtual registers in LLVM IR's SSA representation?
5151
---------------------------------------------------------------------------------------------------
5252

53-
In short: you can't. It's actually kind of a silly question once you grok
53+
In short: you can't. It's actually kind of a silly question once you understand
5454
what's going on. Basically, in code like:
5555

5656
.. code-block:: llvm
@@ -80,7 +80,7 @@ What source languages are supported?
8080

8181
LLVM currently has full support for C and C++ source languages through
8282
`Clang <https://clang.llvm.org/>`_. Many other language frontends have
83-
been written using LLVM, and an incomplete list is available at
83+
been written using LLVM; an incomplete list is available at
8484
`projects with LLVM <https://llvm.org/ProjectsWithLLVM/>`_.
8585

8686

@@ -91,12 +91,12 @@ LLVM intermediate representation (IR) format. Assuming you want to write your
9191
language's compiler in the language itself (rather than C++), there are 3
9292
major ways to tackle generating LLVM IR from a front-end:
9393

94-
1. **Call into the LLVM libraries code using your language's FFI (foreign
94+
1. **Call into the LLVM libraries using your language's FFI (foreign
9595
function interface).**
9696

9797
* *for:* best tracks changes to the LLVM IR, .ll syntax, and .bc format
9898

99-
* *for:* enables running LLVM optimization passes without a emit/parse
99+
* *for:* enables running LLVM optimization passes without an emit/parse
100100
overhead
101101

102102
* *for:* adapts well to a JIT context
@@ -128,10 +128,10 @@ most common hurdle with calling C from managed code is interfacing with the
128128
garbage collector. The C interface was designed to require very little memory
129129
management, and so is straightforward in this regard.
130130

131-
What support is there for a higher level source language constructs for building a compiler?
131+
What support is there for a higher-level source language constructs for building a compiler?
132132
--------------------------------------------------------------------------------------------
133133
Currently, there isn't much. LLVM supports an intermediate representation
134-
which is useful for code representation but will not support the high level
134+
which is useful for code representation but will not support the high-level
135135
(abstract syntax tree) representation needed by most compilers. There are no
136136
facilities for lexical nor semantic analysis.
137137

@@ -215,7 +215,7 @@ for it.
215215

216216
Why does instcombine + simplifycfg turn a call to a function with a mismatched calling convention into "unreachable"? Why not make the verifier reject it?
217217
----------------------------------------------------------------------------------------------------------------------------------------------------------
218-
This is a common problem run into by authors of front-ends that are using
218+
This is a common problem encountered by authors of front-ends that are using
219219
custom calling conventions: you need to make sure to set the right calling
220220
convention on both the function and on each call to the function. For
221221
example, this code:
@@ -274,7 +274,7 @@ Here's an example:
274274
}
275275
276276
In this example, "test" always passes ``@foo``/``false`` into ``bar``, which
277-
ensures that it is dynamically called with the right calling conv (thus, the
277+
ensures that it is dynamically called with the right calling convention (thus, the
278278
code is perfectly well defined). If you run this through the inliner, you
279279
get this (the explicit "or" is there so that the inliner doesn't dead code
280280
eliminate a bunch of stuff):

0 commit comments

Comments
 (0)