Add the notes for episode 13

This commit is contained in:
Sameer Rahmani 2021-11-26 15:43:47 +00:00
parent b6ac7f3f5f
commit e825367f95
2 changed files with 20 additions and 2 deletions

View File

@ -563,6 +563,24 @@ and tries to =resolve= *undefined* symbols
** Resources:
- [[https://lwn.net/Articles/276782/][20 part linker essay]]
* Episode 13 - Source Manager
** LLVM Meetup 2021
*** Tons of amazing talks
*** The community is expanding
- A screencast on how to get started with a FOSS project
** Updates:
- Still JIT
- We're going to start the JIT discussion from next EP
** Forgot to show case the code generation
I didn't show it in action
** What is a source manager
- It owns and manages are the source buffers
- All of our interactions with source files will happen though Source manager
- Including reading files
- Loading namespaces
- Including namespaces
- ...
- LLVM provides a =SourceMgr= class that we're not using it

View File

@ -42,7 +42,7 @@ class SereneContext;
/// This class is quite similar to the `llvm::SourceMgr` in functionality. We
/// even borrowed some of the code from the original implementation but removed
/// a lot of code that ar irrelevant to us.
/// a lot of code that were irrelevant to us.
///
/// SouceMgr is responsible for finding a namespace in the `loadPaths` and read
/// the content of the `.srn` (or any of the `DEFAULT_SUFFIX`) into a
@ -80,7 +80,7 @@ private:
/// dynamically based on the size of Buffer.
mutable void *offsetCache = nullptr;
/// Look up a given \p Ptr in in the buffer, determining which line it came
/// Look up a given \p ptr in in the buffer, determining which line it came
/// from.
unsigned getLineNumber(const char *ptr) const;
template <typename T>